muzea / portfwd

A low performance port forwarding implementation
https://muzea.github.io/portfwd
20 stars 4 forks source link

Centos 下不可用 #1

Closed j0hnnie closed 5 years ago

j0hnnie commented 5 years ago

用的最新的releasse 0.4-2 的amd-linux-64 config.json 内容如下

{
    "proxy": {
        "3000/5000": "192.168.2.200:3000" 
    },
    "APIPort": ":3001"
}

错误如下:

goroutine 5862 [semacquire]:
sync.runtime_SemacquireMutex(0xee0544, 0x0)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/runtime/sema.go:71 +0x3d
sync.(*Mutex).Lock(0xee0540)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/sync/mutex.go:134 +0x109
sync.(*Once).Do(0xee0540, 0xa2c0e0)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/sync/once.go:40 +0x3b
net.listenerBacklog(0x9ca6a0)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/net/net.go:367 +0x39
net.socket(0xadfe00, 0xc000024088, 0xa063d3, 0x3, 0xa, 0x1, 0x0, 0x0, 0xae3480, 0xc000ff1470, ...)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/net/sock_posix.go:57 +0x260
net.internetSocket(0xadfe00, 0xc000024088, 0xa063d3, 0x3, 0xae3480, 0xc000ff1470, 0x0, 0x0, 0x1, 0x0, ...)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/net/ipsock_posix.go:141 +0x141
net.(*sysListener).listenTCP(0xc000fa1eb8, 0xadfe00, 0xc000024088, 0xc000ff1470, 0x534224, 0xad9b40, 0xc000ff1470)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/net/tcpsock_posix.go:159 +0xb7
net.ListenTCP(0xa063d3, 0x3, 0xc000ff1470, 0xa063d3, 0x3, 0xc0001315d0)
    /home/travis/.gimme/versions/go1.12.9.linux.amd64/src/net/tcpsock.go:333 +0x11d
github.com/docker/go-connections/proxy.NewTCPProxy(0xc000ff1470, 0xc000f866c0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0)
    /home/travis/gopath/src/github.com/docker/go-connections/proxy/tcp_proxy.go:20 +0x44
main.prepareTCPHandler(0x1ef8, 0xc000f866c0)
    /home/travis/gopath/src/github.com/muzea/portfwd/portfw.go:81 +0x129
created by main.addProxyItem
    /home/travis/gopath/src/github.com/muzea/portfwd/portfw.go:60 +0x28e

goroutine 5864 [runnable]:
main.prepareTCPHandler(0x1ef9, 0xc000f86720)
    /home/travis/gopath/src/github.com/muzea/portfwd/portfw.go:75
created by main.addProxyItem
    /home/travis/gopath/src/github.com/muzea/portfwd/portfw.go:60 +0x28e

goroutine 5865 [runnable]:
main.prepareUDPHandler(0x1ef9, 0xc000f86750)
    /home/travis/gopath/src/github.com/muzea/portfwd/portfw.go:89
created by main.addProxyItem
    /home/travis/gopath/src/github.com/muzea/portfwd/portfw.go:61 +0x2c8
j0hnnie commented 5 years ago

CentOS Linux release 7.6.1810 (Core)

muzea commented 5 years ago

一次监听太多端口,我没加锁,读写map会有问题,改成同步的了,我这边看着是好了,等CI打包结束试试 0.0.5 吧。 3000/5000和3001重复了(小声