查看当前路由表
使用命令netstat或route -n查看当前路由表。
命令
$ netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.50.1 0.0.0.0 UG 0 0 0 ens37
192.168.50.0 0.0.0.0 255.255.255.0 U 0 0 0 ens37
192.168.50.0 0.0.0.0 255.255.255.0 U 0 0 0 ens37
192.168.122.0 0.0.0.0 255.255.255.0 U 0 0 0 virbr0
192.168.189.0 0.0.0.0 255.255.255.0 U 0 0 0 ens33
追加记录到路由表
追加路由表有临时、永久两种方式。可通过命令或修改配置文件实现。
临时追加
可通过命令行实现追加路由表。此处使用route与ip这两种方式。
route命令
・追加路由表
命令
$ route add -net 172.20.0.0 gw 172.20.0.1 netmask 255.255.0.0 ens33
・追加特定host(的路由)
命令
$ route add -host 172.20.233.10 gw 172.20.0.1 ens33
当-net变成-host后,不需要子网掩码netmask。
另外,单一网卡时,可以不必要指定接口ens33 。
ip命令
・network的追加
命令
$ ip route add 172.20.0.0/16 via 172.20.0.1 dev ens33
・追加单个host
命令
$ ip route add 172.20.39.128/32 via 172.20.0.1 dev ens33
此处,host与network的区别仅在子网掩码,添加具体host时使用/32。
永久追加(以CentOS为例)
使用命令追加的话,系统一旦重启,设定即会消失。
下文将介绍使路由表永久生效的方法。
文件
$ cat /etc/sysconfig/network-scripts/route-ens33
172.20.0.0/16 via 172.20.0.1 dev ens33 // 设置network路由表时
192.168.189.123/32 via 192.168.189.1 dev ens37 // 指定具体host的路由时
文件
$ systemctl restart network.service
查看路由表
设定后的结果如下所示。
命令
$ netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 172.20.0.1 0.0.0.0 UG 0 0 0 ens33
172.20.0.0 172.20.0.1 255.255.0.0 UG 0 0 0 ens33
192.168.189.123 192.168.189.1 255.255.255.255 UGH 0 0 0 ens37
删除路由表
删除路由表也有临时与永久两种方式。同理,单行命令删除为临时;永久删除需要修改配置文件。
临时删除
临时删除与追加一样使用同一个命令,route或ip。
route命令
・删除网段(network)记录
命令
$ route del -net 172.20.0.0 gw 172.20.0.1 netmask 255.255.0.0 ens33
・host命令
$ route del -host 192.168.189.128 gw 192.168.189.1 ens37
与追加的时候相同,network与host的区别在于-net变成-host的时候,不需要子网掩码netmask。且可以不写ens33。
ip命令
・删除网段的路由表
命令
$ ip route del 172.20.0.0/16
・删除具体host的路由表
命令
$ ip route del 192.168.189.128/32
同理,与追加的时候一样,更改单个host路由表时,子网掩码只用写/32。
永久删除
仅需要将上文配置文件中添加的部分删除,重启服务即可。
确认
命令
$ netstat -nr
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 172.20.0.1 0.0.0.0 UG 0 0 0 ens33
172.20.0.0 172.20.0.1 255.255.0.0 UG 0 0 0 ens33
192.168.189.123 192.168.189.1 255.255.255.255 UGH 0 0 0 ens37