Ip-Routing
強制路由到介面,無論如何
我的伺服器上有 2 個介面(eno1和eno2)。每當任何程序嘗試訪問 IP(比如說 183.182.99.1)時,我都希望流量使用eno2連結。
這是我目前的路由表:
default via 192.168.1.1 dev eno2 metric 90 default via 172.22.1.1 dev eno1 metric 100 183.182.99.1 via 192.168.1.1 dev eno2 metric 80
這裡的問題是每當eno2關閉時,核心會嘗試使用eno1訪問此 IP 。
相反,我希望它像離線一樣失敗。
有沒有辦法做到這一點?
是的,您可以在兩條路線之間“插入”一條黑洞路線。通過插入,我的意思是使用比 eno2 的度量更高的度量,但比eno1的度量低的度量。當然,在eno1上根本沒有預設路由也可以解決它。
# ip route add blackhole default metric 95
您可以替換
blackhole
(丟棄)prohibit
或unreachable
獲取各種 ICMP 消息,而不是什麼都沒有(路由時。即使使用 ,本地程序也會立即出錯blackhole
)。throw
也可以使用,但其用途不同,通常用於附加 ip 規則。如果您的目標是僅保護183.182.99.1 不使用eno1,則僅將其應用於此 IP,例如,此而不是上面(只要它高於 80,度量就無關緊要,因為通常較短的網路遮罩( /32) 總是勝過更大的網路遮罩 (/0)):
# ip route add blackhole 183.182.99.1 metric 9999