ip route
命令用于查看 Linux 系统中的路由表信息。
路由表包含的主要信息
- 目标网络地址(Destination)
- 显示网络的目标地址,可以是一个具体的网络地址(如
192.168.1.0/24
),也可以是一个默认网络(通常表示为0.0.0.0/0
,代表所有未匹配其他路由规则的目标地址)。
- 显示网络的目标地址,可以是一个具体的网络地址(如
- 网关(Gateway)
- 如果目标网络不是本地网络,网关是数据包要转发到的下一跳路由器的 IP 地址。对于本地网络的通信,网关通常为本地网络接口的 IP 地址或者显示为
0.0.0.0
,表示不需要经过网关直接在本地网络内传输。
- 如果目标网络不是本地网络,网关是数据包要转发到的下一跳路由器的 IP 地址。对于本地网络的通信,网关通常为本地网络接口的 IP 地址或者显示为
- 子网掩码(Genmask)
- 用于确定目标网络地址的范围,与目标网络地址配合使用来界定一个网络。例如,
255.255.255.0
是192.168.1.0/24
网络的子网掩码。
- 用于确定目标网络地址的范围,与目标网络地址配合使用来界定一个网络。例如,
- 标志(Flags)
- 包含一些标识路由条目的特征信息,常见的标志有:
U
(Up):表示路由是启用的。G
(Gateway):表示该路由需要通过网关转发。H
(Host):表示目标是一个主机地址,而不是一个网络地址。D
(Dynamic):表示该路由是动态获取的(例如通过动态路由协议),而不是静态配置的。
- 包含一些标识路由条目的特征信息,常见的标志有:
- 接口(Iface)
- 表示数据包要从哪个本地网络接口发送出去,如
eth0
、wlan0
等。
- 表示数据包要从哪个本地网络接口发送出去,如
作用示例
- 通过查看路由表,可以了解到系统如何决定数据包的转发路径,有助于排查网络连接问题。
- 例如,如果一个系统无法访问某个外部网络,查看路由表可以确定是否存在正确的默认网关配置。如果没有默认网关或者网关配置错误,数据包将无法正确转发到外部网络。
- 对于多网卡的系统,还可以查看每个网络接口对应的路由信息,了解网络流量在不同接口之间的分配和转发情况。