banner
李大仁博客

李大仁博客

天地虽大,但有一念向善,心存良知,虽凡夫俗子,皆可为圣贤。

[PPTPD]VPN解决PTY read or GRE write failed问题

使用 VPS 搭建的翻墙用 VPN 在最近一次系统升级后经常出现连接断开和无法连接的现象(619 等错误), 调查了 linux 的系统日志(syslog),发现每次连接失败都会出现以下日志内容,

GRE: read(fd=6,buffer=80504c0,len=8196) from PTY failed: status = -1 error = Input/output error, usually caused by unexpected termination of pppd, check option syntax and pppd logs CTRL: PTY read or GRE write failed (pty,gre)=(6,7) CTRL: Reaping child PPP[13354] CTRL: Client XXX.XXX.XXX.XXX control connection finished

开始以为是 GRE 出了问题,但是查看了升级日志后发现 GRE 并没有升级,后来通过谷哥和度娘找到了解决办法,在此 MARK 一下。 1. 打开调试模式,修改 /etc/ppp/pptp-options 文件,找到

#debug
#dump

取消行前的注释,重启 pptpd 服务进入调试模式

2. 分析日志后发现是 logwtmp 版本的与 pptpd 版本不一致的原因导致的问题,打开 /etc/pptpd.conf 文件,找到

logwtmp

注释掉 logwtmp 后,重新启动 pptpd,再次连接后一切恢复正常。

3. 最后如果你的服务器启用了 proxyarp 功能的话,每次非正常断开连接后,不要忘记 arp -d 一下。

#windows
arp -d
#linux
sudo arp -d -a

加载中...
此文章数据所有权由区块链加密技术和智能合约保障仅归创作者所有。