# 查看当前路由表
ip route show
# 添加内网路由(假设内网是192.168.1.0/24,PPTP服务器IP是10.0.0.1)
sudo ip route add 192.168.1.0/24 via 10.0.0.1 dev ppp0
# 查看iptables规则
sudo iptables -L -n -v
# 允许PPTP流量通过NAT
sudo iptables -t nat -A POSTROUTING -o ppp0 -j MASQUERADE
sudo iptables -A FORWARD -i eth0 -o ppp0 -j ACCEPT
sudo iptables -A FORWARD -i ppp0 -o eth0 -m state --state RELATED,ESTABLISHED -j ACCEPT
确保/etc/ppp/options.pptp
或/etc/ppp/peers/<你的连接名>
中包含:
defaultroute
replacedefaultroute
# 临时设置MTU
sudo ifconfig ppp0 mtu 1400
# 永久设置(在PPP配置文件中添加)
mtu 1400
mru 1400
确保服务器端/etc/pptpd.conf
中配置了正确的本地IP和远程IP范围:
localip 192.168.1.1
remoteip 192.168.1.234-238
# 临时启用
echo 1 | sudo tee /proc/sys/net/ipv4/ip_forward
# 永久启用(在/etc/sysctl.conf中添加)
net.ipv4.ip_forward = 1
# 然后执行
sudo sysctl -p
检查连接状态:
ip a show ppp0
测试连通性:
ping -I ppp0 内网IP
traceroute --interface=ppp0 内网IP
查看日志:
tail -f /var/log/syslog
journalctl -f
如果以上方法仍不能解决问题,请提供具体的网络拓扑、配置文件和错误日志以便进一步诊断。