📄 一句话概括
路由器转发出口侧与主机发包完全同构:查表定下一跳、ARP 找 MAC、写新 MAC 头、TTL 减一后交网卡——所以路由器就是一台特殊计算机。
📝 本节和前面几节的关系
3.3.7 处理了尺寸;本篇走完出口侧,与第二章主机发包工单闭环。
一、同构的四步
① 查表定下一跳;② ARP 查下一跳 MAC; ③ 写新 MAC 头(源=出口网卡);④ TTL 减一,交网卡。
二、结论
路由器内部的协议栈与主机同源—— 【路由器=一台有多个网口的计算机】是理解它的最短路径。
三、动手 Demo:路由器发包和电脑一样
出口侧四步:
for s in ['1. 查表定出口(同 2.5.2 的工单)',
'2. 找下一跳 IP -> ARP 查它的 MAC',
'3. 写新 MAC 头(源=本路由器出口)',
'4. TTL 减一后交网卡发出']:
print(s)
实跑输出:
--------------------------------------------------------------------
路由器发包和电脑一样
--------------------------------------------------------------------
路由器转发时的动作,和一台主机发包姿势相同:
1. 查表定出口(本机 2.5.2 的工单)
2. 找下一跳 IP -> ARP 查它的 MAC
3. 写新 MAC 头(源=本路由器出口,目的=下一跳)
4. TTL 减一后交网卡发出
所以【路由器就是一种特殊的计算机】——
它内部的协议栈与主机同源。
这也解释了为什么【路由器也能当主机用】—— ping 路由器、登录它管理,走的都是同一套栈。
30 秒实验
- ping 自家网关,确认路由器本身就是一个 IP 主机。
- 想想防火墙(包过滤)插在这四步的哪一步。
- 对照 2.5.2 工单,标出两处不同(多了 TTL 减一)。
常见误区
- 以为路由器转发有独门算法——出口侧照搬主机流程。
- 以为路由器不能有 IP——它每口都有。
自测三问(点开对答案)
1. 路由器出口侧四步是什么? —— 查表、ARP、写 MAC 头、TTL 减一发出。 2. 为什么说路由器是特殊计算机? —— 协议栈与主机同源。 3. 与主机发包的差异在哪? —— 多一步 TTL 减一。- ☐ 下一节(3.3.9 路由器与交换机的关系)
相关笔记
- 包收发操作概览 — 主机工单
- 路由器与交换机的关系 — 本章收束
- 🔌 网络是怎样连接的 · 索引