[GH-ISSUE #3492] [Feature Request] 希望能增加自动重连 #2791

Closed
opened 2026-05-05 13:48:06 -06:00 by gitea-mirror · 11 comments
Owner

Originally created by @wuai1024 on GitHub (Jun 19, 2023).
Original GitHub issue: https://github.com/fatedier/frp/issues/3492

Describe the feature request

目前遇到得问题就是, 当部署 frpc 的机器,网络波动后,或者断网后恢复网络,就会丢失链接。不会自动去重连 frps

Describe alternatives you've considered

No response

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @wuai1024 on GitHub (Jun 19, 2023). Original GitHub issue: https://github.com/fatedier/frp/issues/3492 ### Describe the feature request 目前遇到得问题就是, 当部署 frpc 的机器,网络波动后,或者断网后恢复网络,就会丢失链接。不会自动去重连 frps ### Describe alternatives you've considered _No response_ ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [ ] Client Plugin - [ ] Server Plugin - [ ] Extensions - [ ] Others
gitea-mirror 2026-05-05 13:48:06 -06:00
Author
Owner

@wuai1024 commented on GitHub (Jun 19, 2023):

希望能在 frpc 连接不上 frps 的时候,能间隔5秒去自动发起重连请求。

这个非常重要,很多时候我设置的开机自启,导致网卡都还没连上,frpc就先启动了,然后就连接不上。

<!-- gh-comment-id:1596585261 --> @wuai1024 commented on GitHub (Jun 19, 2023): 希望能在 frpc 连接不上 frps 的时候,能间隔5秒去自动发起重连请求。 这个非常重要,很多时候我设置的开机自启,导致网卡都还没连上,frpc就先启动了,然后就连接不上。
Author
Owner

@superzjg commented on GitHub (Jun 19, 2023):

请仔细阅读完整配置文件:
首次登录服务器失败后是否退出,默认true,设为false即可
login_fail_exit = false

<!-- gh-comment-id:1596763170 --> @superzjg commented on GitHub (Jun 19, 2023): 请仔细阅读完整配置文件: 首次登录服务器失败后是否退出,默认true,设为false即可 login_fail_exit = false
Author
Owner

@wuai1024 commented on GitHub (Jun 19, 2023):

请仔细阅读完整配置文件: 首次登录服务器失败后是否退出,默认true,设为false即可 login_fail_exit = false

不是这个意思,我目前遇到得问题是。

电脑刚开机的时候,网卡可能还没加载完全,frpc先运行了,就会出现 unknowhosts ,找不到域名的报错,然后就一直会连不上了。

<!-- gh-comment-id:1597216280 --> @wuai1024 commented on GitHub (Jun 19, 2023): > 请仔细阅读完整配置文件: 首次登录服务器失败后是否退出,默认true,设为false即可 login_fail_exit = false 不是这个意思,我目前遇到得问题是。 电脑刚开机的时候,网卡可能还没加载完全,frpc先运行了,就会出现 unknowhosts ,找不到域名的报错,然后就一直会连不上了。
Author
Owner

@LuziJay commented on GitHub (Jun 25, 2023):

类似相同的需求,我的情况是出现以下问题:

6月 25 09:18:57 localhost.localdomain frpc[3927643]: 2023/06/25 09:18:57 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server...
6月 25 09:19:07 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:07 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20>
6月 25 09:19:26 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:26 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server...
6月 25 09:19:36 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:36 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20>
6月 25 09:19:56 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:56 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server...
6月 25 09:20:06 localhost.localdomain frpc[3927643]: 2023/06/25 09:20:06 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20>
6月 25 09:20:28 localhost.localdomain frpc[3927643]: 2023/06/25 09:20:28 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server...
6月 25 09:20:38 localhost.localdomain frpc[3927643]: 2023/06/25 09:20:38 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20>
6月 25 09:21:00 localhost.localdomain frpc[3927643]: 2023/06/25 09:21:00 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server...
6月 25 09:21:10 localhost.localdomain frpc[3927643]: 2023/06/25 09:21:10 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20>

根据作者的说法是网络问题,但是程序自行重连无法链接,相反,我只需要重启frpc服务即可正常链接(systemctl restart frp)。希望作者能够优化相关重连逻辑

<!-- gh-comment-id:1605818393 --> @LuziJay commented on GitHub (Jun 25, 2023): 类似相同的需求,我的情况是出现以下问题: 6月 25 09:18:57 localhost.localdomain frpc[3927643]: 2023/06/25 09:18:57 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server... 6月 25 09:19:07 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:07 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20> 6月 25 09:19:26 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:26 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server... 6月 25 09:19:36 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:36 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20> 6月 25 09:19:56 localhost.localdomain frpc[3927643]: 2023/06/25 09:19:56 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server... 6月 25 09:20:06 localhost.localdomain frpc[3927643]: 2023/06/25 09:20:06 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20> 6月 25 09:20:28 localhost.localdomain frpc[3927643]: 2023/06/25 09:20:28 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server... 6月 25 09:20:38 localhost.localdomain frpc[3927643]: 2023/06/25 09:20:38 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20> 6月 25 09:21:00 localhost.localdomain frpc[3927643]: 2023/06/25 09:21:00 [I] [service.go:208] [a90a48af75e06642] try to reconnect to server... 6月 25 09:21:10 localhost.localdomain frpc[3927643]: 2023/06/25 09:21:10 [W] [service.go:211] [a90a48af75e06642] reconnect to server error: i/o deadline reached, wait 20> 根据作者的说法是网络问题,但是程序自行重连无法链接,相反,我只需要重启frpc服务即可正常链接(systemctl restart frp)。希望作者能够优化相关重连逻辑
Author
Owner

@fatedier commented on GitHub (Jun 25, 2023):

应用层的重试逻辑从日志里已经可以看出来了,如果还是遇到问题,建议需要结合自己的环境仔细排查了,每个人的环境都不一样,无法复现的问题,其他人也很难入手。

就像你问,为什么我的系统死机了,别人一般也很难回答。如果每个问题都要靠开发者去构造各种环境,去排查分析(最关键可能花了大量时间后发现是一个系统配置问题),那靠个人的精力肯定是无法负担的。

提问的成本很低,排查问题,特别是构造异常环境的成本非常高。所以更倾向于,发现问题的同时,自己先做一些分析和资料搜索,以及控制变量的测试验证,能直接提出问题的解决方案更好,或者提供可快速本地复现的方法/环境。

<!-- gh-comment-id:1605843215 --> @fatedier commented on GitHub (Jun 25, 2023): 应用层的重试逻辑从日志里已经可以看出来了,如果还是遇到问题,建议需要结合自己的环境仔细排查了,每个人的环境都不一样,无法复现的问题,其他人也很难入手。 就像你问,为什么我的系统死机了,别人一般也很难回答。如果每个问题都要靠开发者去构造各种环境,去排查分析(最关键可能花了大量时间后发现是一个系统配置问题),那靠个人的精力肯定是无法负担的。 提问的成本很低,排查问题,特别是构造异常环境的成本非常高。所以更倾向于,发现问题的同时,自己先做一些分析和资料搜索,以及控制变量的测试验证,能直接提出问题的解决方案更好,或者提供可快速本地复现的方法/环境。
Author
Owner

@github-actions[bot] commented on GitHub (Jul 26, 2023):

Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.

<!-- gh-comment-id:1650778178 --> @github-actions[bot] commented on GitHub (Jul 26, 2023): Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.
Author
Owner

@Guation commented on GitHub (Jul 30, 2023):

我也遇到了使用tcp映射的时候frpc和frps日志都没有显示断连但是端口已经处于无法连接的状态了 重启frpc就恢复了

<!-- gh-comment-id:1657192882 --> @Guation commented on GitHub (Jul 30, 2023): 我也遇到了使用tcp映射的时候frpc和frps日志都没有显示断连但是端口已经处于无法连接的状态了 重启frpc就恢复了
Author
Owner

@github-actions[bot] commented on GitHub (Aug 30, 2023):

Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.

<!-- gh-comment-id:1698320554 --> @github-actions[bot] commented on GitHub (Aug 30, 2023): Issues go stale after 30d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.
Author
Owner

@zcq100 commented on GitHub (Apr 17, 2024):

我也遇到了这个问题。@fatedier
即便设置了loginFailExit=false,frpc依然无法自动连接。手动启动下就能恢复正常。

下面是详细的日志:

C:\Users\zcq100>ssh username@hostname
Enter passphrase for key 'C:\Users\username/.ssh/id_rsa':
Last login: Wed Apr 17 13:09:10 2024 from 10.0.100.146

设备重启之后,容器是启动的,但是frpc服务始终处于连接被拒绝的状态。

(username@hostname ~)$ podman logs frpc

2024-04-17 05:22:59.919 [I] [sub/root.go:142] start frpc service for config file [/etc/frp/frpc.toml]
2024-04-17 05:22:59.919 [I] [client/service.go:294] try to connect to server...
2024-04-17 05:22:59.924 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:35291->[::1]:53: read: connection refused
2024-04-17 05:23:01.981 [I] [client/service.go:294] try to connect to server...
2024-04-17 05:23:01.982 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:44004->[::1]:53: read: connection refused
2024-04-17 05:23:06.236 [I] [client/service.go:294] try to connect to server...
2024-04-17 05:23:06.237 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:46592->[::1]:53: read: connection refused
2024-04-17 05:23:15.055 [I] [client/service.go:294] try to connect to server...
2024-04-17 05:23:15.056 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:56644->[::1]:53: read: connection refused

(username@hostname ~)$ podman ps

CONTAINER ID  IMAGE                                COMMAND     CREATED             STATUS             PORTS       NAMES
51fd91316530  docker.io/snowdreamtech/frpc:latest              About a minute ago  Up About a minute              frpc

(username@hostname ~)$ systemctl --user restart container-frpc.service

(username@hostname ~)$ podman ps

CONTAINER ID  IMAGE                                COMMAND     CREATED        STATUS        PORTS       NAMES
d74f102eeae7  docker.io/snowdreamtech/frpc:latest              2 seconds ago  Up 2 seconds              frpc

手动重启容器之后,服务恢复正常。
(username@hostname ~)$ podman logs frpc

2024-04-17 05:24:27.548 [I] [sub/root.go:142] start frpc service for config file [/etc/frp/frpc.toml]
2024-04-17 05:24:27.548 [I] [client/service.go:294] try to connect to server...
2024-04-17 05:24:27.595 [I] [client/service.go:286] [52c3c439233bb4a6] login to server success, get run id [52c3c439233bb4a6]
2024-04-17 05:24:27.595 [I] [proxy/proxy_manager.go:173] [52c3c439233bb4a6] proxy added: [device_01.]
2024-04-17 05:24:27.608 [I] [client/control.go:170] [52c3c439233bb4a6] [hostname_01.] start proxy success

这是podman生成的启动单元

(username@hostname ~)$ cat ~/.config/systemd/user/container-frpc.service

# container-frpc.service
# autogenerated by Podman 4.5.1
# Wed Apr 17 12:37:38 CST 2024

[Unit]
Description=Podman container-frpc.service
Documentation=man:podman-generate-systemd(1)
Wants=network-online.target
After=network-online.target
RequiresMountsFor=%t/containers

[Service]
Environment=PODMAN_SYSTEMD_UNIT=%n
Restart=always
TimeoutStopSec=70
ExecStart=/usr/bin/podman run \
        --cidfile=%t/%n.ctr-id \
        --cgroups=no-conmon \
        --rm \
        --sdnotify=conmon \
        --replace \
        --network host \
        -d \
        -v /home/username/.podman/frpc/frpc.toml:/etc/frp/frpc.toml \
        --name frpc docker.io/snowdreamtech/frpc
ExecStop=/usr/bin/podman stop \
        --ignore -t 10 \
        --cidfile=%t/%n.ctr-id
ExecStopPost=/usr/bin/podman rm \
        -f \
        --ignore -t 10 \
        --cidfile=%t/%n.ctr-id
Type=notify
NotifyAccess=all

[Install]
WantedBy=default.target

(username@hostname ~)$ cat ~/.podman/frpc/frpc.toml

serverAddr = "frp.domain.com"
serverPort = 7000

auth.method="token"
auth.token= "iy2nmqzqpkqvaz"

user="device_01"

loginFailExit = false


[[proxies]]
type = "tcp"
localIp="0.0.0.0"
localPort = 22
remotePort = 10022
<!-- gh-comment-id:2060403589 --> @zcq100 commented on GitHub (Apr 17, 2024): 我也遇到了这个问题。@fatedier 即便设置了loginFailExit=false,frpc依然无法自动连接。手动启动下就能恢复正常。 下面是详细的日志: > C:\Users\zcq100>ssh username@hostname Enter passphrase for key 'C:\Users\username/.ssh/id_rsa': Last login: Wed Apr 17 13:09:10 2024 from 10.0.100.146 设备重启之后,容器是启动的,但是frpc服务始终处于连接被拒绝的状态。 > (username@hostname ~)$ podman logs frpc ``` 2024-04-17 05:22:59.919 [I] [sub/root.go:142] start frpc service for config file [/etc/frp/frpc.toml] 2024-04-17 05:22:59.919 [I] [client/service.go:294] try to connect to server... 2024-04-17 05:22:59.924 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:35291->[::1]:53: read: connection refused 2024-04-17 05:23:01.981 [I] [client/service.go:294] try to connect to server... 2024-04-17 05:23:01.982 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:44004->[::1]:53: read: connection refused 2024-04-17 05:23:06.236 [I] [client/service.go:294] try to connect to server... 2024-04-17 05:23:06.237 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:46592->[::1]:53: read: connection refused 2024-04-17 05:23:15.055 [I] [client/service.go:294] try to connect to server... 2024-04-17 05:23:15.056 [W] [client/service.go:297] connect to server error: dial tcp: lookup frp.domain.com on [::1]:53: read udp [::1]:56644->[::1]:53: read: connection refused ``` > (username@hostname ~)$ podman ps ``` CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 51fd91316530 docker.io/snowdreamtech/frpc:latest About a minute ago Up About a minute frpc ``` > (username@hostname ~)$ systemctl --user restart container-frpc.service > (username@hostname ~)$ podman ps ``` CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES d74f102eeae7 docker.io/snowdreamtech/frpc:latest 2 seconds ago Up 2 seconds frpc ``` 手动重启容器之后,服务恢复正常。 (username@hostname ~)$ podman logs frpc ``` 2024-04-17 05:24:27.548 [I] [sub/root.go:142] start frpc service for config file [/etc/frp/frpc.toml] 2024-04-17 05:24:27.548 [I] [client/service.go:294] try to connect to server... 2024-04-17 05:24:27.595 [I] [client/service.go:286] [52c3c439233bb4a6] login to server success, get run id [52c3c439233bb4a6] 2024-04-17 05:24:27.595 [I] [proxy/proxy_manager.go:173] [52c3c439233bb4a6] proxy added: [device_01.] 2024-04-17 05:24:27.608 [I] [client/control.go:170] [52c3c439233bb4a6] [hostname_01.] start proxy success ``` 这是podman生成的启动单元 > (username@hostname ~)$ cat ~/.config/systemd/user/container-frpc.service ``` # container-frpc.service # autogenerated by Podman 4.5.1 # Wed Apr 17 12:37:38 CST 2024 [Unit] Description=Podman container-frpc.service Documentation=man:podman-generate-systemd(1) Wants=network-online.target After=network-online.target RequiresMountsFor=%t/containers [Service] Environment=PODMAN_SYSTEMD_UNIT=%n Restart=always TimeoutStopSec=70 ExecStart=/usr/bin/podman run \ --cidfile=%t/%n.ctr-id \ --cgroups=no-conmon \ --rm \ --sdnotify=conmon \ --replace \ --network host \ -d \ -v /home/username/.podman/frpc/frpc.toml:/etc/frp/frpc.toml \ --name frpc docker.io/snowdreamtech/frpc ExecStop=/usr/bin/podman stop \ --ignore -t 10 \ --cidfile=%t/%n.ctr-id ExecStopPost=/usr/bin/podman rm \ -f \ --ignore -t 10 \ --cidfile=%t/%n.ctr-id Type=notify NotifyAccess=all [Install] WantedBy=default.target ``` > (username@hostname ~)$ cat ~/.podman/frpc/frpc.toml ``` serverAddr = "frp.domain.com" serverPort = 7000 auth.method="token" auth.token= "iy2nmqzqpkqvaz" user="device_01" loginFailExit = false [[proxies]] type = "tcp" localIp="0.0.0.0" localPort = 22 remotePort = 10022 ```
Author
Owner

@shyandsy commented on GitHub (Nov 26, 2025):

v0.65
配置了:loginFailExit = false

复现步骤

  1. 启动frps
  2. 启动frpc,连接正常
  3. 重启frps,frpc无法重连
  4. 重启frpc,链接恢复
docker exec frpc-container tail -f /var/log/frpc/frpc.log
2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server357] start proxy success
2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server4] start proxy success
2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server49] start proxy success
2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server190] start proxy success
2025-11-26 10:51:07.654 [D] [proxy/proxy_wrapper.go:265] [753ff53732d35c62] [manager_api] start a new work connection, localAddr: 172.31.110.106:48876 remoteAddr: 47.97.218.75:45000
2025-11-26 10:51:07.654 [I] [proxy/udp.go:93] [753ff53732d35c62] [manager_api] incoming a new work connection for udp proxy, 47.97.218.75:45000
2025-11-26 10:51:17.034 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:51:17.067 [D] [client/control.go:197] [753ff53732d35c62] receive heartbeat from server
2025-11-26 10:51:27.034 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:51:27.068 [D] [client/control.go:197] [753ff53732d35c62] receive heartbeat from server
2025-11-26 10:51:37.035 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:51:37.069 [D] [client/control.go:197] [753ff53732d35c62] receive heartbeat from server
2025-11-26 10:51:40.082 [W] [client/control.go:170] [753ff53732d35c62] [server251] start error: port unavailable
2025-11-26 10:51:42.087 [D] [client/control.go:284] [753ff53732d35c62] control message dispatcher exited
2025-11-26 10:51:42.087 [W] [proxy/udp.go:128] [753ff53732d35c62] [manager_api] read from workConn for udp error: EOF
2025-11-26 10:51:42.087 [I] [proxy/udp.go:142] [753ff53732d35c62] [manager_api] writer goroutine for udp work connection closed
2025-11-26 10:51:47.036 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:51:57.036 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:52:07.037 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:52:08.062 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:09.068 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:10.069 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:11.070 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:12.070 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:13.070 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:14.071 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:15.072 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:16.072 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:17.038 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:52:17.073 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:18.074 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:19.074 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:20.075 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:21.075 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:22.076 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:23.077 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:24.078 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:25.078 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:26.079 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:27.038 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:52:27.080 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:28.080 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:29.080 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:30.081 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:31.082 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:32.083 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:33.083 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:34.084 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:35.085 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:36.085 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:37.038 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server
2025-11-26 10:52:37.086 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:38.087 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout
2025-11-26 10:52:39.088 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout

<!-- gh-comment-id:3580761881 --> @shyandsy commented on GitHub (Nov 26, 2025): v0.65 配置了:loginFailExit = false 复现步骤 1. 启动frps 2. 启动frpc,连接正常 3. 重启frps,frpc无法重连 4. 重启frpc,链接恢复 ``` docker exec frpc-container tail -f /var/log/frpc/frpc.log 2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server357] start proxy success 2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server4] start proxy success 2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server49] start proxy success 2025-11-26 10:51:07.196 [I] [client/control.go:172] [753ff53732d35c62] [server190] start proxy success 2025-11-26 10:51:07.654 [D] [proxy/proxy_wrapper.go:265] [753ff53732d35c62] [manager_api] start a new work connection, localAddr: 172.31.110.106:48876 remoteAddr: 47.97.218.75:45000 2025-11-26 10:51:07.654 [I] [proxy/udp.go:93] [753ff53732d35c62] [manager_api] incoming a new work connection for udp proxy, 47.97.218.75:45000 2025-11-26 10:51:17.034 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:51:17.067 [D] [client/control.go:197] [753ff53732d35c62] receive heartbeat from server 2025-11-26 10:51:27.034 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:51:27.068 [D] [client/control.go:197] [753ff53732d35c62] receive heartbeat from server 2025-11-26 10:51:37.035 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:51:37.069 [D] [client/control.go:197] [753ff53732d35c62] receive heartbeat from server 2025-11-26 10:51:40.082 [W] [client/control.go:170] [753ff53732d35c62] [server251] start error: port unavailable 2025-11-26 10:51:42.087 [D] [client/control.go:284] [753ff53732d35c62] control message dispatcher exited 2025-11-26 10:51:42.087 [W] [proxy/udp.go:128] [753ff53732d35c62] [manager_api] read from workConn for udp error: EOF 2025-11-26 10:51:42.087 [I] [proxy/udp.go:142] [753ff53732d35c62] [manager_api] writer goroutine for udp work connection closed 2025-11-26 10:51:47.036 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:51:57.036 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:52:07.037 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:52:08.062 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:09.068 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:10.069 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:11.070 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:12.070 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:13.070 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:14.071 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:15.072 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:16.072 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:17.038 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:52:17.073 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:18.074 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:19.074 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:20.075 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:21.075 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:22.076 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:23.077 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:24.078 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:25.078 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:26.079 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:27.038 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:52:27.080 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:28.080 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:29.080 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:30.081 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:31.082 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:32.083 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:33.083 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:34.084 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:35.085 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:36.085 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:37.038 [D] [client/control.go:244] [753ff53732d35c62] send heartbeat to server 2025-11-26 10:52:37.086 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:38.087 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout 2025-11-26 10:52:39.088 [W] [client/control.go:270] [753ff53732d35c62] heartbeat timeout ```
Author
Owner

@PterX commented on GitHub (Nov 27, 2025):

我也遇到类似情况,我暂时缓解的办法是使用go写了个健康检查程序,访问api/status看下对应的连接状态是不是连接,如果不是连接状态立即重启下frpc。目前能满足大部分保活的需求

<!-- gh-comment-id:3584434588 --> @PterX commented on GitHub (Nov 27, 2025): 我也遇到类似情况,我暂时缓解的办法是使用go写了个健康检查程序,访问api/status看下对应的连接状态是不是连接,如果不是连接状态立即重启下frpc。目前能满足大部分保活的需求
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#2791
No description provided.