外观
面对成千上万条网络路径,路由器怎么选出最佳出接口?
阶段 3 · 网络层 · 第 17 课
在第 16 课中,我们看到 IP 报文头部写着目标 IP。当这个数据包抵达一台企业核心路由器时,路由器可能同时插着 8 根光纤,分别通往北京总部、上海分公司、云数据中心以及运营商互联网。
面对成千上万个目的网络,路由器到底根据什么来决定“这个包走 1 号口,那个包走 2 号口”?如果路由表里同时有两条甚至多条路由都能通往目标,路由器会陷入选择困难症吗?
学完本课后,你将能够:
- 解释默认网关(Default Gateway)的本质,以及主机在什么时候必须把包交给网关。
- 读懂华为路由器
display ip routing-table的 6 个关键列:目的网络/掩码、协议类型、优先级、开销、下一跳(Next Hop)、出接口。 - 熟练运用路由查找终极法则——最长前缀匹配(LPM)(LPM,Longest Prefix Match),精准推导出路由器选中的唯一最优路径。
1. 终端跨网第一步:什么是默认网关?
当你在自己的笔记本电脑(IP 为 192.168.1.10/24)上试图访问百度的服务器(IP 为 180.101.50.242)时,你的电脑做了两件事:
- 子网掩码计算:电脑拿自己的掩码
/24一算,发现180.101.50.242和自己根本不在同一个网段! - 托付给“村口大爷”:既然在本地局域网里找不到目标,电脑就必须把这个包托付给一个懂得如何通往外部世界的人——这个人就是配置在你网卡属性里的 默认网关(Default Gateway,默认网关)。
- 默认网关通常是连接本局域网的路由器本地接口的 IP 地址(例如
192.168.1.1或192.168.1.254)。 - 电脑通过 ARP 解析出网关的 MAC 地址,把以太网帧的目的 MAC 填成网关的 MAC,把包送出局域网。
- 默认网关通常是连接本局域网的路由器本地接口的 IP 地址(例如
2. 路由器的导航地图:路由表六大字段
数据包进了路由器后,路由器抬起头查阅内存中的 路由表(IP Routing Table)。
在华为 VRP 路由器上输入 display ip routing-table,你会看到一张清晰的表格:
text
<Huawei> display ip routing-table
Routing Tables: Public
Destinations : 5 Routes : 5
Destination/Mask Proto Pre Cost NextHop Interface
0.0.0.0/0 Static 60 0 198.51.100.1 GigabitEthernet0/0/1
10.0.0.0/8 OSPF 10 20 10.1.1.2 GigabitEthernet0/0/2
192.168.1.0/24 Direct 0 0 192.168.1.254 GigabitEthernet0/0/3
192.168.1.254/32 Direct 0 0 127.0.0.1 InLoopBack0请逐一牢记这 6 个关键列的含义:
| 路由表字段 | 全称与中文 | 含义解释 | 考点与工程精髓 |
|---|---|---|---|
| Destination/Mask | 目的网络 / 掩码 | 该路由能够送达的目标 IP 范围 | 配合掩码长度做匹配判断(如 /0、/8、/24、/32) |
| Proto | Protocol 协议来源 | 这条路由是怎么被路由器发现并写入的? | Direct(物理接口直连配置自动生成);Static(管理员手工静态配置);OSPF / IS-IS / BGP(动态路由协议自动计算学习) |
| Pre | Preference 协议优先级 | 当不同协议算出了到达完全相同网段的路由时,听谁的? | 数值越小越优先! 华为 VRP 体系:直连 0 > OSPF 内部 10 > IS-IS 15 > 静态 60 > RIP 100 > OSPF 外部 150 > BGP 255 |
| Cost | 路径开销(Metric 度量值) | 同一种路由协议内部,到达目标的距离或代价(与带宽反比) | 相同协议下比较:Cost 越小越优;Cost 相同时实现等价多路径负载分担(ECMP) |
| NextHop | 下一跳(Next Hop) | 数据包下一站应该交给哪个相邻设备的接口 IP | 跨网络转发时数据逐跳递交的下一个负责人 |
| Interface | 出接口 | 数据包应该从本路由器的哪个物理接口发出去 | 决定物理信号输出的端口(如 GE0/0/1) |
3. 查表终极法则:最长前缀匹配(LPM)
这是整个网络层最核心的查表逻辑!
如上图所示,当路由器收到一个目标 IP 为 192.168.1.100 的数据包时,路由器拿这个 IP 去比对路由表里的每一条条目,发现有三条路由居然全都能匹配上:
0.0.0.0/0(默认路由):掩码长度为 0,匹配全球任意 IP,能匹配;192.168.0.0/16:前 16 位匹配,能匹配;192.168.1.0/24:前 24 位匹配,能匹配!
此时路由器会执行 最长前缀匹配(LPM)(LPM,Longest Prefix Match)原则:
核心铁律:只要能匹配上,子网掩码越长(即前缀数值 /N 越大),代表网段划分越精细、路径越精确!路由器无条件优先选择掩码最长的那条路由!
因此:
/24的掩码长度(24)大于/16(16),更远远大于默认路由/0(0)。- 路由器毫不犹豫地胜出选择
192.168.1.0/24对应的出接口,把数据包转发出去! - 默认路由
0.0.0.0/0(掩码长度为 0):只有在整个路由表中翻遍了所有精细路由、全都不匹配时,才作为最后的“保底接盘侠”被采用。
4. 小结与下一步
- 默认网关:终端主机跨网段通信时的本地出口,主机将帧发给网关的 MAC 地址代为中转。
- 协议优先级:不同协议撞车比 Pre(直连 0 > OSPF 10 > 静态 60 > BGP 255,越小越优)。
- 最长前缀匹配:路由查找核心依据,掩码最长(/N 最大)者最终胜出。
路由器查出最佳出接口和下一跳后,在把包推上网线的那一刹那,以太网帧头里的源 MAC 和目的 MAC 会发生什么变化?IP 报文里的 TTL 会怎样? 下一课我们做一次端到端的全链路逐跳转发实战追踪。