AWS Lightsail Debian 10下OpenVPN服务器客户端间无法通信求助
OpenVPN客户端互通故障修复方案
核心配置错误修复
你当前配置的首要问题是两个客户端被分配了相同的VPN网段IP,client1和client2的CCD配置中都指定了10.8.0.2,IP冲突直接导致通信失败,需先修改配置:
- 编辑
client1对应的CCD文件,保留原有配置即可:
ifconfig-push 10.8.0.2 255.255.255.0 push "route-gateway 10.8.0.1"
- 编辑
client2对应的CCD文件,修改分配的IP为同网段未占用地址:
ifconfig-push 10.8.0.3 255.255.255.0 push "route-gateway 10.8.0.1"
- 重启OpenVPN服务生效:
systemctl restart openvpn@server
两个客户端断开重连VPN,确认各自获取的IP分别为10.8.0.2和10.8.0.3。
后续排查验证步骤
1. 服务端配置校验
- 你现有的
server.conf已经开启client-to-client参数,该参数会让OpenVPN直接转发客户端之间的流量,无需额外配置iptables规则即可实现客户端互通。 - 确认服务端已开启IP转发:执行
cat /proc/sys/net/ipv4/ip_forward,返回值为1即为正常,若为0执行以下命令永久开启:
echo "net.ipv4.ip_forward = 1" >> /etc/sysctl.conf sysctl -p
2. 客户端防火墙放行
- 树莓派(client1)默认会拦截外网段入站流量,执行命令放行VPN网段所有请求:
# 若使用ufw防火墙 ufw allow in from 10.8.0.0/24 # 若使用原生iptables iptables -I INPUT -s 10.8.0.0/24 -j ACCEPT
- Mac端(client2)默认防火墙会拦截ICMP和SSH入站,可临时关闭防火墙测试,或在防火墙设置中放行来自
10.8.0.0/24网段的ICMP、22端口请求。
3. 功能验证
在client2端执行ping 10.8.0.2确认网络连通,之后执行ssh 你的树莓派用户名@10.8.0.2即可建立SSH连接。
内容的提问来源于stack exchange,提问作者Wesley Owens
相关产品推荐
相关产品推荐

