Ubuntu网络管理命令:route

安装Ubuntu桌面系统(虚拟机)_虚拟机安装ubuntu桌面版-CSDN博客

route命令与ifconfig命令都在net-tools软件包中,是一个传统的Linux路由管理命令。通过route命令可以显示和管理路由表。route命令的基本语法如下:

route [options]

route命令的常用选项有:

  • -A:指定协议族,可以取inet以及inet6等值。
  • -n:显示数字形式的IP地址。
  • -e:使用netstat格式显示路由表。
  • del:删除路由记录。
  • add:添加路由记录。
  • gw:设置默认网关。
  • dev:路由记录对应的网络接口。
  • -net:指定的目标是一个网络。
  • -host:指定的目标是一台主机。
  • netmask:指定目标网络的子网掩码。

例如,下面的命令用于显示当前系统的路由表信息:

liu@ubuntu:~$ route -n
Kernel IP routing table
Destination    Gateway      Genmask     	Flags 	Metric 	Ref        	Use Iface
0.0.0.0        10.0.2.2     0.0.0.0       	UG    	100    	0          	0 	enp0s3
0.0.0.0        192.168.1.1  0.0.0.0       	UG    	101    	0        	0 	enp0s8
10.0.2.0       0.0.0.0      255.255.255.0	U     	100    	0        	0 	enp0s3
169.254.0.0    0.0.0.0      255.255.0.0   	U     	1000   	0       	0 	enp0s3
192.168.1.0    0.0.0.0      255.255.255.0	U     	100    	0        	0 	enp0s8

route命令的输出一共有8列。第1列为路由的目标网络或者主机。第2列为网关,如果没有设置网关,则该列为星号*。第3列为目标网络的子网掩码,如果路由目标为一台主机,则该列为255.255.255.255;如果该条记录为默认路由,则子网掩码为0.0.0.0。第4列为标志,如果该条路由处于启用状态,则该列含有U标志;如果路由目标为一台主机,则该列含有H标志;如果该条路由通过网关,则该列含有G标志;如果该条路由为动态路由重新初始化路由,则该列含有R标志;如果该条路由是动态希尔,则该列含有D标志;如果该条路由是由守护进程动态修改的,则该列含有M标志;如果该条路由为禁用路由,则该列含有!标志。第5列为离目标主机或者网络的距离,通常使用跳数来表示。第6列永远为0。第7列为该条路由被使用的次数。第8列为该条路由的数据包将要发送到的网络接口。

通过route命令也可以对网络参数进行管理。例如,用户可以通过以下命令添加一条到达网络224.0.0.0/28的路由:

liu@ubuntu:~$ sudo route add -net 224.0.0.0 netmask 240.0.0.0 dev enp0s3
liu@ubuntu:~$ route -n
Kernel IP routing table
Destination	Gateway     Genmask    	Flags 	Metric 	Ref  	Use 		Iface
0.0.0.0 	10.0.2.2      0.0.0.0      	UG    100    	0        	0 		enp0s3
0.0.0.0 	192.168.1.1   0.0.0.0       	UG    101    	0        	0 		enp0s8
10.0.2.0 	0.0.0.0       255.255.255.0 	U     100    	0        	0 		enp0s3
169.254.0.0	0.0.0.0       255.255.0.0   	U     1000   	0        	0 		enp0s3
192.168.1.0	0.0.0.0       255.255.255.0 	U     100    	0        	0 		enp0s8
224.0.0.0  	0.0.0.0       240.0.0.0     	U     0      	0        	0 		enp0s3

上面新添加的路由表示发送到网络224.0.0.0/28的数据包都经过网络接口enp0s3。

route del命令可以将指定的路由记录删除,如下所示:

liu@ubuntu:~$ sudo route del -net 224.0.0.0 netmask 240.0.0.0
liu@ubuntu:~$ route -n
Kernel IP routing table
Destination Gateway    	Genmask     	Flags 	Metric 	Ref	Use 	Iface
0.0.0.0   	10.0.2.2  	0.0.0.0       	UG    	100    	0	0 		enp0s3
0.0.0.0   	192.168.1.1	0.0.0.0       	UG    	101    	0	0 		enp0s8
10.0.2.0  	0.0.0.0     255.255.255.0 	U     	100    	0	0 		enp0s3
169.254.0.0	0.0.0.0	    255.255.0.0   	U     	1000   	0  	0 		enp0s3
192.168.1.0	0.0.0.0	    255.255.255.0 	U     	100    	0	0 		enp0s8

用户可以通过route命令来管理网关。例如,下面的命令用于将默认网关192.168.1.1删除:

liu@ubuntu:~$ sudo route del default gw 192.168.1.1
liu@ubuntu:~$ route -n
Kernel IP routing table
Destination  	Gateway    	Genmask     		Flags	Metric 	Ref   Use 	Iface
0.0.0.0       	10.0.2.2   	0.0.0.0   		UG    	100    	0      0 		enp0s3
10.0.2.0      	0.0.0.0    	255.255.255.0	U     	100    	0      0 		enp0s3
169.254.0.0   	0.0.0.0    	255.255.0.0  	U     	1000   	0      0 		enp0s3
192.168.1.0   	0.0.0.0    	255.255.255.0	U     	100    	0      0 		enp0s8

下面的命令用于为网络接口enp0s8增加默认网关:

liu@ubuntu:~$ sudo route add default gw 192.168.1.1 dev enp0s8
liu@ubuntu:~$ route -n
Kernel IP routing table
Destination 	Gateway    		Genmask    		Flags 	Metric 	Ref 	Use	Iface
0.0.0.0     	192.168.1.1   	0.0.0.0        	UG    	0      	0   	0	enp0s8
0.0.0.0      	10.0.2.2      	0.0.0.0        	UG    	100    	0   	0	enp0s3
10.0.2.0  	    0.0.0.0       	255.255.255.0 	U     	100    	0   	0	enp0s3
169.254.0.0 	0.0.0.0       	255.255.0.0    	U     	1000   	0   	0	enp0s3
192.168.1.0 	0.0.0.0       	255.255.255.0 	U     	100    	0   	0	enp0s8

本文节选自《Ubuntu Linux运维从零开始学》,获出版社和作者授权发布。

《Ubuntu Linux运维从零开始学 肖志健 清华大学出版社9787302662525》【摘要 书评 试读】- 京东图书 (jd.com)

  • 3
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值