问题
当网络规模主键变大的时候, 使用什么样的技术, 可以让网络更好地通?
随着企业的发展, 网络的规模越来越大, 网段的数量越来越多, 公司内部的路由器的数量越来越多.
为了实现不同网络之间的互通, 需要在路由器上配置大量的路由条目, 工作量庞大并且随着网络扩展, 后期管理难度增大.
为了实现不同网段之间的互通, 需要在每个路由器上配置新增加的网段.
如果新添加的网段数量很多, 同时路由器的数量也很多, 就需要对每个路由器进行路由配置, 工作量非常庞大.
如果向删除某个网段, 也同样需要在所有路由器上一个一个地删除, 工作量也非常庞大.
解决方案
在路由器之间允许 ‘动态路由协议‘, 让路由器之间自动学习和分享彼此地路由表信息, 每个路由器都独立地计算出一个去往目标网段地最好路由.
动态路由协议的特点:
- 减少了后期网络管理任务, 避免了人为的配置错误.
- 在设备之间传输路由, 会占用少量的网络带宽.
动态路由协议的类型:
- 内部网关协议(IGP): 在同一公司内部运行的路由协议, 如RIP, ISIS, OSPF
- 其中,最热门的技术是ISIS和OSPF这一类中的OSPF
- OSPF 在有点规模的企业网内部常用.
- ISIS 在大型的数据中心, 运营商常用.
- RIP如今已接近淘汰, (华为不考了). RIP(路由信息协议)作为一种广泛使用的路由协议,虽然具有简单易用和便于维护等优点,但也存在一些明显的缺点:
- 网络规模受限:RIP协议对网络规模有严格的限制,它只能支持最多15跳的路由路径,这意味着在大型网络中,RIP可能无法满足需求。
- 收敛速度较慢:RIP路由表的更新速度较慢,对于动态变化的网络环境可能无法快速响应。
- 安全性能较差:RIP协议本身存在安全问题,如路径信息易泄露、易受恶意攻击等。
- 占用带宽:RIP每30秒广播一次更新,可能会占用大量带宽,影响关键IT流程的资源。
- 不支持多路径:RIP不支持同一路由上的多条路径,这可能导致路由环路和数据包丢失。
- 坏消息传播慢:当网络中出现故障时,RIP可能需要较长时间才能将故障信息传播到所有路由器,导致网络收敛速度慢。
- 这些缺点使得RIP在大型网络或对安全性、实时性要求较高的环境中可能不是最佳选择。
- 外部网关协议(EGP): 在不同公司之间运行的路由协议, 如BGP.
希望传路由快一点:ISIS OSPF.
希望传路由多一点,稳一点,慢点没事:BGP
OSPF概述
应用在企业内部, 属于公有标准协议, 位于 OSI 模型的第三层.
OSPF 的数据包, 包含着 IP 头部后面, 协议号为 89.
OSPF支持企业网络的层次化设计, 将网络分为 2 层: 骨干和非骨干区域.
OSPF区域的表示
- 通过十进制表示: 例如 区域0, 1, 2, 3 等.
- 通过点分十进制表示, 例如 区域0.0.0.0, 0.0.0.1, 0.0.0.2 等.
- 最大就是232, 和IP地址一样.
OSPF骨干区域
- 区域号为 0, 表示的就是骨干区域
OSPF非骨干区域
- 区域号不为 0, 表示的就是非骨干区域.
- 非骨干区域必须和骨干区域 ‘直接’ 相连, 能实现 ‘区域之间的互通’.
OSPF工作原理
建立OSPF邻居表, 同步OSPF数据库, 计算OSPF路由表.
OSPF报文类型
OSPF报文类型 | 描述 |
Hello | 用于发现, 建立, 维护和拆除 OSPF 邻居 |
DD(数据库描述报文) | 用于发送 OSPF 数据库条目的简要信息, 高效且稳定地实现数据库同步 |
LSR(链路状态请求报文) | 用于请求自己数据库中没有地链路状态通告信息(LSA) |
LSU(链路状态更新报文) | 用于回应LSR报文, 其中包含的是详细的链路状态通告信息(LSA) |
LSAck(链路状态确认报文) | 用于对LSR和LSU报文确认, 实现LSR和LSR报文的可靠传输 |
Hello报文
Hello报文的作用
建立邻居关系:Hello报文用于发现网络中的邻居设备,并建立和维护这些设备之间的邻居关系。
维护邻接关系:通过周期性发送Hello报文,路由器能够监测邻居路由器的存活状态。如果在特定时间内没有收到某个邻居的Hello报文,就会将其认定为失效,从而触发相应的路由计算和更新操作
Hello报文的发送原则
在IS-IS协议中,Hello报文的发送间隔和邻居保持时间可以通过配置来控制。
Hello报文的发送间隔越短,占用的系统资源越多,可能导致CPU负载过重。
邻居保持时间过长会导致检测到邻居失效的时间延长,从而减慢路由收敛速度;过短则可能导致路由震荡。
Hello报文的字段内容
子网掩码:发送Hello报文的接口子网掩码。
hello间隔:Hello报文的泛洪周期。
可选项:表示发送路由器支持的功能或特性。
路由优先级:用于DR和BDR的选举。
路由失效时间:在邻居路由器被设置为Down前的等待时间。
DR和BDR的接口IP:网络中的DR和BDR的接口IP。
邻居Router-ID:已经建立邻居关系的邻居路由器ID。
Hello报文的类型
OSPF协议:Hello报文是OSPF五种报文之一,用于建立和维护邻接关系。
IS-IS协议:IS-IS协议通过Hello报文的收发来维护与相邻设备的邻居关系。
配置Hello报文
在华为设备的配置中,可以通过执行特定命令来配置Hello报文的发送间隔和邻居保持时间。
例如,执行命令isis timer hello hello-interval [ level-1 | level-2 ]来配置接口上Hello报文的发送间隔。
DD, LSR, LSU, LSAck
OSPF的特点总结
路由器和网段较多时, 动态协议效率更高.
在企业内网, 适应性和扩展性最强的动态路由协议是 OSPF.
OSPF 属于 网络层 协议, 所以配置之前, 必须确保网络的物理层和数据链路层是互通的.
OSPF支持将网络划分为骨干层 和 非骨干层, 便于网络的扩展, 排错和管理.
关键字
process ID 进程号, 默认是 1 . 取值范围: 1-65535
Router ID:中文名:路由器标识符,OSPF中,每个路由器都需要一个唯一的标识符来识别自己,有助于网络管理员快速识别设备。格式也与IP地址一样都是用32位点分十进制表示(如1.1.1.1等)。
OSPF的单区域配置
- 命令是:[R1-ospf-1-area-0]ospf 1 router id 1.1.1.1
- Route ID命令配置成功后并不是立即生效的,需要重启设备或重启OSPF进程
- 重启ospf进程命令:<R2>ospf 1 process
- display ospf 1 brief
- Router ID选举规则:
- 手工配置的Router ID的优先级最高,唯一且稳定。
- 如果未进行过手工配置,如果存在IP接口的Loopbuck回环接口,则从Loopback接口地址中选择IP地址最大的作为Router ID。回环接口是一个逻辑接口,通常不受物理链路状态的影响,所以这种方式下,路由器ID较为稳定。
- 如果没有已配置IP地址的Loopback接口,则从其它已配置IP地址的接口中选择IP地址最大的作为Router ID。这种方式下,路由器ID可能会随着接口状态的改变而变化。通常,管理员可以通过查看路由器接口信息来确认当前的路由器ID。
area 0: 区域 0 , 设备会自动识别为 0.0.0.0 这样的点分十进制格式, 和IP地址格式一样.
- 区域划分的意义是:为了更好地管理网络和设备。
OSPF wild card bits: 反掩码, 可以在配置的时候输入反掩码(如0.0.0.255), 也可以在配置的时候写正掩码, 设备会自动转换为反掩码(如255.255.255.0 转换成0.0.0.255). 因此, 在实际工程中, 怎么方便怎么来, 保证最终结果正确即可. 另外, 不能把OSPF wild ward bits看成通配符, 因为掩码是连续的 1 组成, 如果使用通配符系统会认为输入是无效的(Error: The network mask is invalid because the network mask must be consecutive,由于网络掩码必须连续,因此网络掩码无效)
命令:
- [AR1]ospf ∥指定ospf协议的进程号,不指定则默认为1。
- [AR1-ospf-0]area 0 ∥进入ospf协议的区域0。
- [AR1-ospf-0-area 0]network 192.168.1.0 255.255.255.0 ∥将192.168.1.0/24宣告进入到区域0。
- [AR1-ospf-0-area 0]network 192.168.12.0 255.255.255.0 ∥network 后面跟的必须是直连路由。
- [AR2]ospf 2 ∥OSPF协议的进程号,在每个设备上是可以不相同的。
- [AR2-ospf-0]area 0
- [AR2-ospf-0-area 0]network 192.168.12.0 255.255.255.0
- [AR2-ospf-0-area 0]network 192.168.23.0 255.255.255.0
- [AR3]ospf 3
- [AR3-ospf-0]area 0
- [AR3-ospf-0-area 0]network 192.168.23.0 255.255.255.0
- [AR3-ospf-0-area 0]network 192.168.2.0 255.255.255.0
- display ospf peer brief //查看网络设备(如路由器)OSPF(Open Shortest Path First)协议邻居简要信息的命令, 通过这些信息,网络管理员可以快速判断OSPF邻居关系的建立情况和状态,从而帮助诊断和解决网络问题。
- 以下是display ospf peer brief命令输出的一些关键信息:
- OSPF Process:显示OSPF进程ID和路由器的Router ID。
- OSPF Process 1 with Router ID 1.1.1.1
- Area Id:显示邻居所在的OSPF区域ID,表示路由器当前建立的邻居关系所在的区域,OSPF通过区域划分来减少路由信息的交换量和计算复杂度。
- Interface:显示与邻居建立关系的本地接口。
- Neighbor id:显示邻居路由器的Router ID。
- State:显示与邻居的OSPF关系状态。常见的状态包括:
- 2-way:双方都收到了对方的Hello报文,邻居关系建立。
- ExStart:开始交换数据库描述报文(DBD,DBD也即DD)。
- Exchange:交换DBD报文,同步链路状态数据库(LSDB)。
- Loading:请求和接收链路状态更新(LSU)报文,同步LSDB。
- Full:双方LSDB完全同步,邻接关系建立。最终完美状态。
- OSPF Process:显示OSPF进程ID和路由器的Router ID。