fatedier / frp

A fast reverse proxy to help you expose a local server behind a NAT or firewall to the internet.
Apache License 2.0
85.08k stars 13.2k forks source link

proxy每30秒重连一次 #4458

Open fdxx opened 1 week ago

fdxx commented 1 week ago

Bug Description

当没有任何proxy连接活跃时,proxy组每30秒重连一次,问下这是否是正常现象,或者我配置哪里有问题?感谢!

frpc Version

0.60.0

frps Version

0.60.0

System Architecture

linux/amd64

Configurations

客户端

frpc.json

{
    "auth": {
        "method": "token",
        "token": "token"
    },
    "user": "xx",
    "serverAddr": "frp.exp.com",
    "serverPort": 7000,
    "loginFailExit": false,
    "log": {
        "to": "console",
        "level": "trace",
        "disablePrintColor": true
    },
    "transport": {
        "protocol": "tcp",
        "poolCount": 5,
        "tcpMux": true,
        "tcpMuxKeepaliveInterval": 60,
        "heartbeatInterval": -1,
        "tls": {
            "enable": true,
            "disableCustomTLSFirstByte": true,
            "trustedCaFile": "/path/to/ca.cer"
        }
    },
    "proxies": [
        {
            "name": "a.exp.com",
            "type": "https",
            "customDomains": ["a.exp.com"],
            "plugin": {
                "type": "unix_domain_socket",
                "unixPath": "/var/run/a.exp.com.sock"
            }
        },
        {
            "name": "b.exp.com",
            "type": "https",
            "customDomains": ["b.exp.com"],
            "plugin": {
                "type": "unix_domain_socket",
                "unixPath": "/var/run/b.exp.com.sock"
            }
        }
    ]
}

frpc.log

2024-09-28 09:52:37.884 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:52:37.884 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:52:37.884 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:52:37.884 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:52:37.884 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:52:37.884 [I] [client/service.go:295] [7f202f01f653fc11] try to connect to server...
2024-09-28 09:52:38.035 [I] [client/service.go:287] [7f202f01f653fc11] login to server success, get run id [7f202f01f653fc11]
2024-09-28 09:52:38.035 [I] [proxy/proxy_manager.go:173] [7f202f01f653fc11] proxy added: [xx.b.exp.com xx.a.exp.com]
2024-09-28 09:52:38.035 [T] [proxy/proxy_wrapper.go:200] [7f202f01f653fc11] [xx.a.exp.com] change status from [new] to [wait start]
2024-09-28 09:52:38.035 [T] [proxy/proxy_wrapper.go:200] [7f202f01f653fc11] [xx.b.exp.com] change status from [new] to [wait start]
2024-09-28 09:52:38.081 [I] [client/control.go:168] [7f202f01f653fc11] [xx.a.exp.com] start proxy success
2024-09-28 09:52:38.081 [I] [client/control.go:168] [7f202f01f653fc11] [xx.b.exp.com] start proxy success

2024-09-28 09:53:08.087 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:08.087 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:08.087 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:08.087 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:08.087 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:08.087 [I] [client/service.go:295] [7f202f01f653fc11] try to connect to server...
2024-09-28 09:53:08.246 [I] [client/service.go:287] [7f202f01f653fc11] login to server success, get run id [7f202f01f653fc11]
2024-09-28 09:53:08.246 [I] [proxy/proxy_manager.go:173] [7f202f01f653fc11] proxy added: [xx.b.exp.com xx.a.exp.com]
2024-09-28 09:53:08.246 [T] [proxy/proxy_wrapper.go:200] [7f202f01f653fc11] [xx.a.exp.com] change status from [new] to [wait start]
2024-09-28 09:53:08.246 [T] [proxy/proxy_wrapper.go:200] [7f202f01f653fc11] [xx.b.exp.com] change status from [new] to [wait start]
2024-09-28 09:53:08.295 [I] [client/control.go:168] [7f202f01f653fc11] [xx.a.exp.com] start proxy success
2024-09-28 09:53:08.295 [I] [client/control.go:168] [7f202f01f653fc11] [xx.b.exp.com] start proxy success

2024-09-28 09:53:38.324 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:38.324 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:38.324 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:38.324 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:38.324 [T] [client/control.go:145] [7f202f01f653fc11] work connection closed before response StartWorkConn message: EOF
2024-09-28 09:53:38.324 [I] [client/service.go:295] [7f202f01f653fc11] try to connect to server...
2024-09-28 09:53:38.473 [I] [client/service.go:287] [7f202f01f653fc11] login to server success, get run id [7f202f01f653fc11]
2024-09-28 09:53:38.473 [I] [proxy/proxy_manager.go:173] [7f202f01f653fc11] proxy added: [xx.b.exp.com xx.a.exp.com]
2024-09-28 09:53:38.473 [T] [proxy/proxy_wrapper.go:200] [7f202f01f653fc11] [xx.a.exp.com] change status from [new] to [wait start]
2024-09-28 09:53:38.473 [T] [proxy/proxy_wrapper.go:200] [7f202f01f653fc11] [xx.b.exp.com] change status from [new] to [wait start]
2024-09-28 09:53:38.519 [I] [client/control.go:168] [7f202f01f653fc11] [xx.a.exp.com] start proxy success
2024-09-28 09:53:38.519 [I] [client/control.go:168] [7f202f01f653fc11] [xx.b.exp.com] start proxy success

重复...

服务端

frps.json

{
    "auth": {
        "method": "token",
        "token": "token"
    },
    "bindAddr": "0.0.0.0",
    "bindPort": 7000,
    "vhostHTTPPort": 8080,
    "vhostHTTPSPort": 4443,
    "log": {
        "to": "console",
        "level": "trace",
        "disablePrintColor": true
    },
    "transport": {
        "tcpMuxKeepaliveInterval": 60,
        "tcpKeepalive": -1,
        "maxPoolCount": 5,
        "tls": {
            "force": true,
            "certFile": "/path/to/cert.pem",
            "keyFile": "/path/to/key.pem"
        }
    }
}

frps.log

2024-09-28 09:52:37.863 [D] [server/service.go:525] Accept new mux stream error: EOF
2024-09-28 09:52:37.863 [I] [proxy/proxy.go:115] [7f202f01f653fc11] [xx.a.exp.com] proxy closing
2024-09-28 09:52:37.863 [I] [proxy/proxy.go:115] [7f202f01f653fc11] [xx.b.exp.com] proxy closing
2024-09-28 09:52:37.863 [I] [server/control.go:357] [7f202f01f653fc11] client exit success
2024-09-28 09:52:37.863 [W] [proxy/proxy.go:201] [7f202f01f653fc11] [xx.a.exp.com] listener is closed: Listener closed
2024-09-28 09:52:37.863 [W] [proxy/proxy.go:201] [7f202f01f653fc11] [xx.b.exp.com] listener is closed: Listener closed
2024-09-28 09:52:37.965 [T] [server/service.go:495] start check TLS connection...
2024-09-28 09:52:37.965 [T] [server/service.go:505] check TLS connection success, isTLS: true custom: false internal: false
2024-09-28 09:52:38.014 [I] [server/service.go:576] [7f202f01f653fc11] client login info: ip [127.0.0.1:59094] version [0.60.0] hostname [] os [linux] arch [amd64]
2024-09-28 09:52:38.060 [I] [proxy/https.go:67] [7f202f01f653fc11] [xx.a.exp.com] https proxy listen for host [a.exp.com]
2024-09-28 09:52:38.060 [I] [server/control.go:399] [7f202f01f653fc11] new proxy [xx.a.exp.com] type [https] success
2024-09-28 09:52:38.060 [I] [proxy/https.go:67] [7f202f01f653fc11] [xx.b.exp.com] https proxy listen for host [b.exp.com]
2024-09-28 09:52:38.060 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:52:38.060 [I] [server/control.go:399] [7f202f01f653fc11] new proxy [xx.b.exp.com] type [https] success
2024-09-28 09:52:38.060 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:52:38.060 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:52:38.060 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:52:38.060 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered

2024-09-28 09:53:08.066 [D] [server/service.go:525] Accept new mux stream error: EOF
2024-09-28 09:53:08.066 [I] [proxy/proxy.go:115] [7f202f01f653fc11] [xx.a.exp.com] proxy closing
2024-09-28 09:53:08.066 [I] [proxy/proxy.go:115] [7f202f01f653fc11] [xx.b.exp.com] proxy closing
2024-09-28 09:53:08.066 [I] [server/control.go:357] [7f202f01f653fc11] client exit success
2024-09-28 09:53:08.066 [W] [proxy/proxy.go:201] [7f202f01f653fc11] [xx.a.exp.com] listener is closed: Listener closed
2024-09-28 09:53:08.066 [W] [proxy/proxy.go:201] [7f202f01f653fc11] [xx.b.exp.com] listener is closed: Listener closed
2024-09-28 09:53:08.170 [T] [server/service.go:495] start check TLS connection...
2024-09-28 09:53:08.170 [T] [server/service.go:505] check TLS connection success, isTLS: true custom: false internal: false
2024-09-28 09:53:08.223 [I] [server/service.go:576] [7f202f01f653fc11] client login info: ip [127.0.0.1:53346] version [0.60.0] hostname [] os [linux] arch [amd64]
2024-09-28 09:53:08.272 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:08.272 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:08.272 [I] [proxy/https.go:67] [7f202f01f653fc11] [xx.a.exp.com] https proxy listen for host [a.exp.com]
2024-09-28 09:53:08.272 [I] [server/control.go:399] [7f202f01f653fc11] new proxy [xx.a.exp.com] type [https] success
2024-09-28 09:53:08.272 [I] [proxy/https.go:67] [7f202f01f653fc11] [xx.b.exp.com] https proxy listen for host [b.exp.com]
2024-09-28 09:53:08.272 [I] [server/control.go:399] [7f202f01f653fc11] new proxy [xx.b.exp.com] type [https] success
2024-09-28 09:53:08.272 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:08.272 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:08.272 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered

2024-09-28 09:53:38.301 [D] [server/service.go:525] Accept new mux stream error: EOF
2024-09-28 09:53:38.301 [I] [proxy/proxy.go:115] [7f202f01f653fc11] [xx.a.exp.com] proxy closing
2024-09-28 09:53:38.301 [I] [proxy/proxy.go:115] [7f202f01f653fc11] [xx.b.exp.com] proxy closing
2024-09-28 09:53:38.301 [I] [server/control.go:357] [7f202f01f653fc11] client exit success
2024-09-28 09:53:38.301 [W] [proxy/proxy.go:201] [7f202f01f653fc11] [xx.a.exp.com] listener is closed: Listener closed
2024-09-28 09:53:38.301 [W] [proxy/proxy.go:201] [7f202f01f653fc11] [xx.b.exp.com] listener is closed: Listener closed
2024-09-28 09:53:38.405 [T] [server/service.go:495] start check TLS connection...
2024-09-28 09:53:38.405 [T] [server/service.go:505] check TLS connection success, isTLS: true custom: false internal: false
2024-09-28 09:53:38.454 [I] [server/service.go:576] [7f202f01f653fc11] client login info: ip [127.0.0.1:39338] version [0.60.0] hostname [] os [linux] arch [amd64]
2024-09-28 09:53:38.500 [I] [proxy/https.go:67] [7f202f01f653fc11] [xx.a.exp.com] https proxy listen for host [a.exp.com]
2024-09-28 09:53:38.500 [I] [server/control.go:399] [7f202f01f653fc11] new proxy [xx.a.exp.com] type [https] success
2024-09-28 09:53:38.500 [I] [proxy/https.go:67] [7f202f01f653fc11] [xx.b.exp.com] https proxy listen for host [b.exp.com]
2024-09-28 09:53:38.500 [I] [server/control.go:399] [7f202f01f653fc11] new proxy [xx.b.exp.com] type [https] success
2024-09-28 09:53:38.500 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:38.500 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:38.500 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:38.500 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered
2024-09-28 09:53:38.500 [D] [server/control.go:243] [7f202f01f653fc11] new work connection registered

重复...

Logs

见上面

Steps to reproduce

  1. 启动客户端和服务端
  2. 当没有proxy连接时,每30秒重连一次;当有类似nextcloud客户端活跃时,不会出现这种情况。 ...

Affected area

superzjg commented 1 week ago

frpc和frps 的 tcpMuxKeepaliveInterval 不配置(采用默认值)。 tcpKeepalive 也不配置 试试

qiangbro commented 1 week ago

frpc降为低版本比如0.56.0 也能浮现吗