我的网络设置遇到了一个小问题:
在此网络中,我可以从 192.168.3.0 ping 到 192.168.2.0 并反向 ping,但它不适用于 TCP 连接。握手失败(无确认)。
下面是 Wireshark 捕获和我的配置:
icmp 重定向到 192.168.3.2。
config router 192.168.2.1:
route 192.168.3.0/24 dev eth-right via 192.168.2.2
config router 192.168.3.1:
route 192.168.2.0/24 dev eth-left via 192.168.3.2
config router 192.168.2/3.2:
route 192.168.2.0/24 dev eth-left proto kernel scope link src 192.168.2.2
route 192.168.3.0/24 dev eth-right proto kernel scope link src 192.168.3.2
tcp_timestamps = 0 / 1 no effect
tcp_window_scaling = 0 / 1 no effect
ip_forward = 1
iptables:
*filter
:INPUT ACCEPT [558387:1126476966]
:FORWARD ACCEPT [7256:5227071]
:OUTPUT ACCEPT [366250:1071395133]
-A INPUT -p udp -m udp --sport 67:68 --dport 67:68 -j DROP
COMMIT
答案1
route 192.168.2.0/24 dev eth-left proto kernel scope link src 192.168.2.2
route 192.168.3.0/24 dev eth-right proto kernel scope link src 192.168.3.2
src 属性是问题所在。它应该如下所示:
route 192.168.2.0/24 dev eth-left proto kernel scope link
route 192.168.3.0/24 dev eth-right proto kernel scope link