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)

相关推荐
欧米欧21 小时前
解析Linux从umask位运算到粘滞位
linux
江屿风21 小时前
【Linux系统】【Linux进程终止等待详解与程序替换机制初体验】流食般投喂
linux·运维·笔记·系统架构·centos·unix
螺蛳粉 螺蛳粉21 小时前
CentOS 7.9 自建 Yum 源服务器搭建指南
linux·服务器·centos
专业程序开发源1 天前
springboot旅游推荐系统82074-计算机课程设计、毕业设计
java·vue.js·spring boot·后端·php·课程设计·旅游
吴声子夜歌1 天前
Shell编程实例——脚本编程的附加特性
linux·运维·shell
yunwei371 天前
eBPF 教程:BPF 调度器入门
linux·后端·性能优化
byte轻骑兵1 天前
【BlueZ 】sdp 模块:服务发现协议的用户态实现基础
linux·人工智能·bluez·电脑蓝牙·嵌入式蓝牙
赴生-1 天前
Liunx 操作系统 进程控制(上)
linux
傲世仙尊1 天前
从.o到ELF-静态库动态库与可执行文件的生命周期
linux
指尖的爷1 天前
【地狱级难度】ubuntu系统GOCV编译安装
linux·运维·ubuntu