解决pptpsetup连接时报LCP: timeout sending Config-Requests 错误

时间:2024-11-14 08:32:51

写在前面的废话:

利用WAS搭建了一个PPTP服务器,手机和笔记本都能正常连接, 但另外一台电脑怎么都连不上
这我就很纳闷了,说是服务器问题,但为啥手机和笔记本都能访问呢, 于是各种就找啊找,总算找到了。

根据帮助文档
我用tcpdump命令查看报文信息得到下面日志

20:03:35.712503 IP .56920 > %WAS_Server%.pptp:
Flags [.], ack 189, win 237, options [nop,nop,TS val 253650326 ecr
90054405], length 0 20:03:35.712825 IP >
%WAS_Server%: GREv1, call 6144, seq 1, length 36: LCP, Conf-Request
(0x01), id 1, length 22 20:03:35.717651 IP %WAS_Server% >
: GREv1, call 0, seq 0, length 41: LCP,
Conf-Request (0x01), id 1, length 27 20:03:35.717745 IP
> %WAS_Server%: ICMP host
unreachable - admin prohibited, length 69
20:03:35.984824 IP %WAS_Server% > : GREv1, call
0, seq 1, ack 1, length 40: LCP, Conf-Ack (0x02), id 1, length 22
20:03:35.984922 IP > %WAS_Server%: ICMP host
unreachable - admin prohibited, length 68

解决方法:

admin prohibited-->被管理员阻止了?
原来是FORWARD 阻止了 ICMP 相关的包,执行下面命令:
当然,你也可以把防火墙关掉

[root@linux ~]# iptables --insert OUTPUT 1 \
source 0.0.0.0/0.0.0.0 \
destination 0.0.0.0/0.0.0.0 \
jump ACCEPT --protocol gre \
out-interface eth0

[root@linux ~]# iptables --insert INPUT 1 \
source 0.0.0.0/0.0.0.0 \
destination 0.0.0.0/0.0.0.0 \
jump ACCEPT --protocol gre \
in-interface eth0 

解决问题:

执行完之后再重新连接就可以啦!

[root@linux ~]# pptpsetup --create vpnName --server %WAS_Server% --username vpnUser --password vpnPass --encrypt --start
Using interface ppp0
Connect: ppp0 <--> /dev/pts/1
CHAP authentication succeeded
MPPE 128-bit stateless compression enabled
local  IP address 10.0.0.10
remote IP address 10.0.0.1
[root@linux ~]#

这个只能解决防火墙的问题,如果遇到其他问题,请查询: