我在家工作并有工作设备。
它们安装在工作局域网中的交换机上,交换机本身连接到带有 DHCP 服务器(在 10.7.37.0/24 上)的服务器并通过个人局域网进行路由。
互联网来自路由器,它是一台 DHCP 服务器(位于 192.168.0.0/24)。此 LAN 供个人设备使用。
现在工作局域网上的设备无法连接到互联网。我在设备、工作/个人局域网路由器、广域网/个人局域网路由器和互联网上的远程服务器上运行了 tcpdump。
我可以看到数据包离开设备,经过第一个路由器和第二个路由器。但我没有看到它们到达在线服务器。
我也没有看到从互联网返回的数据包。
工作局域网中的设备可以正常 ping 通个人设备。
路由问题出在哪里?
网络图如下:
Device
eth0 10.7.37.2
|
|
eth1 10.7.37.1 (DHCP server)
Router 1 - DHCP server for devices on 10.7.37.0/24
wls1 192.168.0.14 (DHCP client)
|
|
br0 192.168.0.1
Router 2 - DHCP server for devices on 192.168.0.0/24
vlan2 xx.xx.xx.xx public internet IP
|
|
Internet
路由器1上的路由表:
default via 192.168.0.1 dev wls1
default via 10.7.37.10 dev eth1 metric 1
10.7.37.0/24 dev eth1 proto kernel scope link src 10.7.37.10
192.168.0.0/24 dev wls1 proto kernel scope link src 192.168.0.14
在路由器 2 上:
default via xx.xx.xx.1 dev vlan2
10.7.37.0/24 via 192.168.0.14 dev br0
xx.xx.xx.0/24 dev vlan2 proto kernel scope link src 47.152.241.191
127.0.0.0/8 dev lo scope link
169.254.0.0/16 dev br0 proto kernel scope link src 169.254.255.1 192.168.0.0/24 dev br0 proto kernel scope link src 192.168.0.1
在设备上:
default via 10.7.37.10 dev eth0
9.9.9.9 via 10.7.37.10 dev eth0
10.7.37.0/24 dev eth0 proto kernel scope link src 10.7.37.20
10.7.37.10 dev eth0 scope link
192.168.0.14 via 10.7.37.10 dev eth0
答案1
路由似乎没问题,您说的是tcpdump
显示数据包通过路由器 R1 和 R2。我在这里看到的唯一问题是NAT
,您必须在 R2 上SNAT
或MASQUERADE
。如果它是一个 Linux 机器,上面有类似的东西:
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE