| |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
-> 网络协议 -> ospf的总结 -> 正文阅读 |
|
[网络协议]ospf的总结 |
OSPF:开放式最短路径优先协议无类别(携带掩码)链路状态(基于拓扑)型IGP(AS内部)协议 ???? 更新量大—》为了能在中大型网络生存—进行结构化的部署—区域划分、地址规划 触发更新,每30min周期更新;组播更新—224.0.0.5—all ospf?? 224.0.0.6—DR/BDR 存在V1-V3?? 目前通用V2; ?V3是IPV6使用; 跨层封装3层报头,协议号89;支持等开销负载均衡;
OSPF数据包的头部结构 跨层封装到IP报头,协议号89; 存在5个类型的数据包: 1)Hello ?组播周期发送,用于邻居、邻接关系的发现、建立、周期保活; ??在hello包中存在本地已知邻居的RID,用于保活这些邻居; ?hello time 10s或者 30s Dead time 为hello time 的4倍; 2)DBD:数据库描述包 ? 3)LSR 链路状态请求 4)LSU 链路状态更新 ?--携带具体的LSA信息 5)LSack 链路状态确认
Down? 一旦接收到hello包,进入下一个状态机 Init 初始化 ??接收到的hello包中,若存在本地的RID,进入下一个状态 2way ?双向通讯 ?邻居关系建立的标志 条件匹配: Exstart 预启动: 使用不携带信息的DBD包进行主从关系选举,RID数值大为主,优先进入 下一个状态机; Exchange准交换:使用DBD进行数据库目录的共享,需要ACK确认; Loading加载:基于对端的数据库目录,对照本地,然后使用LSR来获取未知的LSA信息; ???????? 对端使用LSU来共享LSA,需要ACK确认; Full转发:邻接关系建立的标志
启动配置完成后,邻居间组播收发hello包,建立邻居关系;生成邻居表: 之后进行条件的匹配,匹配失败的邻居将保持为邻居关系,仅hello包周期保活即可; 匹配成功的邻居间,将进行邻接关系的建立;过程中先使用DBD进行目录交互,在使用LSR/LSU/LSack来获取本地未知的LSA信息;最终完成邻接关系间的LSDB同步;生成数据库表;再然后,本地基于LSDB,生成有向图—>树型结构—>最短选路 ??SPF算法 基于树形结构计算本地到达所有未知网段的最短路径,然后将其加载到路由表中; 收敛完成,hello包周期保活;每30min邻居间再周期比对DBD包; 结构突变:
名词: LSA??? 链路状态通告,在不同环境下产生不同的拓扑或路由,一条信息为一个LSA LSDB?? 链路状态数据库 ??整个网络LSA的集合 LSDB同步 ??OSPF的收敛行为,整个网络LSDB需要一致 LSA洪泛 ???OSPF的收敛行为,需要整个网络接收到同一条LSA
[r1]ospf 1 router-id 1.1.1.1? 启动时需要定义进程号,仅具有本地意义 ??建议配置RID—全网唯一—手工配置—本地环回接口最大数值---物理接口最大数值 [r1-ospf-1] [r1-ospf-1]area? 0?? 进入对应的区域进行宣告 [r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 [r1-ospf-1-area-0.0.0.0]network 12.1.1.1 0.0.0.0 OSPF的区域划分规则:
启动配置完成后,邻居间收发hello包,建立邻居关系,生成邻居表: Hello包携带的参数: 邻居间在进行邻居关系建立时,hello包有几个参数必须完全一致,否则无法建立邻居关系: Hello time和dead time??? 区域ID(ABR) ???认证字段 ???末梢区域标记 ??? 华为设备还要求邻居间建立邻居的接口ip地址子网掩码必须一致 [r2]display? ospf peer? 查看邻居表 [r2]display? ospf peer brief 查看邻居表的简表 ???????? OSPF Process 1 with Router ID 2.2.2.2 ????????????????? Peer Statistic Information ?---------------------------------------------------------------------------- ?Area Id????????? Interface??????????????????????? Neighbor id????? State??? ?0.0.0.0????????? GigabitEthernet0/0/0?????????????? 1.1.1.1????????? Full??????? ?0.0.0.1????????? GigabitEthernet0/0/1?????????????? 3.3.3.3????????? Full??? 邻居关系建立后,进行条件的匹配;匹配失败将保持为邻居关系,仅hello包周期保活; 匹配成功将可以建立为邻接关系: 首先使用DBD进行主从关系选举,在使用DBD进行数据库目录的交互: 关于DBD包的几个参数:
[r1]interface GigabitEthernet 0/0/1 [r1-GigabitEthernet0/0/1]ospf mtu-enable? 在于邻居间直连的接口上开启MTU检测;若一端开启,另一端也必须开启;
在使用DBD相互交互完数据库目录后,再使用LSR/LSU/LSack来获取未知的LSA信息; 最终实现所有设备的LSDB一致;生成数据库表: <r1>display ospf lsdb ?查看数据库表 当数据库同步完成后,OSPF将基于本地的LSDB,计算为有向图—>树型结构—>最短路径加载于路由表中: 华为设备优先级默认10; <r1>display? ospf routing?? 查看本地所有与OSPF相关路由,发出+接收的 度量为cost值=开销值=参考带宽/接口带宽 OSPF选择整段路径cost值之和最小为最短路径;默认参考带宽100M 若接口带宽大于参考带宽,cost值为1;可能导致选路不佳 可以修改设备的参考带宽: [r1]ospf 1 [r1-ospf-1]bandwidth-reference ? ? INTEGER<1-2147483648>? The reference bandwidth (Mbits/s) [r1-ospf-1]bandwidth-reference 1000? 切记:若进行修改,整个网络中所有设备需要修改为一致;
关注网络类型
在该网段内的非DR/BDR设备间只能建立为邻居关系; 选举规则:先比较参选接口的优先级0-255 数值大优,为0标识不参选 默认为1;若优先级相同,比较参选设备的RID值,数值大优; 修改接口优先级可以干涉选举: [r1]interface GigabitEthernet 0/0/1 [r1-GigabitEthernet0/0/1]ospf dr-priority 2? 参选接口修改优先级 注:DR选举为非抢占行为;故修改优先级需要重启的OSPF进程 <r1>reset ospf process Warning: The OSPF process will be reset. Continue? [Y/N]:y 六、ospf的接口网络类型 ??-- ospf的协议在不同网路类型的接口上,其工作方式不同 <r1>display? ospf interface GigabitEthernet 0/0/1? 查看OSPF协议在该接口的工作方式 网络类型 ????????????????????????????ospf的工作方式 LoopBack????? 显示P-2-P,实际为环回专用工作方式 ??无hello包 ?32位主机路由传递 点到点(串线HDLC/PPP) ?P-2-P? hello time10s?? 不选DR? 自接建立邻居关系 BMA(以太网) ????????Broadcast? hello time 10s????? 选DR/BDR NBAM(MGRE) ???默认接口工作方式为p2p,该工作方式仅允许建立一个邻居关系; ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 导致在MGRE环境中无法建立所有的邻居关系; 可以通过修改接口的工作方式来解决: 修改所有接口的工作访问broadcast ?? [r1-Tunnel0/0/0]ospf network-type broadcast 切记:在MGRE环境下,若一个网段的部分接口修改为broadcast,其他依然为点到点;由于建邻的条件匹配,故可以建立邻居关系;但broadcast需要DR,点到点不需要,所以最终不能正常收敛;需要该网段所有节点均为broadcast; 拓扑结构: 中心到站点(轴辐状-星型结构) ?DR必须定在中心站点,没有BDR 部分网状结构 ?基于实际环境关注是否固定DR; 全连网状结构 ??--- DR/BDR选举正常 |
|
网络协议 最新文章 |
使用Easyswoole 搭建简单的Websoket服务 |
常见的数据通信方式有哪些? |
Openssl 1024bit RSA算法---公私钥获取和处 |
HTTPS协议的密钥交换流程 |
《小白WEB安全入门》03. 漏洞篇 |
HttpRunner4.x 安装与使用 |
2021-07-04 |
手写RPC学习笔记 |
K8S高可用版本部署 |
mySQL计算IP地址范围 |
|
上一篇文章 下一篇文章 查看所有文章 |
|
开发:
C++知识库
Java知识库
JavaScript
Python
PHP知识库
人工智能
区块链
大数据
移动开发
嵌入式
开发工具
数据结构与算法
开发测试
游戏开发
网络协议
系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程 数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁 |
360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 | -2024/11/26 4:53:48- |
|
网站联系: qq:121756557 email:121756557@qq.com IT数码 |