Debian

在 /network/interfaces 中添加靜態路由到 debian 10

  • October 7, 2021

我曾經以這種方式添加靜態路由,直到 debian 9:

up route add -net 1.2.3.4.5/23 gw 2.3.4.5.6
up route add -host 2.3.4.5 gw 3.4.5.6

debian10 發生了什麼變化,/etc/network/interfaces文件中靜態路由的新語法是什麼?

這些up ...線不是獨立的,而是它們iface ...之前的一條線的延伸。/etc/network/interfaces在Debian 9 之前,實際的網路介面幾乎總是在up route add ... .

如果您選擇安裝桌面環境,那麼安裝很可能包括 NetworkManager,在這種情況下,您的網路介面可能根本沒有iface線路,而是由 NetworkManager 控制介面。在這種情況下,您可以使用一次性nmcli命令來持續添加新路由:

nmcli c modify eno1 +ipv4.routes "1.2.3.4/23 2.3.4.5" # network route
nmcli c modify eno1 +ipv4.routes "2.3.4.5 3.4.5.6" # host route

如果您不使用 NetworkManager…net-tools包含 oldifconfigroutecommands 的軟體包自 Debian 9 以來已被棄用,並且預設情況下不再安裝。因此,除非您已明確選擇 install net-tools,否則應使用較新的ip route命令:

iface eno1 ...
   up /bin/ip route add 1.2.3.4/23 via 2.3.4.5   # network route
   up /bin/ip route add 2.3.4.5/32 via 3.4.5.6   # single host route

引用自:https://unix.stackexchange.com/questions/538686