route - show / manipulate the IP routing table
route命令用来显示并设置Linux内核中的网络路由表,route命令设置的路由主要是静态路由。
要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。
在Linux系统中设置路由通常是为了解决以下问题:该Linux系统在一个局域网中,局域网中有一个网关,能够让机器访问Internet,那么就需要将这台机器的ip地址设置为Linux机器的默认路由。
要注意的是,直接在命令行下执行route命令来添加路由,不会永久保存,当网卡重启或者机器重启之后,该路由就失效了;可以在/etc/rc.local中添加route命令来保证该路由设置永久有效。
linux 默认只支持一条默认路由,当重新启动网口时,会把其他默认路由去掉,只剩下一条该网口生成的默认路由。当然可以通过 route 命令手动添加多条默认路由,如果多条路由一样,则选择最开始找到的路由(排在前面的路由)。
语法:
route [-CFvnee]
route [-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I] [reject] [mod] [dyn] [reinstate] [[dev] If]
route [-v] [-A family] del [-net|-host] target [gw Gw] [netmask Nm] [metric N] [[dev] If]
route [-V] [--version] [-h] [--help]
选项-描述:
- -A 设置地址类型;
- -C 打印将Linux核心的路由缓存;
- -v 详细信息模式;
- -n 不执行DNS反向查找,直接显示数字形式的IP地址;
- -ee 使用更详细的咨询来显示,netstat的格式显示路由表;
- -net 到一个网络的路由表;
- -host 到一个主机的路由表。
- -F 显示发送信息
参数-描述
- Add 增加指定的路由记录;
- Del 删除指定的路由记录;
- Target 目的网络或目的主机;
- gw 设置默认网关;
- mss 设置TCP的最大区块长度(MSS),单位MB;
- window 指定通过路由表的TCP连接的TCP窗口大小;
- dev 路由记录所表示的网络接口。
- reject 设置到指定网络为不可达,避免在连接到这个网络的地址时程序过长时间的等待,直接就知道该网络不可达。
查看路由信息:
[root@oldboy ~]# route Kernel IP routing table Destination Gateway Genmask Flags Metric Ref Use Iface 10.0.2.0 * 255.255.255.0 U 0 0 0 eth0 192.168.0.0 * 255.255.255.0 U 0 0 0 eth3 link-local * 255.255.0.0 U 1002 0 0 eth0 link-local * 255.255.0.0 U 1003 0 0 eth3 default 192.168.0.1 0.0.0.0 UG 0 0 0 eth3
显示信息说明
标题 | 说明 |
---|---|
Destination | 目标网段或者主机 |
Gateway | 网关地址,* 表示目标是本主机所属的网络,不需要路由 |
Genmask | 网络掩码 |
Flags | 路由标志,标记当前网络节点的状态;U : Up表示此路由当前为启动状态,路由是活动的; H : Host,表示此网关为一主机,目标是一个主机; G : Gateway,表示此网关为一路由器;路由指向网关; R : Reinstate Route,使用动态路由重新初始化的路由;恢复动态路由产生的表项; D : Dynamically,此路由是动态性地写入,由路由的后台程序动态地安装; M : Modified,此路由是由路由守护程序或导向器动态修改,由路由的后台程序修改; ! : 表示此路由当前为关闭状态;拒绝路由; |
Metric | 路由距离,到达指定网络所需的中转数 |
Ref | 路由项引用次数\ |
Use | 此路由项被路由软件查找的次数 |
Iface | 该路由表项对应的输出接口 |
查看参数说明
参数 | 说明 |
---|---|
-c | 显示更多信息 |
-n | 不解析名字 |
-v | 显示详细的处理信息 |
-F | 显示发送信息 |
-C | 显示路由缓存 |
配置静态路由:
命令
route [add|del] [-net|-host] target [netmask Nm] [gw Gw] [[dev] If]
参数说明
参数 | 说明 |
---|---|
add | 添加一条路由规则 |
del | 删除一条路由规则 |
-net | 目的地址是一个网络 |
-host | 目的地址是一个主机 |
target | 目的网络或主机 |
netmask | 目的地址的网络掩码 |
gw | 路由数据包通过的网关 |
dev | 为路由指定的网络接口 |
示例:
添加默认网关 为10.0.0.1 root@text:~# route add default gw 10.0.0.1 删除默认网关 root@text:~# route del default gw 10.0.0.1 添加到主机的路由 root@text:~# route add -host 192.168.10.2 dev eth3 root@text:~# route -n Destination Gateway Genmask Flags Metric Ref Use Iface 192.168.10.2 * 255.255.255.255 UH 0 0 0 eth3 删除到主机的路由 root@text:~# route del -host 192.168.10.2 dev eth3 添加到网络192.168.55.0的路由 root@text:~# route add -net 192.168.55.0 netmask 255.255.255.0 eth3
屏蔽到网路192.168.55.0的路由
route add -net 192.168.55.0 netmask 255.255.255.0 reject
删除到网络的路由 root@text:~# route del -net 192.168.55.0 netmask 255.255.255.0 eth3
参考:https://blog.csdn.net/u011857683/article/details/83795435