GRE, MGRE
物理专线—1,成本;2,地理位置限制
VPN --- 虚拟专用网
VPN技术的核心 --- 隧道技术 --- 封装技术
GRE — 通用路由封装
我们希望的走法
SIP:192.168.1.1 DIP:192.168.2.1 数据
真实的走法
SIP:1.0.0.1 DIP:2.0.0.1 数据
实际走法
SIP:1.0.0.1 | DIP:2.0.0.1 | GRE | SIP:192.168.1.1 | DIP:192.168.2.1 | 数据 |
隧道技术—在隧道的两端通过封装以及解封装在公网中建立一条数据通道,使用这条数据通道进行传输。
GRE配置方法:
1,创建隧道接口
[r1]interface Tunnel 0/0/0
[г1-Tune10/0/0]
2,接口配置P地址
[r1-Tunnel0/0/0]ip adress 192.168.3.1 24
3.定义封装方式
[r1-Tunel0/0/0]tunel-protocol gre
4.定义封装内容
[r1-Tunel0/0/]source 12.0.0.1
[r1-Tunnel0/0/0]destination 23.0.0.2
NHRP --- 下一跳解析协议 --- NHS --- 下一跳解析服务器 --- 原理: 需要在私网中选择一个出口物理地址固定的设备作为NHS,剩下的所有分支都应该知道中心的隧道地址和物理地址,然后,NHRP要求所有分支将自己物理接口和隧道接口的P地址的映射关系发送给NHS,如果物理地址发生变化,则需要重新发送。这样NHS可以获取到所有分支的地址的映射关系。分支之间如果需要相互通信,则需要像中心申请获取映射关系表 --- 这种架构我们称为hub— spoke架构。
MGRE的配置
中心的配置:
1,创建隧道接口
[r1]interface Tunel 0/0/0
2,接口配置P地址
[r1-Tunnel0/0/O]ip adres 192.168.3.1 24
3.定义封装方式
[r1-Tunel0/0/0]tunel-protocol gre p2mp
4,定义封装内容
[r1-Tunel0/0/0]source 15.0.0.1
5,创建NHRP域
[r1-Tunel0/0/0]nhrp network-id 10 (工作域)
分支的配置:
1,创建隧道接口
[r1]interface Tunnel 0/0/0
[r1-Tunnel0/0/0]
2,接口配置P地址
tr1-Tunel0/0/0]ip adress 192.168.3.1 24
3定义封装方式
[г1-Tunel0/0/0]tunel-protocol gre p2mp
定义封装内容
Iг2-Tunel0/0/0]source GigabitEthernet 0/0/1
5,加入到中心创建的NHRP域中
[г2-Tunnel0/0/0]nhrp network-id 10
6.上报信息到中心
[r2-Tune0/0/0]nhrp entry 192.68.5.1 15.0.0.1 register
隧道地址 物理接口地址
[1—Tunnel0/0/0]diplay nhrp peer all --- 查看NHRP邻居的注册情况
MGRP环境在数据发送时,依旧是走的点到点的隧道,所以在数据传输时依然是点到点的传输。所以,MGRE环境是一个类似于NBMA的环境。
RIP实现MGRE环境遇到的问题:
1,只有中心获取到了分支的路由信息,而分支没有获取到
在中心上开启伪广播
[r1-Tunnel0/0/0]nhrp entry multicast dynamic
2,中心开启伪广播后,分支只能收到中心的路由信息,但没有分支的。
原因—-— RIP的水平分割机制
解决方法:[r1-Tunnelo/o/ojundo rip split—horizon --- 关闭RIP的水平分割
OSPF --- 开放式最短路由优先协议
1,OSPF使用SPF算法计算路径信息,不会出现环路,并且,OSPF使用带宽 作为开销值进行选 路,相对更合理一些,所以,选路的层面优于RIP;
2,因为OSPF计时器时间短于RIP,所以,从收敛速度的角度看,OSPF优于 RIP;
3,从单个数据包的角度来看,因为OSPF传递的是拓扑信息(链路状态信息 --- LSA),所以,数 据量远远大于RIP的单个数据包。但是,因为RIP 存在30S一次的周期更新,整体上看,占用资 源量巨大;再加上OSPF本身 存在很多减少更新量的手段,所以,从整体的角度来看,OSPF 小优于RIP。
RIP存在三个版本 --- RIPV1,RIPV2 --- IPV4
RIPNG --- IPV6
OSPF也存在三个版本 --- ospfv1(实验室阶段夭折),ospfv2 --- IPV4
ospfv3 --- IPV6
RIPV2和OSPFV2的相同点:
1,OSPFV2和RIPV2一样,都是无类别的路由协议(传递目标网段信息时携带子网掩码) -- 都支持VLSM,CIDR
2,OSPFV2和RIPV2都是以组播发送信息 ----- OSPFV2所使用的组播地址为 224.0.0.5和 224.0.0.6
3,OSPFV2和RIPV2一样,都支持等开销负载均衡
不同点:
RIP只适用于小型网络环境中,OSPF可以适用于中大型的网络环境
--- OSPF为了适用中大型的网络环境,需要进行 --- 结构化部署
(区域划分)
如果网络规模不大,仅存在一个OSPF区域,则称之为单区域OSPF网络;若存在多个OSPF区域,则称之为多区域OSPF网络
区域划分的主要目的:区域内部传递拓扑信息,区域之间传递路由信息 --- 链路状态型协议的距离矢量特征
区域边界路由器(ABR) --- 同时属于多个区域,一个接口对应一个区域,必须有一个接口在区域0。
区域之间可以存在多个ABR设备,一个ABR可以对应多个区域
区域划分的要求:
1,区域之间必须存在ABR;
2,区域划分必须遵循星型拓扑结构 --- 星型拓扑的中间区域称为骨干区域
为了方便对OSPF的区域进行管理,我们给区域设计了一个编号 --- 区域ID(area ID) ---- 32 位二进制构成 ---- 一般会采用点分十进制 的方法来表示/也可以直接用十进制来表示 ---- 规定 骨干区域的area ID 为0。
1,OSPF的数据包类型
Hello包 --- 周期发现,建立和保活邻居关系
hello的周期发送时间默认为 10s --- hello时间。
失效判断的默认时间为4倍的hello时间 --- 40S ---- 死亡时间(dead time)
OSPF为了区分和标定不同的路由器,给每个路由器设立了一个
RID --- 1,全网唯一;2,格式统一 --- 统一按照IP地址的格 式 ---- 32位二进制构成
RID的获取方法有两种
1,手工配置 --- 仅需满足以上两点要求即可
2,自动获取 --- 路由器会先在自己的环回接口的IP地址中选择最大的IP地址作为RID;如果,路由器不存在环回接口,则将在自己物理接口的IP地址中选择最大的作为RID;
DBD包 --- 数据库描述报文 ---- 携带的时路径信息的摘要
LSR包 --- 链路状态请求报文 --- 根据DBD包的比对,基于本地未知的LSA信息发出请求
LSA --- 链路状态通告
LSU包 --- 链路状态更新报文 --- 真正携带LSA信息的数据包
LSACK包 --- 链路状态确认报文 --- 确认包
OSPF存在每30MIN一次的周期更新
2,OSPF的状态机
TWO-WAY ---- 标志着邻居关系的建立
(条件匹配)条件匹配成功,则进入下一个状态;否则,将停留在邻居状态,仅发送hello包周期保活
主从关系选举 --- 使用未携带数据的DBD包(主要是为了和之前的邻居关系进行区分),通过比较RID来进行主从关系选举,RID大的为主,可以优先进入下一个状态
LSDB --- 链路状态数据库 --- 存储LSA信息的数据库
FULL状态 --- 标志着邻接关系的建立 ---- 邻接关系主要为了和邻居关系进行区分,邻居关系仅使用hello包进行周期保活,邻接关系才可以进行LSA信息的交换。
down状态 --- 启动ospf,发出Hello包之后进入下一个状态
init(初始化)状态 --- 收到hello包中携带自己本地的RID,进入下一 个状态
two-way(双向通讯)状态 --- 标志邻居关系的建立
(条件匹配)条件匹配成功,则进入下一个状态;否则,将停留在邻居状态,仅发送hello包周期保活
exstart(预启动)状态 --- 使用未携带数据的DBD包进行主从关系选举,RID大的为主,优先进入下一个状态
exchange(准交换)状态 --- 使用携带目录信息的DBD包进行目录共享
loading(加载)状态 --- 基于DBD包中的未知的LSA信息,使用LSR包进行请求,邻居使用LSU包回复,需要LSACK进行确认
FULL状态 --- 标志着邻接关系的建立
3,OSPF的工作过程
启动配置完成后,OSPF会向所有运行协议的接口以组播224.0.0.5的 形式发送hello包;hello包中携带本地的RID以及本地已知的邻居的RID。之后,将收集到的邻居关系记录在一张表中 ---- 邻居表。
邻居建立之后,需要进行条件匹配;匹配失败则停留在邻居关系,仅使用Hello包进行周期保活。
匹配成功,则可以开始建立邻接关系。首先使用未携带数据的DBD包进行主从关系选举,之后使用携带数据的DBD包进行数据库目录信息共享;之后本地使用LSR/LSU/LSACk来获取未知的LSA信息;完成本地数据库的建立;生成数据库表 --- LSDB。
最后,基于本地的链路状态数据库生成有向图及最短路径树,之后计算本地到未知网段的路由信息,生成路由并添加到路由表中。
收敛完成之后,hello包10S一次进行周期保活,30MIN一次周期更新。
结构突变
1,新增一个网段 --- 触发更新,直接使用携带LSA信息的LSU包进行更新,需要对方回复ACK进行确认
2,断开一个网段 --- 触发更新,直接使用携带LSA信息的LSU包进行更新,需要对方回复ACK进行确认
3,无法沟通 ---- 40S(dead时间)
4,OSPF的基本配置
1 .启动OSPF进程
[r1]ospf 1 router-id 1.1.1.1 ---- 1 --- 进程号,仅具有本地意义。
[r1-ospf-1]
2,创建区域
[r1-ospf-1]area 0
[r1-ospf-1-area-0.0.0.0]
3,宣告
[r1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0 --- 反掩
码 --- 由连续的0和连续的1组成,0带表不可变,1代表可变
[r1]display ospf peer --- 查看OSPF邻居表
[r1]display ospf peer brief --- 查看邻居关系简表
[r1]display ospf lsdb --- 查看OSPF的链路状态数据库
[r1]display ospf lsdb router 2.2.2.2 --- 查看LSA详细信息
[r1]display ip routing-table protocol ospf
OSPF协议 --- 华为设备分配的默认优先级为10
OSPF是以带宽作为开销值的度量标准的
cost = 参考带宽/真实带宽 --- 华为设备OSPF的参考带宽默认为100Mbps
[r1-ospf-1]bandwidth-reference 1000 ---- 修改参考带宽的命令
注意:如果需要修改一台路由器的参考带宽,则需要将所有(OSPF网络内)路由器的参考带宽都修改为一样的