1. 路由的应用场景
- 使用场景:当不同网段需要互相通信时,必须添加路由规则以实现数据包的正确转发。
2. 路由的分类
2.1 按路由目的地划分
- 网段路由:
- 目标是一个网段。
- IPv4:子网掩码长度小于32位。
- IPv6:前缀长度小于128位。
- 主机路由:
- 目标是一个具体主机。
- IPv4:子网掩码长度为32位。
- IPv6:前缀长度为128位。
2.2 按目的地与路由器的连接方式划分
- 直连路由:目标网络与路由器直接相连。
- 间接路由:目标网络与路由器非直接相连,需要通过其他路由器转发。
2.3 按目的地址类型划分
- 单播路由:目标地址是单播地址。
- 组播路由:目标地址是组播地址。
3. IP路由表
3.1 作用
3.2 路由表的内容
- 字段说明:
- 目的IP地址:目标网络或主机地址。
- 子网掩码:确定网络范围。
- 出接口:流量从路由器的哪个接口发送。
- 下一跳:下一台路由设备的IP地址。
- 优先级:决定多路径情况下的首选路径。
- 开销:衡量路径的代价,用于控制次优路径。
- 类型:指示路由来源(例如静态路由或动态路由)。
- Flags:描述路由的状态或属性。
3.3 下一跳与出接口的关系
- 为什么需要下一跳?
- 即使知道出接口,接口出去后可能有多个设备,需要通过下一跳地址确定目标设备。
- 是否可以只有下一跳而没有出接口?
3.4 其他字段的作用
- 优先级:控制路径的选择,优先级越高,路径越优先。
- 开销:同一类型路由条目中,用于区分次优路径。
- 类型:不同类型的路由条目具有不同优先级。
- Flags:决定是否将路由下放到FIB表。
4.1 作用
4.2 FIB表的内容
- 字段说明:
- IP地址:目标地址。
- 子网掩码:目标地址的范围。
- 下一跳:指向目标地址的下一台路由设备。
- 出接口:流量出口。
- 时间戳:记录表项的创建或更新时间。
- Tunnel-ID:隧道标识(如适用)。
- Flag:转发状态标识。
5. Flags字段的作用与区别
5.1 IP路由表中的Flags字段
- 作用:
- 描述路由是否需要下放到FIB表。
- 静态路由中,标识是否为本机网段(直连)。
- 静态路由的特殊性:
- 静态路由由管理员手动添加,路由器不能自动判断是否为本设备直连网段,因此需要Flags字段标记。
- 静态路由通常指向非直连网段。
5.2 FIB表中的Flag字段
- 作用:
描述转发信息的基本状态,包括:
- G:网关路由(Gateway Route)。
- H:主机路由(Host Route)。
- U:有效路由(Up Route)。
- S:静态路由(Static Route)。
- D:动态路由(Dynamic Route)。
- B:黑洞路由(Black Hole Route)。
- L:虚拟链路路由(Vlink Route)。
6. 关键问题总结
为什么IP路由表既记录出接口又记录下一跳?
- 出接口只是物理出口,下一跳指向具体目标,确保数据包精准送达。
Flags字段的R标记位是否仅用于静态路由?
- 是的,动态路由不需要R标记位,因为动态路由自动记录非直连路由。
- 静态路由需要R标记位帮助路由器判断是否为本设备的非直连网段。
IP路由表中的Flags字段与FIB表中的Flag字段区别
- IP路由表中的Flags字段:描述路由是否需要下放到FIB,或是否为本机网段。
- FIB表中的Flag字段:描述转发路径的状态和属性,例如路由类型(静态、动态、黑洞等)。