我正在pipe理一个局域网( 192.168.0.0/24 ),我有:
192.168.0.1 ),由ISP提供的一个路由器,可以访问互联网,作为交换机和接入点。 这个路由器是非常糟糕的:它甚至不允许我closuresIPv6或使用自定义名称服务器… 192.168.0.2 ),一个像样的路由器,用作交换机和接入点。 192.168.0.41 ),我想用作整个networking的网关的计算机。 GW需要通过它是客户端的VPN发送数据包到互联网。 服务器DHCP正在这里运行。 192.168.0.101 ))的IP地址范围为192.168.0.100-192.168.0.200 。 示例图:
+----+ +--------+ | GW | | Laptop | +--+-+ +----+---+ | | | | -+ +----+---+ +----+---+ Internet +---------+ ROUTER +------------+ Switch | -+ +--------+ +--------+
我有一个非常类似的configuration已经build立和运行在不同的地方。 那里没有SWITCH,路由器是不同的型号,一切工作正常
这里一切正常,只要LAPTOP和GW都直接连接到开关。 如果一个或两个都连接到ROUTER,事情就会停止。
如果LAPTOP和GW之间至less有一个连接到ROUTER,则LAPTOP可以ping通互联网,但TCP不起作用。
在浪费了很多时间之后,我开始在LAPTOP和GW上嗅探,并且我注意到ROUTER不转发一些数据包…
在以下示例中,LAPTOP通过WiFi连接到ROUTER,而GW通过以太网电缆直接连接到ROUTER; LAPTOP尝试通过HTTP下载某些内容:
由于GW没有收到对TCP SYNACK#4的响应,所以在延迟后它会一直发送相同的数据包,但是它们永远不会被LAPTOP接收到。
因为如果SYNACK数据包没有stream过ROUTER,所有东西都能正常工作,我确信ROUTER不会正确地转发这些SYNACK。
如何发生,为什么?
我做错了什么? 我可以做任何事情,使一切工作,或者我不得不得到一个新的路由器,并使用ISP的只有一个调制解调器?