IP路由基础

本文详细介绍了路由器如何根据路由表转发IP数据包,涉及FIB和RIB的区别、最长匹配原则,以及动态路由协议如OSPF、静态路由和直连路由的作用。特别关注了动态路由协议IGP和EGP,以及路由迭代的过程。

目录

路由表的转发

路由器获取路由

IP路由概述

RIB与FIB

IP路由查找的最长匹配原则

动态路由协议

路由迭代


路由表的转发

        当路由器收到一个IP数据包,路由器会根据数据包的目的IP地址查找FIBForwarding Information Base,转发信息库表,找到“最匹配”的路由条目后,将数据包根据路由条目所指示的出接口或下一跳转发出去。

路由器获取路由

        方式有三种,分别是动态路由(例如OSPF)、静态路由、直连路由。

                直连路由:设备自动生成指向本地直连网络的路由

                静态路由:网络管理员手工配置的路由(你自己手动添加的)

                动态路由:路由器运行动态路由协议学习到的路由

IP路由概述

         路由器收到一个IP报文时,路由器根据该IP报文的目的地址匹配路由条目(或路由表项)。

                1.若匹配的路由条目,则依据该条目中的出接口或下一跳等信息进行报文转发

                2.若无匹配的路由条目,则路由器没有相关路由信息用于指导报文转发,此时会丢弃该报文。

RIBFIB

        具有路由功能的网络设备都维护两种重要的数据表:一是路由表RIBRouting Information Base,路由信息库,控制层面);二是转发表FIB(数据层面)。每个路由器都有路由表,而路由表又分为本地核心路由表和协议路由表(本地核心路由表中的最优路由,是依据各种路由协议的优先级和度量值来选取的)。

        路由器维护一张本地核心路由表,此外路由器还维护着路由协议各自的路由表。

        路由器将本地核心路由表中的最优路由下载到FIB。路由器转发芯片根据FIB表转发报文。、

IP路由查找的最长匹配原则

        路由器查找FIB表时,将报文的目的IP地址和FIB表中各表项的掩码进行按位“逻辑与”,得到的地址符合FIB表中的网络地址则匹配。最终选择一个掩码最长的FIB表项转发报文。

动态路由协议

        动态路由协议根据作用范围不同,可分为:

                1.内部网关协议IGP(Interior Gateway Protocol):在一个自治系统内部运行。常见的IGP协议包括OSPFIS-IS

                2.外部网关协议EGP(Exterior Gateway Protocol):运行于不同自治系统之间。BGP是目前最常用的EGP协议。(BGP在后面马上就会讲到)

路由迭代

        路由必须有直连的下一跳才能够指导转发,静态路由或BGP路由的下一跳可能不是直连的邻居,因此需要计算出一个直连的下一跳,这个过程就叫做路由迭代。

路由引入到后面的实验的时候再说,到时候给你们配图,欧克,完事

 

### IP路由基础知识 IP路由是指在互联网协议(IP网络中,数据包如何从源地址传输到目标地址的过程。这一过程依赖于路由器及其内部维护的路由表来完成。以下是关于IP路由的一些核心概念: #### 1. 路由的概念 路由网络层的核心功能之一,它决定了数据包在网络中的传递路径。路由器作为网络互联的关键设备,在接收到数据包后会根据其目的地IP地址查找路由表,并决定下一跳的转发方向[^1]。 #### 2. 路由表的作用 路由表存储了指向特定网络地址的路径信息,这些信息通常包括目的网络、子网掩码、下一跳地址以及接口等字段。路由器依据路由表中的最优条目进行数据包转发,从而实现高效的流量管理[^4]。 #### 3. 路由信息的获取方式 为了建立完整的路由表,路由器可以通过多种方式进行路由信息的学习: - **直连路由**:当两台设备通过物理链路直接相连时,路由器能够自动识别并记录相应的路由信息。 - **静态路由**:管理员手动配置固定的路由条目,适用于小型或简单拓扑结构下的网络环境。 - **动态路由协议**:利用OSPF、RIP等协议让路由器之间交换彼此掌握的路由信息,进而自动生成更新后的路由表[^2]。 #### 4. 特殊类型的路由 除了常规的精确匹配外,还有几种特殊的路由形式值得关注: - **默认路由/缺省路由**:用于处理未明确指定的目的地情况,默认情况下将所有未知流量导向某个固定出口。 - **浮动路由**:提供一种备用方案,在主线路发生故障时启用替代路径继续维持连接性。 #### 5. 数据转发机制 每台参与转发操作的路由器都需要具备针对源与目标IP均有效的可达性判断条件;只有这样才能够保障整个端到端通讯顺利完成。此外,“全网通”状态意味着所有中间节点都需知晓通往任意非本地所属区域的具体方法论集合[^3]。 ```python # 示例代码展示简单的路由决策逻辑模拟 def route_decision(destination_ip, routing_table): best_match = None longest_prefix_length = 0 for entry in routing_table: network_address, prefix_len, next_hop = entry if (destination_ip & ((1 << prefix_len) - 1)) == \ (network_address & ((1 << prefix_len) - 1)): if prefix_len > longest_prefix_length: longest_prefix_length = prefix_len best_match = next_hop return best_match or 'Default Gateway' routing_table = [ ('192.168.1.0', 24, '192.168.1.1'), ('172.16.0.0', 16, '172.16.0.1') ] print(route_decision('192.168.1.100', routing_table)) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值