我安装wireguard
在局域网中的服务器上,两个组件之间存在单个问题ping
。拓扑如下:
srv
是一台 Linux 机器(Ubuntu 18.04),它有一个带 IP 的物理接口192.168.10.2
和一个带 IP 的虚拟接口192.168.20.1
remote
是一台通过 LAN 连接wireguard
并具有 IP 的机器192.168.20.2
internal
是 LAN 上的一台具有 IP192.168.10.5
一般来说,真实局域网上的机器在192.168.10.0/24
,VPN 在192.168.20.0/24
。任何地方都
没有任何iptables
限制。
上启用了 IP 转发srv
。
问题:我可以从任何地方 ping 所有东西,除了192.168.10.2
从192.168.20.2
(来自 VPN 上的远程机器的服务器上的物理 NIC IP)。
具体来说
- 我可以从( )
remote
一侧以及 LAN 上的任何其他地方(srv
在上面的列表中)进行访问。wireguard
192.168.20.1
192.156.10.5
- 我可以通过 VPN
remote
访问srv
- 我可以通过 VPN
路由表srv
(br0
是“物理”接口,实际上这是一个桥梁,但这里并不重要)
default via 192.168.10.1 dev br0 proto dhcp metric 1024
192.168.10.0/24 dev br0 proto kernel scope link src 192.168.10.2
192.168.20.0/24 via 192.168.20.1 dev wg0 proto static
192.168.20.0/24 via 192.168.10.2 dev br0 proto dhcp metric 1024
路由表remote
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 10.237.76.1 10.237.78.2 25
10.237.76.0 255.255.252.0 On-link 10.237.78.2 281
10.237.78.2 255.255.255.255 On-link 10.237.78.2 281
10.237.79.255 255.255.255.255 On-link 10.237.78.2 281
127.0.0.0 255.0.0.0 On-link 127.0.0.1 331
127.0.0.1 255.255.255.255 On-link 127.0.0.1 331
127.255.255.255 255.255.255.255 On-link 127.0.0.1 331
192.168.10.0 255.255.255.0 192.168.20.1 192.168.20.2 135
192.168.20.0 255.255.255.0 On-link 192.168.20.2 291
192.168.20.2 255.255.255.255 On-link 192.168.20.2 291
192.168.20.255 255.255.255.255 On-link 192.168.20.2 291
192.168.56.0 255.255.255.0 On-link 192.168.56.1 281
192.168.56.1 255.255.255.255 On-link 192.168.56.1 281
192.168.56.255 255.255.255.255 On-link 192.168.56.1 281
224.0.0.0 240.0.0.0 On-link 127.0.0.1 331
224.0.0.0 240.0.0.0 On-link 192.168.56.1 281
224.0.0.0 240.0.0.0 On-link 10.237.78.2 281
224.0.0.0 240.0.0.0 On-link 192.168.20.2 291
255.255.255.255 255.255.255.255 On-link 127.0.0.1 331
255.255.255.255 255.255.255.255 On-link 192.168.56.1 281
255.255.255.255 255.255.255.255 On-link 10.237.78.2 281
255.255.255.255 255.255.255.255 On-link 192.168.20.2 291
192.168.20.2
发送的数据包虽然经过,但却192.168.20.1
无法到达,原因可能是什么192.168.10.2
?
答案1
问题出在双路线上
192.168.20.0/24 via 192.168.20.1 dev wg0 proto static
192.168.20.0/24 via 192.168.10.2 dev br0 proto dhcp metric 1024
第一个是作为 设置的一部分添加的wg0
。它是正确的。
第二个是从 DHCP 检索的,它将这条路由发送给客户端,以便他们知道如何到达192.168.20.0/24
,即 VPN 网络。
这些信息不仅对持有VPN的主机没有用,而且实际上有害,因为[发生了一些可怕的事情,我不知道是什么] 当来自 VPN 网络的数据包被路由到 VPN 服务器(同一主机)时
删除第二条路线解决了问题,但是又升起一个(不相关的)。