Linux使用route命令设置默认网关

时间:2020-01-09 10:41:57  来源:igfitidea点击:

如何在Linux操作系统上使用route命令设置默认网关?您可以使用route命令在Linux和类似UNIX的操作系统下显示和/或者操作IP路由表。基于现代Linux的操作系统建议使用ip命令来设置IP路由表。 route命令可操纵内核IP路由表。
它的主要用途是在使用ifconfig程序配置它之后,通过接口建立到特定主机或者网络的静态路由。
使用add或者del选项时,route修改路由表。
如果没有这些选项,则route将显示路由表的当前内容。

Linux查看默认路由

以下三个命令显示当前路由表:

# route

输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
192.168.1.0     *               255.255.255.0   U     0      0        0 ra0
default         dsl-router      0.0.0.0         UG    0      0        0 ra0

或者

$ /sbin/route

输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
191.255.255.0   *               255.255.255.0   U     0      0        0 eth0
169.254.0.0     *               255.255.0.0     U     0      0        0 eth0
default         191.255.255.1   0.0.0.0         UG    0      0        0 eth0

您可以使用-n选项来显示数字地址,而不是尝试确定符号主机名(通过dns或者/etc/hosts文件)。
如果您要确定到名称服务器的路由消失的原因,这很有用。

$ /sbin/route -n

输出:

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
191.255.255.0   0.0.0.0         255.255.255.0   U     0      0        0 venet0
169.254.0.0     0.0.0.0         255.255.0.0     U     0      0        0 venet0
0.0.0.0         191.255.255.1   0.0.0.0         UG    0      0        0 venet0

请注意,目标条目0.0.0.0(或者默认值)是默认网关。
在上面的示例中,191.255.255.1是默认网关。

添加/设置新路由

语法如下:

route add default gw {IP-ADDRESS} {INTERFACE-NAME}

其中:

  • IP地址:指定路由器IP地址
  • 接口名称:指定接口名称,例如eth0

例如,如果您的路由器IP地址为192.168.1.254,则以root用户身份执行以下命令:

# route add default gw 192.168.1.254 eth0

或者使用主机名,例如dsl-router:

# route add default gw dsl-router eth0

或者使用ip命令(较新的语法)通过eth1.25网络接口连接的192.168.1.254网关路由所有流量:

# ip route add 192.168.1.0/24 dev eth0

或者

# ip route add 192.168.1.0/24 via 192.168.1.254

在Linux下使用GUI工具/命令设置路由

如果发现上述命令难以使用,请考虑使用GUI工具。
如果您使用的是Red Hat/CentOS/Fedora核心Linux,请输入以下命令:

# redhat-config-network

或者如果使用其他Linux发行版,请使用命令:

# network-admin