Icmp
Linux 忽略來自一個介面但在另一個介面的 IP 範圍內的 ECHO 請求
我從路由器 ping Linux 筆記本的 WiFi IP,它響應良好。我從 PC 上 ping WIFI 地址,該地址既可以直接從 LAN(eth1)看到,也可以通過路由器從 WiFi 介面(wlo1)看到,但我沒有收到任何回复。
tcpdump
顯示它確實收到了,ECHO REQUESTS
但我在 wlo1(WiFi) 和 eth1(LAN) 上都沒有看到回复。
您已經更新了圖表,並且幾乎可以肯定所示的接線將無法正常工作。考慮從 10.0.0.3 到 WiFi 介面 192.168.2.2 的數據包。數據包到達並將立即被丟棄,因為它顯然到達了錯誤的介面。(WiFi 是 192.168.2.0/24,但乙太網是 10.0.0.0/24。)這被稱為“反向路徑過濾”,是防火牆內的一項重要安全功能。如果您確實需要,您可以禁用它,但您應該首先重新考慮您的網路拓撲。
(更新圖表之前的舊答案)
您應該確保您有通過路由器到外部子網的路由(或預設路由)。否則係統將不知道將回復發送到哪裡,因此它將丟棄它們。
我看到你有兩條預設路由。除非它們是不同的指標,否則不建議這樣做。預設路由旨在作為沒有明確定義路由的流量的最後選擇路由(即預設路由)。根據定義,您不能擁有超過一個。
有兩個例外,它們根本不是例外:
- 預設路由有不同的指標;在這種情況下,將使用具有最低指標的指標,而忽略所有其他指標
- 您使用命名空間或其他路由表擴展來為不同情況提供不同的預設路由;在這種情況下,每種情況只能有一個預設路由,並且該規則仍然適用