如何在 Linux 中显示路由表

路由表用于向我们显示各种不同的网络子网将被路由到的位置。
以下是可用于在 Linux 中打印路由表的三个不同命令。

使用route命令查看路由表信息

route 的手册页也指出它已过时并已被前面提到的 ip route 命令替换,同样因为它仍在使用,这里是它的一个例子。
与 netstat 一样,-n 选项仅用于显示数字信息。

[jack@onitroad ~]# route -n
Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.1.254   0.0.0.0         UG    100    0        0 eno16777736
192.168.1.0     0.0.0.0         255.255.255.0   U     100    0        0 eno16777736
192.168.122.0   0.0.0.0         255.255.255.0   U     0      0        0 virbr0

使用 netstat 命令查看路由表

虽然这是在 Linux 中打印路由信息的流行方式,但 netstat 实际上已被弃用,取而代之的是 ip route,它甚至在手册页中这样说。
尽管如此,由于它仍然被广泛使用,我们将其包含在此处。

Netstat 结合 -r 选项将显示内核路由表。
这通常与 -n 方法一起使用,它只会显示数字地址而不是执行任何类型的名称解析。

[jack@onitroad ~]# netstat -rn
Kernel IP routing table
Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         192.168.1.254   0.0.0.0         UG        0 0          0 eno16777736
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eno16777736
192.168.122.0   0.0.0.0         255.255.255.0   U         0 0          0 virbr0

使用ip命令查看路由表

当前推荐的在 Linux 中打印路由表的方法是使用 ip 命令后跟 route,如下所示。

[jack@onitroad ~]# ip route
default via 192.168.1.254 dev eno16777736  proto static  metric 100
192.168.1.0/24 dev eno16777736  proto kernel  scope link  src 192.168.1.14  metric 100
192.168.122.0/24 dev virbr0  proto kernel  scope link  src 192.168.122.1

也可以将其缩短为“ip r”,这将打印相同的输出。

日期:2020-07-07 20:55:06 来源:oir作者:oir