有两个设备连接到同一个 LAN 网络:
A
与 IP 192.168.1.1
,
B
与 IP 192.168.1.0
。
我B
通过 VPN 连接(WireGuard如果这很重要)暴露在外部(B
在服务器上--BS
获取地址10.8.0.3
)并决定路由全部通过将设置输入到隧道中来控制流量0.0.0.0/0
。这导致创建内部(针对B
)规则,即发送到的内容0.0.0.0/0
将发送到BS
。
下一步是B
从设备ping 设备A
- 它成功。
我认为 ICMP 数据包已通过隧道传输并返回。但是,当地址属于以下类别B
时,这怎么可能呢?B
C,而服务器位于A没有以下特征的类网络C接口?它甚至不会环回到,BS
因为它在服务器上的地址是10.8.0.3
(不是192.168.1.0
)。
另一种情况是上述情况可能发生,但需要注意的是,B
数据包需要用BS
IP 重新组装。但是,获取响应的时间没有差异。看起来是另一个 (LAN) 接口处理了请求。
最后一件事是特别待遇应用于 ping。ICMP 属于 L3 以及 VPN。必须有一个帧来自特定 IP 到另一个 IP。通俗地说,它应该应用与普通的但事实并非如此。
帮我把这些点联系起来。任何文章都值得赞赏。
编辑:
由于 IP 与问题略有不同(为了简单起见),我对其进行了相应的调整。
我的路线表:
IPv4 Route Table
===========================================================================
Active Routes:
Network Destination Netmask Gateway Interface Metric
0.0.0.0 0.0.0.0 192.168.0.1 192.168.1.0 35
0.0.0.0 0.0.0.0 On-link 10.8.0.3 0
10.8.0.3 255.255.255.255 On-link 10.8.0.3 256
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.0.0 255.255.240.0 On-link 192.168.1.0 291
192.168.1.0 255.255.255.255 On-link 192.168.1.0 291
192.168.15.255 255.255.255.255 On-link 192.168.1.0 291
192.168.48.0 255.255.240.0 On-link 192.168.48.1 271
192.168.48.1 255.255.255.255 On-link 192.168.48.1 271
192.168.63.255 255.255.255.255 On-link 192.168.48.1 271
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.1.0 291
224.0.0.0 240.0.0.0 On-link 192.168.48.1 271
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.1.0 291
255.255.255.255 255.255.255.255 On-link 192.168.48.1 271
===========================================================================
Persistent Routes:
None
答案1
这是相当标准的 VPN 行为 - 数据包根本没有传出 VPN。
VPN 通常会向您的路由表添加默认网关/最后手段路由/捕获所有路由 - 但是由于设备位于同一子网中,因此它们有特定的路由 - 并且更具体的路由优于不太具体的路由(事实上,如果不是这种情况,计算机如何找到路由器来路由 VPN 流量?)