路由 (Routing)
核心思想:路径选择
- 是什么? 路由是指数据包从源主机传输到目标主机的整个过程。这个过程就像寄快递:你需要决定包裹经过哪些中转站才能最终到达收件人手里。 
- 做什么? 网络中的设备(主要是路由器)会根据一张“地图”(路由表)来决定把数据包从哪个端口发送出去,才能让它更接近目的地。 
- 比喻: 城市交通系统中的路口和路标。每个路口(路由器)根据路标(路由表)决定车辆(数据包)该往哪条路走。 
下一跳 (Next Hop)
核心思想:下一个中转站
- 是什么? 这是路由表中最关键的一个字段。它指明了数据包在通往最终目的地的路上,下一个应该被发送到的、直接相连的路由器的IP地址。 
- 为什么需要? 路由器不需要知道到达最终目的地的完整路径,它只需要知道“下一个”该把包交给谁就行了。下一跳路由器收到后,也会查自己的路由表,决定再下一个跳点,如此反复,直到到达目的地。 
- 比喻: 寄快递时,你所在城市的快递分发中心。你不需要知道包裹去上海的具体路线,你只需要把包裹交给本地的快递点(下一跳),他们负责把它运到下一个更大的中转中心(下一个下一跳)。 
在上面的路由表示例中:
- 要发送数据到 - 10.1.1.5,本路由器会查看路由表,匹配到- 10.1.1.0/24这条记录,然后就知道该把数据包发给- 192.168.1.100这个地址(下一跳),并从- Eth0端口发出
网关 (Gateway)
核心思想:网络的“出口”或“大门”
- 是什么? 一个网络通向其他网络的出口点。通常就是一个路由器的接口IP地址。和ip同一网段 
- 做什么? 当一台计算机(如你的PC)想要和其他网段(比如互联网)的机器通信时,它会把所有数据包都发送给网关(也就是你电脑上配置的“默认网关”地址),由这个网关路由器负责转发。 
- 和下一跳的关系: 网关通常就是计算机的“下一跳”。对你的电脑来说,网关就是它通往外部世界的唯一“下一跳”路由器。 
- 比喻: 你家小区的大门。你想去小区外的任何地方,都必须先走到大门口,然后才能出去。 
两个不同网段的ip如何通过路由器互通
在你的电脑上,通过 ipconfig (Windows) 或 ifconfig (Linux/macOS) 命令看到的 “默认网关” 就是你电脑的网关地址。
两个不同网段的ip如何通过路由器互通

具体操作
在r1中添加 pc1的网关
选择接口 int e 0/0/0
路由器设置ip    ip address 192.168.1.2 24  #192.168.1.2为pc1的网关 24为子网掩码为24为也可以写成255.255.255.0
 显示路由表       display ip routing-table
同理添加pc2
pc1即可ping pc2
具体的例子来一步步拆解过程:
- 设备: 两台电脑(PC1 和 PC2),一台路由器(R1) 
- 网络: - PC1: - 192.168.1.10/24,网关设置为- 192.168.1.1
- PC2: - 192.168.2.20/24,网关设置为- 192.168.2.1
- 路由器 R1: 有两个接口,就像是两个门。 - 门1 (Eth0): - 192.168.1.1/24(连接- 192.168.1.0/24网段)
- 门2 (Eth1): - 192.168.2.1/24(连接- 192.168.2.0/24网段)
 
 
现在,PC1 (192.168.1.10) 想要 Ping 通 PC2 (192.168.2.20)。
互通的核心条件
在通信开始前,必须确保以下基础配置正确,这是互通的前提:
- 物理连接: PC1 和 R1的Eth0口在同一个局域网(比如连到同一个交换机);PC2 和 R1的Eth1口在另一个局域网。 
- IP地址配置: 所有设备的IP地址、子网掩码配置正确。 
- 网关设置: 最关键的一步。PC1的默认网关必须指向R1的Eth0口 ( - 192.168.1.1),PC2的默认网关必须指向R1的Eth1口 (- 192.168.2.1)。这相当于告诉PC们:“如果你要出门,就把包裹交给这个地址”。
通信的详细过程(五步曲)
整个过程可以分解为以下几个步骤:
192.168.1.10给192.168.2.20发送数据,先判断是否同一网段,不是同一网段打包数据向网关地址发送出去到达路由器(该路由器已把网关设置为ip),路由器接收后查询转发到192.168.2.20,192.168.2.20接受后回复,192.168.1.10收到回复。
第1步:PC1 判断目标在哪
PC1 想要发送数据包给 192.168.2.20。
- PC1 用自己的子网掩码 ( - 255.255.255.0) 计算自己和目标 (- 192.168.2.20) 是否在同一个网段。
- 计算后发现: - 192.168.1.0≠- 192.168.2.0,结论是 “目标不在我家这个小区”。
- PC1 决定:“这个包得交给网关(路由器)来处理”。 
第2步:PC1 封装并发送数据包
- PC1 开始封装数据包(以Ping包为例): - 目标IP地址 (Destination IP): - 192.168.2.20(最终收件人)
- 源IP地址 (Source IP): - 192.168.1.10(最终发件人)
- 目标MAC地址 (Destination MAC): 这是一个关键! 因为要发给网关,所以PC1需要知道网关 - 192.168.1.1的MAC地址。
 
- PC1 查看自己的 ARP 缓存表,看有没有 - 192.168.1.1对应的MAC地址。- 如果有,直接使用。 
- 如果没有,PC1 会发送一个 ARP 广播请求:“谁是 - 192.168.1.1?请告诉我你的MAC地址”。路由器R1的Eth0口会回应自己的MAC地址(例如- AA:AA:AA:AA:AA:AA)。
 
- PC1 将数据包封装好,其中目标MAC地址填的是网关 - 192.168.1.1的MAC地址,然后通过网卡发送出去。
此时的数据包状态:
| 字段 | 内容 | 
|---|---|
| 目标MAC | AA:AA:AA:AA:AA:AA(R1 Eth0 的MAC) | 
| 源MAC | PC1的MAC地址 | 
| 目标IP | 192.168.2.20(PC2) | 
| 源IP | 192.168.1.10(PC1) | 
| 数据 | (Ping请求数据) | 
第3步:路由器R1 接收、查询并转发
- 接收: 路由器R1的Eth0口收到了这个数据包。它一看目标MAC地址是自己,于是就收下这个包,解开数据链路层的封装。 
- 查询路由表: R1 查看数据包的目标IP地址 ( - 192.168.2.20),然后查询自己的路由表。- R1的路由表里通常有一条直连路由: - 192.168.2.0/24直接连接在 Eth1 口上。
- R1 决定:“这个包要从我的Eth1口发出去,而且目标就在那个网段,可以直接交付,不需要再指定下一跳。” 
 
- 重新封装: R1 准备将数据包从Eth1口转发出去。它需要重新封装数据链路层的帧: - 目标MAC地址: R1 需要知道 - 192.168.2.20(PC2) 的MAC地址。R1 会查看自己的ARP缓存表,如果没有,也会在- 192.168.2.0/24网段发起ARP请求。PC2会回应自己的MAC地址(例如- BB:BB:BB:BB:BB:BB)。
- 源MAC地址: 替换为R1的Eth1口的MAC地址(例如 - CC:CC:CC:CC:CC:CC)。
- IP地址层完全不变! 目标IP仍是 - 192.168.2.20,源IP仍是- 192.168.1.10。
 
此时的数据包状态 (在R1的Eth1口发出时):
| 字段 | 内容 | 
|---|---|
| 目标MAC | BB:BB:BB:BB:BB:BB(PC2 的MAC) | 
| 源MAC | CC:CC:CC:CC:CC:CC(R1 Eth1 的MAC) | 
| 目标IP | 192.168.2.20(PC2) | 
| 源IP | 192.168.1.10(PC1) | 
| 数据 | (Ping请求数据) | 
第4步:PC2 接收并回复
- PC2 收到数据包,发现目标MAC地址是自己,目标IP地址也是自己,于是收下包。 
- PC2 处理这个Ping请求,并准备发送一个Ping回复包给 - 192.168.1.10。
- 回复过程重复上述步骤: - PC2 判断 - 192.168.1.10不在本地网段。
- PC2 将回复包发给自己的网关 - 192.168.2.1(R1的Eth1口),目标MAC地址填R1 Eth1的MAC (- CC:CC:CC:CC:CC:CC)。
- 路由器R1收到后,查询路由表,发现去往 - 192.168.1.10要走Eth0口。
- R1 将回复包重新封装,目标MAC地址改为PC1的MAC地址,从Eth0口发回给PC1。 
 
第5步:PC1 收到回复,互通完成
PC1 收到来自PC2的回复,一次完整的跨网段通信就完成了。
总结与关键点
- 路由器是核心: 路由器是连接不同网段的桥梁,其每个接口都属于一个不同的网段。 
- 网关是关键: 主机必须正确配置网关地址,否则它无法将去往外网的数据包送达到路由器。 
- MAC地址在变,IP地址不变: - MAC地址是段内通行证,只在同一个局域网内有效。每经过一个网段(一跳),源和目标MAC地址都会被重写。 
- IP地址是全程通行证,从源到目标始终保持不变,它决定了数据的最终目的地。 
 
- 路由表是决策依据: 路由器根据内部的路由表决定数据包该从哪个接口发出去。 
你可以把路由器想象成一个邮局分拣中心。PC1把收件人是PC2的包裹(数据包)寄到本地邮局(网关),分拣中心(路由器)根据地址(路由表)决定把它分到开往PC2所在区域的卡车上(从另一个接口发出),最后由当地邮递员(目标网段的ARP/MAC)送达PC2手中。