WireGuard 连接后无法访问内网

2022-09-16 11:40:04 +08:00
 hanssx

Wireguard 是配置在 OpenWrt 上面的,本机连回家,配置好了,也成功连上了,

家庭内网网段 192.168.0/24 ,还有 VPN 对端 10.8.0.1/32

接口 wg0 分配到防火墙区域 VPN ,配置好像也没有问题,

本机都 Ping 不通,trace 是请求超时,不知道为啥,是防火墙需要再加啥吗。

5943 次点击
所在节点   WireGuard
10 条回复
zbinlin
2022-09-17 17:03:46 +08:00
在 openwrt 里,ip route 显示什么
hanssx
2022-09-21 15:36:40 +08:00
@zbinlin
```
# on 主路由 openwrt 已开启 ipv4 ipv6 转发

root@QWRT:~# ip route
default via 221.X.Y.1 dev pppoe-wan proto static
192.168.0.0/24 dev br-lan proto kernel scope link src 192.168.0.1
221.X.Y.1 dev pppoe-wan proto kernel scope link src 221.X.Y.64
```
没有 10.8.0.0/24 的路由,默认网关数据就会从 221.X.Y.1 出去吧,另外 tcpdump 在 wg0 (主路由 openwrt wireguard 接口名)能抓到 icmp request ,但是没有回包。。。
```
root@QWRT:~# tcpdump -i wg0 -nn icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wg0, link-type RAW (Raw IP), capture size 262144 bytes
15:26:52.746870 IP 10.8.0.3 > 10.8.0.1: ICMP echo request, id 1, seq 370, length 40
15:26:57.483925 IP 10.8.0.3 > 10.8.0.1: ICMP echo request, id 1, seq 371, length 40
15:27:02.484910 IP 10.8.0.3 > 10.8.0.1: ICMP echo request, id 1, seq 372, length 40
15:27:07.484840 IP 10.8.0.3 > 10.8.0.1: ICMP echo request, id 1, seq 373, length 40
15:27:53.793847 IP 10.8.0.3 > 192.168.0.1: ICMP echo request, id 1, seq 377, length 40
15:27:58.484830 IP 10.8.0.3 > 192.168.0.1: ICMP echo request, id 1, seq 378, length 40
15:28:03.485093 IP 10.8.0.3 > 192.168.0.1: ICMP echo request, id 1, seq 379, length 40
```
hanssx
2022-09-21 15:49:49 +08:00
搞定了,感谢 1L ,给 VPN 网段加一条回包路由就行了,不知道为啥这个 OpenWrt 设置完成后没有自动添加?
```
ip r add 10.8.0.0/24 via 10.8.0.1 dev wg0
```
hanssx
2022-09-21 15:51:12 +08:00
最后补充一下参考的这个帖子,作者写得非常受用,
https://gobomb.github.io/post/wireguard-notes/
hanssx
2022-09-21 15:54:17 +08:00
完整的发一遍吧,方便后来者,wg0 接口区域这块如果嫌麻烦就直接加入 Lan 域,我是放到 VPN 域。
防火墙主要设置 wg0 的转发功能和 SNAT 功能以方便和家庭内网 192.168.0.0/24 段通信。
```
iptables -t filter -A FORWARD -i wg0 -j ACCEPT
iptables -t filter -A FORWARD -o wg0 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o br-lan -j MASQUERADE # 动态 SNAT
```
zbinlin
2022-09-21 17:33:40 +08:00
你把 list addresses 改成 10.8.0.1/24 应该就可以自动添加路由了。
hanssx
2022-09-21 18:40:03 +08:00
@zbinlin 真是这样,大意了。
vvlaw
2022-11-18 16:15:06 +08:00
@hanssx
huawei 的云服务器快到期了,前几天花 50 买了一年的 tencent 云,照着这个做了下,好像还是连不到 server...
server
+++++++++++++++++++++++++++++++++++++
interface: wg0
public key: kU***************************************c=
private key: (hidden)
listening port: 51194

peer: Xo*********************************************Q=
allowed ips: 192.168.2.2/32
persistent keepalive: every 15 seconds
++++++++++++++++++++++++++++++++++++++

client
++++++++++++++++++++++++++++++++++++++
interface: wg0
public key: Xo*********************************************Q=
private key: (hidden)
listening port: 35183

peer: kU***************************************c=
endpoint: **.***.***.**:51194
allowed ips: 192.168.2.0/24
transfer: 0 B received, 113.02 KiB sent
persistent keepalive: every 15 seconds
++++++++++++++++++++++++++++++++++++++


不知道哪里出了问题。坐标国外,iphone 和 archlinux 都可以连 huawei 回国听歌等,但这个 tencent 死活搞不定。。。
whcoding
292 天前
大佬问一下 我是直接 wg0 接口区域设置的 Lan 域 , 防火墙自定义规则设置的

iptables -t filter -A FORWARD -i wg0 -j ACCEPT
iptables -t filter -A FORWARD -o wg0 -j ACCEPT
iptables -t nat -A POSTROUTING -s 10.1.8.0/24 -o br-lan -j MASQUERADE


这样弄还是不能直接访问内网 ip, 还是需要设置什么吗? @hanssx
jingouwangzi
38 天前
@hanssx 太感谢了,按这个设置之后成功打通内网

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/880507

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX