route
在类似Unix的操作系统上,route命令显示或修改IP 路由表。
查看英文版
1 route 运行系统环境
2 route 描述
3 route 语法
4 route 例子
route 运行系统环境
Linux
route 描述
在计算机网络中,路由器是负责转发网络流量的设备。当数据报到达路由器时,路由器必须确定将其路由到目的地的最佳方法。
在Linux,BSD和其他类似Unix的系统上,route命令用于查看和更改内核路由表。在不同的系统上,命令语法不同。在这里,当涉及特定的命令语法时,我们将讨论Linux版本。
在命令行中运行route,不带任何选项将显示路线表条目:
route
内核IP路由表 Destination Gateway Genmask Flags Metric Ref Use Iface default 192.168.1.2 0.0.0.0 UG 1024 0 0 eth0 192.168.1.0 * 255.255.255.0 U 0 0 0 eth0
这向我们展示了系统当前的配置方式。如果一个数据包进入系统,并且目的地在192.168.1.0到192.168.1.255范围内,则它将转发到网关*,它是0.0.0.0 —一个特殊的地址,表示无效或不存在的目的地。因此,在这种情况下,我们的系统将不会路由这些数据包。
如果目的地不在此IP地址范围内,则将其转发到默认网关(在本例中为192.168.1.2),该系统将确定如何将流量转发到目的地。
查看英文版
route 语法
route [-CFvnee]
route [-v] [-A family] add [-net|-host] target [netmask Nm] [gw Gw] [metric N] i [mss M] [window W] [irtt m] [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]
技术说明
route操作内核的IP路由表。它的主要用途是在使用ifconfig程序配置接口后,通过接口设置到特定主机或网络的静态 路由。
使用add或del选项时,route修改路由表。如果没有这些选项,route将显示路由表的当前内容。
选件
-A family | 使用指定的地址族(例如“ inet ”;使用“ route --help ”获得完整列表)。 |
-F | 在内核的FIB(转发信息库)路由表上运行。这是默认值。 |
-C | 在内核的路由缓存上运行。 |
-v | 选择详细操作。 |
-n | 显示数字地址,而不是尝试确定符号主机名。如果您要确定到名称服务器的路由消失的原因,这很有用。 |
-e | 使用netstat -format显示路由表。-ee将使用路由表中的所有参数生成很长的一行。 |
del | 删除路线。 |
add | 添加新路线。 |
target | 目标网络或主机。您可以用点分十进制或主机/网络名称提供IP地址。 |
-net | 目标是网络。 |
-host | 目标是主机。 |
netmask NM | 添加网络路由时,要使用的网络掩码。 |
gw GW | 通过网关路由数据包。注意:必须首先可以访问指定的网关。这通常意味着您必须事先设置到网关的静态路由。如果您指定本地 接口之一的地址,它将用于确定数据包应路由到的接口。这是BSD风格的兼容性技巧。 |
metric M | 在路由表中的度量字段(由路由用于设置守护程序),以中号。 |
MSS M | 将通过此路由的连接的TCP最大段大小(MSS)设置为M个字节。缺省值为设备MTU减去标题,或在发生路径mtu发现时使用较低的MTU。当路径mtu发现不起作用时(通常是由于配置错误的防火墙阻止了所需的ICMP碎片),此设置可用于在另一端强制使用较小的TCP数据包。 |
window W | 将通过此路由的连接的TCP窗口大小设置为W 个字节。仅在AX.25网络上使用,并且驱动程序无法处理背靠背帧。 |
irtt m | 设置初始往返时间(irtt TCP连接)在此路由,米 毫秒(1 - 12000)。仅在AX.25网络上使用。如果省略,则使用RFC 1122默认值300ms。 |
reject | 安装阻塞路由,这将强制路由查找失败。例如,这用于在使用默认路由之前屏蔽网络。这不是用于防火墙。 |
mod,dyn,reinstate | 安装动态或修改后的路线。这些标志用于诊断目的,通常仅由路由守护程序设置。 |
dev If |
强制将路由与指定设备相关联,否则内核将尝试自行确定设备(通过检查现有路由和设备规格以及添加路由的位置)。在大多数普通网络中,您将不需要此功能。 如果dev If是命令行上的最后一个选项,则可以省略单词dev,因为它是默认值。否则,路由修饰符(metric - netmask - gw - dev)的顺序无关紧要。 |
查看英文版
route 例子
route -n
显示绑定到服务器的所有IP的路由表。
route add -net 192.56.76.0 netmask 255.255.255.0 dev eth0
通过“ eth0”添加到网络192.56.76.x的路由这里实际上并不需要C类网络掩码修饰符,因为> 192. *是C类IP地址。这里可以省略单词“ dev ”。
route add -net 224.0.0.0 netmask 240.0.0.0 dev eth0
此命令将所有D类(多播)IP路由都设置为通过“ eth0 ”。这是多播内核的正确常规配置。
查看英文版