Linux下使用不带任何参数的route命令将显示真个路由表,输出可能如下:
Kernel IP routing table
Destination Gateway Genmask Flage Metric Ref Use Iface
192.168.100.0 * 255.255.255.0 U 0 0 0 etn0
127.0.0.0 * 255.255.255.0 U 0 0 0 l0
default 192.168.100.5 0.0.0.0 UG 0 0 0 eth0
在这台主机上的输出由三行组成(在表头行以下):
第一行说明将通向192.168.100.0(同eth0设备相关联的网络)的网络流量发往何处。
第二行说明将通向127.0.0.1(localhost或自环网络设备地址)的网络流量发往何处。
第三行说明将上面两种以外的数据发往何处;因为系统并不知道怎样抵达这些数据包的发送地址,所以这些数据包必须经过网关。
再看一下route命令输出的各列:
Destination:路由表条目使用的网络范围。如果一个IP数据包的目的地址是route输出中某一行的网络的某个部分,那么将会使用这个条目来路由这个数据包。
Gateway:指的是一台主机,接受发给指定Destination的数据包。因为这个输出是发自一台主机的(而不是一个作为专门路由器的计算机的),所以路由字段可以是星号(*)或是默认网关;星号表示Destination是在主机所属的网络(因此不需要路由),默认网关指的是将所有非本地的流量都发送到的一个指定IP。
Flags:9个单字母的标志位,表示路由表条目的信息。U表示路由启动;G表示路由指向网关、大多数其他标志(都可以通过输入manroute在route命令的在线帮助手册中找到)只用于专门的路由器,而不是一台单机,表示路由是如何通过路由守护进程来创建和更新。
Metric:到达指定网络所需的中转数(路由器的数目),在Linux内核中没有用。
Ref:对这个路由的引用次数,在Linux内核中没有用。
Use:这个路由器被路由软件查寻的次数,可以粗略估计通向指定网络地址的网络流量。
Iface:表示目的地址,指定网络的数据包应该发往哪个网络借口。