如何在 Linux 中为路由器设置静态默认路由?我知道设置静态路由的常用方法是编辑 /etc/network/interfaces 并在适当的接口上添加以下行:
up route add -net <destination> gw <next-hop>
但是,该如何修改该行以使其成为默认路由?谢谢
[编辑]
这是正确的情况吗:如果我有一个路由器 R1 直接连接到路由器 R2(R1(eth0)连接到 R2(eth1))。如果我想设置从 R1 到 R2 的默认路由,那么我修改 R1 的 /etc/network/interfaces,并在 eth0 接口下添加以下行:
up route add default gw <R2 eth1 ip addr> dev eth0
答案1
这可能因您的发行版而异。例如,您可以在基于 debain 的系统(如 ubuntu)的文件中使用以下语法/etc/network/interfaces
。
auto eth0
iface eth0 inet static
address ...
netmask ...
network ...
broadcast ...
gateway <default gateway IP>
在类似 Redhat 的系统上,您可以编辑文件/etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
BOOTPROTO=none
IPADDR=...
NETMASK=...
GATEWAY=<default gateway IP>
ONBOOT=yes
答案2
用于持久更改的适当配置文件将是特定于供应商和/或发行版的。
例如,在 redhat 或 fedora 系统上,您可以将 GATEWAY 行添加到文件 /etc/sysconfig/network。
(这也可以为 /etc/sysconfig/network-scripts/ifcfg-devN 完成,但在多接口盒上这很繁琐并且可能会造成混淆。)
对于“一次性”运行时使用,您应该能够使用 ip 命令(这应该适用于任何发行版):ip route add default via gateway-address
例如:
ip route add default via 192.168.99.254
干杯!