在计算机网络中,路由器是负责转发网络流量的设备,当数据报到达路由器时,路由器必须确定将其路由到目的地的最佳方法,route命令用于查看和更改内核路由表,在不同的系统上,命令语法不同,所以实际时可以查看命令的帮助来确定具体使用方法。
(none): 查看当前所有路由定义。-A family: 使用指定的地址族,可以使用route --help查询支持的地址族,通常支持的地址族有inet (DARPA Internet)、inet6 (IPv6)、ax25 (AMPR AX.25)、netrom (AMPR NET/ROM)、ipx (Novell IPX)、ddp (Appletalk DDP)、x25 (CCITT X.25)。-F: 对内核的FIB转发信息库路由表进行操作,这是默认值。-C: 操作内核的路由缓存。-v: 输出详细操作。-n: 显示数字地址,而不是尝试确定符号主机名,如果要确定到名称服务器的路由消失的原因,这将很有用。-e: 使用netstat格式显示路由表,-ee将使用路由表中的所有参数生成很长的一行。del: 删除路由。add: 添加路由。target: 目标网络或主机,可以用点分十进制或主机/网络名称提供IP地址。-net: 添加的目标是一个网络。-host: 添加的目标是一个主机。netmask NM: 添加网络路由时,要使用的网络掩码。gw GW: 通过网关路由数据包,必须首先可以访问指定的网关,这通常意味着必须事先设置到网关的静态路由,如果您指定本地接口之一的地址,它将用于确定数据包应路由到的接口。metric M: 将路由表(由路由守护程序使用)中的度量字段设置为M。mss M: 将通过此路由的连接的TCP最大段大小MSS设置为M个字节,缺省值为设备MTU减去标题,或在发生路径mtu发现时使用较低的MTU,当路径mtu发现不起作用时(通常是由于配置错误的防火墙阻止了所需的ICMP碎片),此设置可用于在另一端强制使用较小的TCP数据包。window W: 将通过此路由的连接的TCP窗口大小设置为W字节,仅在AX.25网络上使用,并且驱动程序无法处理背靠背帧。irtt m: 将通过此路由的TCP连接的初始往返时间irtt设置为m毫秒1-12000,仅在AX.25网络上使用,如果省略,则使用RFC 1122默认值300ms。reject: 安装阻塞路由,这将强制路由查找失败,这可以用于在使用默认路由之前屏蔽网络,此外要注意这不是用于防火墙。mod, dyn, reinstate: 安装动态或修改后的路线,这些标志用于诊断目的,通常仅由路由守护程序设置。dev If: 强制将路由与指定设备相关联,否则内核将尝试自行确定设备(通过检查现有路由和设备规格以及添加路由的位置),在大多数普通网络中,基本不需要此功能。如果dev If是命令行上的最后一个选项,则可以省略单词dev,因为它是默认值,否则路由修饰符的顺序metric - netmask - gw - dev无关紧要。-h, --help: 输出帮助信息。显示绑定到服务器的所有IP的路由表。
添加默认网关,这将分配一个网关地址,所有不属于此网络的数据包都将在该网关地址上转发。
列出内核的路由缓存信息,为了更快地路由数据包,内核保留了路由缓存信息。
拒绝路由到特定主机或网络。
删除默认网关,这可能会导致某些互联网故障,所以在继续执行该命令之前,请记下默认网关。
当我们连接PPTP后,通常我们会配置将一个网段添加路由,来指定数据报通过ppp0。
配置将一个域名添加路由,来指定数据报通过ppp0。
将所有D类多播IP路由都设置为通过eth0。