PinkD / corplink-rs

使用 rust 实现的飞连客户端
GNU General Public License v2.0
194 stars 26 forks source link

ubuntu客户端运行一会儿后自动断开 #41

Open fuyu89 opened 1 week ago

fuyu89 commented 1 week ago

背景:这个客户端是我自己编译的客户端,版本是当前最新的版本4.3,服务器操作系统是ubuntu 22.04。这个客户端已经成功运行了一段时间。 现象:最近发现这个客户端无论如何也无法保持运行了,下面是报错日志: [2024-06-25T03:11:06Z INFO  corplink_rs::client] try to get wg conf from remote [2024-06-25T03:11:06Z INFO  corplink_rs::client] 2fa code generated: 249427, 24 seconds left [2024-06-25T03:11:07Z INFO  corplink_rs] start wg-corplink for corplink [2024-06-25T03:11:07Z INFO  corplink_rs::wg] start wg-corplink [2024-06-25T03:11:07Z INFO  corplink_rs::wg] send config to uapi [2024-06-25T03:11:07Z INFO  corplink_rs::client] keep alive [2024-06-25T03:12:07Z INFO  corplink_rs::client] keep alive [2024-06-25T03:12:07Z WARN  corplink_rs::client] keep alive error: failed to report connection with error 1000: Update VPN information failed, please switch to other VPN node or retry again [2024-06-25T03:12:07Z INFO  corplink_rs] disconnecting vpn... [2024-06-25T03:12:07Z INFO  corplink_rs] reach exit

这是我的初始配置(敏感信息已经省略): root@ln01:/home/corplink# cat corplink1.json  {   "company_name": "am...",   "username": "137........",   "password": "..........",   "conf_name": "corplink_new",   "conf_dir": "/home/corplink" }

请问这是bug吗?还是配置问题?或是其他问题?如何解决呢?求助

PinkD commented 1 week ago

你可以尝试注释 777 行重新编译,在 report 失败的时候不退出。如果能正常继续使用,就没问题,如果会出现网络不通的情况,就说明飞连服务端增加了其它保活的检查,需要研究一下具体的检查并实现,才能防止服务端主动断开连接 https://github.com/PinkD/corplink-rs/blob/43623314016c0259dc94a2ec924e9b40ba48cfec/src/client.rs#L770-L782

fuyu89 commented 1 week ago

感谢博主。我注释了777行后,重新编译然后运行,还是报一样的错。

image image
PinkD commented 1 week ago

在 780 行前面打一条 log 看看能不能打出来,如果能打出来就说明是其他地方触发的退出,如果不能打出来,就把 err 的分支去掉吧。这里不 return 的情况下应该会走到下面的 sleep 才对

fuyu89 commented 1 week ago

client.rs配置加了打印日志测试: image 但是日志没有被打印出来:

image

说明异常就断了。

暂时放弃了。感谢大佬的耐心解答