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)

相关推荐
gaize12136 分钟前
如何配置一个!P地址和子网掩码?
开发语言·php
学习3人组7 分钟前
docker运行报错启动守护进程
linux·运维·centos
绵羊202323 分钟前
索拉非尼作用机制
linux
小张帅三代23 分钟前
华为昇腾服务器ubuntu安装Anaconda步骤
运维·服务器·ubuntu
星光一影26 分钟前
合成植物大战僵尸 安卓原生APP Cocos游戏 支持Sigmob
android·游戏·php·html5·web app
杜子不疼.27 分钟前
【Linux】 进程控制(二):进程等待(wait/waitpid) 与 子进程获取(status)
linux·运维·服务器
秦少游在淮海29 分钟前
网络缓冲区 · 通过读写偏移量维护数据区间的高效“零拷贝” Buffer 设计
linux·开发语言·网络·tcp协议·muduo·网络缓冲区
炮院李教员29 分钟前
Ubuntu 24.04 安装common-extensions
linux·运维·ubuntu
满天星830357734 分钟前
【Linux】信号(下)
android·linux·运维·服务器·开发语言·性能优化
拾贰_C36 分钟前
【Ubuntu】怎么查询Nvidia显卡信息
linux·运维·ubuntu