Starting up with remote server IP: cdcs2.com:19132 INFO: 2019/12/31 21:59:15 proxy.go:84: Binding ping server to: 0.0.0.0:19132 INFO: 2019/12/31 21:59:15 proxy.go:93: Binding proxy server to: 0.0.0.0:63160 INFO: 2019/12/31 21:59:15 proxy.go:100: Proxy server listening! INFO: 2019/12/31 21:59:15 proxy.go:268: Starting idle connection handler INFO: 2019/12/31 21:59:17 proxy.go:204: Opening connection to 74.195.237.122:19132 for new client 192.168.1.4:50334! INFO: 2019/12/31 21:59:17 proxy.go:219: Opening connection to 74.195.237.122:19132 INFO: 2019/12/31 21:59:39 proxy.go:204: Opening connection to 74.195.237.122:19132 for new client 192.168.1.4:51767! INFO: 2019/12/31 21:59:39 proxy.go:219: Opening connection to 74.195.237.122:19132 INFO: 2019/12/31 22:00:40 proxy.go:275: Cleaning up idle connection: 192.168.1.4:50334 read udp 192.168.1.201:47126->74.195.237.122:19132: use of closed network connection fatal error: concurrent map iteration and map write goroutine 18 [running]: runtime.throw(0x1278c8, 0x26) /usr/local/Cellar/go/1.12.5/libexec/src/runtime/panic.go:617 +0x5c fp=0x1c246fc sp=0x1c246e8 pc=0x3b26c runtime.mapiternext(0x1c247b4) /usr/local/Cellar/go/1.12.5/libexec/src/runtime/map.go:860 +0x57c fp=0x1c2473c sp=0x1c246fc pc=0x1d9e4 runtime.mapiterinit(0x108110, 0x1ca2140, 0x1c247b4) /usr/local/Cellar/go/1.12.5/libexec/src/runtime/map.go:850 +0x198 fp=0x1c24748 sp=0x1c2473c pc=0x1d360 github.com/jhead/phantom/internal/proxy.(*ProxyServer).idleConnectionCleanup(0x1caa080) /Users/justin/dev/phantom/internal/proxy/proxy.go:273 +0x244 fp=0x1c247e4 sp=0x1c24748 pc=0xe5248 runtime.goexit() /usr/local/Cellar/go/1.12.5/libexec/src/runtime/asm_arm.s:868 +0x4 fp=0x1c247e4 sp=0x1c247e4 pc=0x66118 created by github.com/jhead/phantom/internal/proxy.(*ProxyServer).Start /Users/justin/dev/phantom/internal/proxy/proxy.go:107 +0x234 goroutine 1 [IO wait]: internal/poll.runtime_pollWait(0x66d2afe0, 0x72, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/runtime/netpoll.go:182 +0x48 internal/poll.(*pollDesc).wait(0x1cba0b4, 0x72, 0x500, 0x5c0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_poll_runtime.go:87 +0x80 internal/poll.(*pollDesc).waitRead(...) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).ReadFrom(0x1cba0a0, 0x1ce8000, 0x5c0, 0x5c0, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_unix.go:219 +0x16c net.(*netFD).readFrom(0x1cba0a0, 0x1ce8000, 0x5c0, 0x5c0, 0x1c281e0, 0x1c1c600, 0x1ca4104, 0xd2388, 0x1ca40f0) /usr/local/Cellar/go/1.12.5/libexec/src/net/fd_unix.go:208 +0x38 net.(*UDPConn).readFrom(0x1cac058, 0x1ce8000, 0x5c0, 0x5c0, 0x2a, 0x5c0, 0x2a, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/net/udpsock_posix.go:47 +0x38 net.(*UDPConn).ReadFrom(0x1cac058, 0x1ce8000, 0x5c0, 0x5c0, 0x2a, 0x0, 0x0, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/net/udpsock.go:121 +0x44 github.com/jhead/phantom/internal/proxy.(*ProxyServer).processDataFromClients(0x1caa080, 0x144a08, 0x1cac058, 0x1ce8000, 0x5c0, 0x5c0, 0x0, 0x0) /Users/justin/dev/phantom/internal/proxy/proxy.go:150 +0x3c github.com/jhead/phantom/internal/proxy.(*ProxyServer).readLoop(0x1caa080, 0x144a08, 0x1cac058) /Users/justin/dev/phantom/internal/proxy/proxy.go:140 +0x70 github.com/jhead/phantom/internal/proxy.(*ProxyServer).Start(0x1caa080, 0x0, 0x0) /Users/justin/dev/phantom/internal/proxy/proxy.go:116 +0x298 main.main() /Users/justin/dev/phantom/cmd/proxy.go:45 +0x340 goroutine 19 [chan receive]: github.com/jhead/phantom/internal/proxy.(*ProxyServer).serverConnectionLookupLoop(0x1caa080) /Users/justin/dev/phantom/internal/proxy/proxy.go:169 +0x40 created by github.com/jhead/phantom/internal/proxy.(*ProxyServer).Start /Users/justin/dev/phantom/internal/proxy/proxy.go:110 +0x250 goroutine 20 [IO wait, 12 minutes]: internal/poll.runtime_pollWait(0x66d2af5c, 0x72, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/runtime/netpoll.go:182 +0x48 internal/poll.(*pollDesc).wait(0x1cba064, 0x72, 0x500, 0x5c0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_poll_runtime.go:87 +0x80 internal/poll.(*pollDesc).waitRead(...) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_poll_runtime.go:92 internal/poll.(*FD).ReadFrom(0x1cba050, 0x1ce8600, 0x5c0, 0x5c0, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_unix.go:219 +0x16c net.(*netFD).readFrom(0x1cba050, 0x1ce8600, 0x5c0, 0x5c0, 0x1f1500, 0x1c1c600, 0x1ca40b4, 0xd2388, 0x1ca40a0) /usr/local/Cellar/go/1.12.5/libexec/src/net/fd_unix.go:208 +0x38 net.(*UDPConn).readFrom(0x1cac050, 0x1ce8600, 0x5c0, 0x5c0, 0x21, 0x5c0, 0x21, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/net/udpsock_posix.go:47 +0x38 net.(*UDPConn).ReadFrom(0x1cac050, 0x1ce8600, 0x5c0, 0x5c0, 0x21, 0x0, 0x0, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/net/udpsock.go:121 +0x44 github.com/jhead/phantom/internal/proxy.(*ProxyServer).processDataFromClients(0x1caa080, 0x144a08, 0x1cac050, 0x1ce8600, 0x5c0, 0x5c0, 0x0, 0x0) /Users/justin/dev/phantom/internal/proxy/proxy.go:150 +0x3c github.com/jhead/phantom/internal/proxy.(*ProxyServer).readLoop(0x1caa080, 0x144a08, 0x1cac050) /Users/justin/dev/phantom/internal/proxy/proxy.go:140 +0x70 created by github.com/jhead/phantom/internal/proxy.(*ProxyServer).Start /Users/justin/dev/phantom/internal/proxy/proxy.go:113 +0x27c goroutine 10 [runnable]: syscall.Syscall6(0x124, 0x7, 0x1c689c0, 0x5c0, 0x0, 0x1c6881c, 0x1c68814, 0xffffffff, 0x0, 0xb) /usr/local/Cellar/go/1.12.5/libexec/src/syscall/asm_linux_arm.s:45 +0x8 syscall.recvfrom(0x7, 0x1c689c0, 0x5c0, 0x5c0, 0x0, 0x1c6881c, 0x1c68814, 0x43a18, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/syscall/zsyscall_linux_arm.go:1272 +0x6c syscall.Recvfrom(0x7, 0x1c689c0, 0x5c0, 0x5c0, 0x0, 0x0, 0x1c68800, 0xc7b38, 0x1cba0a0, 0x1c689c0) /usr/local/Cellar/go/1.12.5/libexec/src/syscall/syscall_unix.go:262 +0x70 internal/poll.(*FD).ReadFrom(0x1ca40f0, 0x1c689c0, 0x5c0, 0x5c0, 0x0, 0x0, 0x0, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/internal/poll/fd_unix.go:215 +0xf4 net.(*netFD).readFrom(0x1ca40f0, 0x1c689c0, 0x5c0, 0x5c0, 0x1c689c0, 0x7, 0x5c0, 0x143dd0, 0x205d440) /usr/local/Cellar/go/1.12.5/libexec/src/net/fd_unix.go:208 +0x38 net.(*UDPConn).readFrom(0x1c0e400, 0x1c689c0, 0x5c0, 0x5c0, 0x0, 0x0, 0x0, 0x7) /usr/local/Cellar/go/1.12.5/libexec/src/net/udpsock_posix.go:47 +0x38 net.(*UDPConn).ReadFrom(0x1c0e400, 0x1c689c0, 0x5c0, 0x5c0, 0x144460, 0x1c0abc0, 0x7, 0x0, 0x0) /usr/local/Cellar/go/1.12.5/libexec/src/net/udpsock.go:121 +0x44 github.com/jhead/phantom/internal/proxy.(*ProxyServer).processDataFromServer(0x1caa080, 0x1c0e400, 0x144460, 0x1c0abc0) /Users/justin/dev/phantom/internal/proxy/proxy.go:234 +0x64 created by github.com/jhead/phantom/internal/proxy.getServerConnection /Users/justin/dev/phantom/internal/proxy/proxy.go:213 +0x1d4