每天一个 Linux 命令(8)—— route

·  阅读 618

这是我参与11月更文挑战的第13天,活动详情查看:2021最后一次更文挑战

命令简介

route 命令 用于显示或修改系统内核的 IP 路由表,设置到达特定主机或网络的静态路由。

要实现两个不同的子网之间的通信,需要一台连接两个网络的路由器,或者同时位于两个网络的网关来实现。

注意,route 命令将会废弃,替换的命令是 ip route

命令格式

route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]]
复制代码

命令参数

参数解释
-A family使用指定的地址系列,如 inet,表示 IPv4
-F直接操作 Linux 系统内核的路由表。这是默认的处理方式。
-C直接操作 Linux 系统内核的路由缓存区。
-v详细显示模式。
-n直接显示 IP 地址,无须转换成主机名。
-e采用 netstat 命令的格式显示路由表。利用 -ee 选项,可以生成更多的输出内容,其中包括路由表能够提供的所有参数。
-f清除所有网关入口的路由表。
add增加新路由。
del删除现有的路由。
-net target表示指定的路由目的是网络。target 是目的网络的网络名,或网络的 IP 地址。如果未指定 -net 或 -hosttarget 可以是关键字 default,表示默认的路由。
-host target表示指定的路由目的是主机。target 是目的主机的主机名,或主机的 IP 地址。
netmask nm在增加网络路由时,使用 nm 作为子网掩码。
gw gw通过指定的网关发送路由分组数据。注意,指定的网关必须是能够直达的主机,负责转发路由分组数据,或者直接提供路由服务。
metric n设置路由表中的网络距离度量字段,供路由守护进程使用。
mss m设置当前路由上 TCP 的最大数据段容量(Maximum Segment Size),m 的单位是字节。默认值是网络接口支持的最大传输单位 MTU 减去 TCP 头信息长度之后的结果。
window w设置当前路由上 TCP 确认窗口的大小(单位是字节)。主要用于 AX.25 网络。
irtt i设置当前路由上 TCP 连接的初始往返传输时间,取值范围是 1~12000,单位是毫秒,默认值是 300 毫秒。主要用于 AX.25 网络。
reject安装一个封锁路由,禁止外部网络检索路由。利用这个功能选项,可以在使用默认路由之前屏蔽外部网络。
Command指定您想运行的命令 (Add/Change/Delete/Print)。
Destination指定该路由的网络目标。

输出字段

输出字段解释
Destination路由的目的网络或目的主机。
Gateway网关地址( *表示未设置网关)。
Genmask确定到达目的网络或主机的路由时使用的子网掩码。当根据给定的 IP 地址寻找适当的路由时,系统内核将会利用子网掩码对IP地址进行逻辑与运算,然后依次检索每一个路由表项,从中找出匹配的路由。
Flags可能出现的路由标志包括:U:表示相应的路由已经建立。H:表示路由的目的地是一个主机。G:表示路由是利用网关实现的。R:表示路由是重新恢复的动态路由。D:表示路由是由路由守护进程或 ICMP 重定向消息动态建立的。M:表示路由已根据路由守护进程或 ICMP 重定向消息发生了变动。A:表示安装的路由。C:表示缓存的路由。!: 拒绝路由查询。
Metric从本地系统到目的网络或主机的网络“距离”,即网间的跳转数量。
Ref引用当前路由的数量。
Use路由检索计数。如果指定了 -F 选项,显示的是检索时缓存中不存在相应路由的次数,如果指定的是 -C 选项,显示的是检索时缓存中存在相应路由的次数。
Iface发送路由分组数据的网络接口。
MSSTCP 连接默认的最大数据段的字节数量,也是系统内核通过相应路由能够传输的最大数据报的大小。
WindowTCP 连接通过相应路由一次能够传输的最大数据量。
irtt“initial round trip time”的缩写,表示初始的往返传输时间。在 TCP 协议传输数据期间,如果数据传输有误,TCP 将会重传丢失的数据报。TCP 协议采用一个计数器,记录数据报传输到远程主机花费的时间,以及收到一个确认需要多长时间,因而知道在重传数据报之前需等待多长时间。这个时间称作数据报传输与确认的往返时间。在开始建立网络连接时,TCP协议将会采用一个初始的往返时间作为默认值。对于大多数网络而言, TCP 协议采用的默认往返时间值是适当的,但对于一些速度较慢的网络,如果这个时间太短,将会引起不必要的数据报重传。必要的话可以设置 irtt 值。如果这个字段值为 0,意味着采用默认值。

应用实例

  1. 假定本地系统的网络接口(其 IP 地址为192.168.90.101)连接到主机(其内部网络接口的 IP 地址为192.168.90.100),主机的另外一个网络接口(其 IP 地址为153.78.26.145)连接到外部网络。为使本地系统能够访问 153.78.26.0 网络中的任何主机,可以使用 route 命令,增加一个静态路由。
route add -net 153.78.26.0 netmask 255.255.255.0 gw 192.168.90.100
复制代码
  1. 在没有其他匹配的路由可用时,可以使用默认的路由。在上述情况下,192.168.90.0 网段上的主机均可仅仅增加一个简单的默认路由设置。
route add default gw 192.168.90.100
复制代码

参考文档

  • route命令
  • 《Linux 常用命令简明手册》—— 邢国庆编著
分类:
后端
标签:
分类:
后端
标签:
收藏成功!
已添加到「」, 点击更改