本文主要是介绍GRE、MGRE、OSPF协议—超详版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在广域网技术中有PPP HDLC FR ATM PPPOE PPPOA
GRE和MGRE不属于广域网技术,属于VPN技术(虚拟专线技术)
GRE:通用路由封装,标准的三层隧道技术,是一种点对点的隧道技术
GRE在什么地方用?比如一个私网IP地址通过公网传递给另一个私网IP地址
查看:
配置命令:
打开R1
<Huawei>sys
[Huawei]sys r1
[r1]user-interface console 0—[r1]user-interface console 0
[r1-ui-console0]idle-timeout 0 0—设置永不超时(用户登录设备后如果长时间没有进行操作,将一直占用此用户界面,造成资源的浪费,可以配置此命令将长时间连接始终处于空闲状态,系统将自动断开该连接)
[r1-ui-console0]q
[r1]int lo0
[r1-LoopBack0]ip add 192.168.1.1 24
[r1-LoopBack0]int g 0/0/0
[r1-GigabitEthernet0/0/0]ip add 12.1.1.1 24
[r1-GigabitEthernet0/0/0]q
打开R2
<Huawei>sys
[Huawei]sys r2
[r2]user-interface console 0
[r2-ui-console0]idle-timeout 0 0
[r2-ui-console0]int g 0/0/1
[r2-GigabitEthernet0/0/1]ip add 12.1.1.2 24
[r2-GigabitEthernet0/0/1]int g 0/0/0
[r2-GigabitEthernet0/0/0]ip add 23.1.1.1 24
[r2-GigabitEthernet0/0/0]q
打开R3
<Huawei>sys
[Huawei]sys r3
[r3]user-interface console 0
[r3-ui-console0]idle-timeout 0 0
[r3-ui-console0]int lo0
[r3-LoopBack0]ip add 192.168.2.1 24
[r3-LoopBack0]int g 0/0/1
[r3-GigabitEthernet0/0/1]ip add 23.1.1.2 24
打开R1
[r1]ip route-static 0.0.0.0 0.0.0.0 12.1.1.2—边界缺省路由
打开R3
[r3]ip route-static 0.0.0.0 0 23.1.1.1—边界缺省路由
测试:
[r2]ping 12.1.1.1
PING 12.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 12.1.1.1: bytes=56 Sequence=1 ttl=255 time=100 ms
Reply from 12.1.1.1: bytes=56 Sequence=2 ttl=255 time=30 ms
Reply from 12.1.1.1: bytes=56 Sequence=3 ttl=255 time=30 ms
Reply from 12.1.1.1: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 12.1.1.1: bytes=56 Sequence=5 ttl=255 time=30 ms
--- 12.1.1.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/44/100 ms
[r2]ping 23.1.1.2
PING 23.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 23.1.1.2: bytes=56 Sequence=1 ttl=255 time=80 ms
Reply from 23.1.1.2: bytes=56 Sequence=2 ttl=255 time=20 ms
Reply from 23.1.1.2: bytes=56 Sequence=3 ttl=255 time=30 ms
Reply from 23.1.1.2: bytes=56 Sequence=4 ttl=255 time=20 ms
Reply from 23.1.1.2: bytes=56 Sequence=5 ttl=255 time=20 ms
--- 23.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/34/80 ms
打开R1
[r1]interface Tunnel 0/0/0—进入隧道
[r1-Tunnel0/0/0]ip add 10.1.1.1 24
[r1-Tunnel0/0/0]tunnel-protocol gre—启动GRE协议
[r1-Tunnel0/0/0]source 12.1.1.1
[r1-Tunnel0/0/0]destination 23.1.1.2
[r1-Tunnel0/0/0]q
打开R3
[r3]int Tunnel 0/0/0—隧道的接口标识符双方可以不一致,接口标识符具有本地意义
[r3-Tunnel0/0/0]ip add 10.1.1.2 24
[r3-Tunnel0/0/0]tunnel-protocol gre
[r3-Tunnel0/0/0]source 23.1.1.2
[r3-Tunnel0/0/0]destination 12.1.1.1
[r3-Tunnel0/0/0]q
测试:
[r1]ping 10.1.1.2
PING 10.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=30 ms
Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=20 ms
Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=30 ms
Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=20 ms
Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=20 ms
--- 10.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/24/30 ms
私网地址之间进行通信要么写静态路由,要么开启动态路由
打开R1(启动RIP协议)
[r1]rip 100
[r1-rip-100]version 2
[r1-rip-100]network 10.0.0.0
[r1-rip-100]network 192.168.1.0
[r1-rip-100]q
打开R3
[r3]rip 100
[r3-rip-100]version 2
[r3-rip-100]network 10.0.0.0
[r3-rip-100]network 192.168.2.0
[r3-rip-100]q
凡是目标地址是224.0.0.x的这种本地链路组播地址,TTL=1
测试:
[r1]ping -a 192.168.1.1 192.168.2.1—两个私有IP地址进行通信
PING 192.168.2.1: 56 data bytes, press CTRL_C to break
Reply from 192.168.2.1: bytes=56 Sequence=1 ttl=255 time=30 ms
Reply from 192.168.2.1: bytes=56 Sequence=2 ttl=255 time=30 ms
Reply from 192.168.2.1: bytes=56 Sequence=3 ttl=255 time=40 ms
Reply from 192.168.2.1: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 192.168.2.1: bytes=56 Sequence=5 ttl=255 time=40 ms
--- 192.168.2.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/34/40 ms
以上步骤通过GRE实现私网穿越公网的通信
MGRE:多点通用路由封装协议 (只有隧道的源没有隧道的目标)
NHRP:下一跳可达协议,所有的MGRE接口将自己的MGRE接口IP地址和对应
隧道物理接口地址信息发送给NHS进行注册,NHS上存在所有接入MGRE的接
口映射关系,其他MGRE接口之间彼此通信时向NHS进行请求,形成隧道的目
标地址
NHRP-Service是手工配置的
DMVPN(动态多点VPN):①MGRE②NHRP③IPSEC④加密认证⑤协议控制
配置命令:
打开R1
[r1]undo interface Tunnel 0/0/0
打开R3
[r3]undo interface Tunnel 0/0/0
打开R2
[r2]int g 0/0/2
[r2-GigabitEthernet0/0/2]ip add 24.1.1.1 24
[r2-GigabitEthernet0/0/2]q
打开R4
<Huawei>sys
[Huawei]sys r4
[r4]user-interface console 0
[r4-ui-console0]idle-timeout 0 0
[r4-ui-console0]int lo0
[r4-LoopBack0]ip add 192.168.3.1 24
[r4-LoopBack0]int g 0/0/2
[r4-GigabitEthernet0/0/2]ip add 24.1.1.2 24
[r4-GigabitEthernet0/0/2]ping 24.1.1.1
PING 24.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 24.1.1.1: bytes=56 Sequence=1 ttl=255 time=80 ms
Reply from 24.1.1.1: bytes=56 Sequence=2 ttl=255 time=20 ms
Reply from 24.1.1.1: bytes=56 Sequence=3 ttl=255 time=10 ms
Reply from 24.1.1.1: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 24.1.1.1: bytes=56 Sequence=5 ttl=255 time=20 ms
--- 24.1.1.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 10/32/80 ms
[r4-GigabitEthernet0/0/2]q
[r4]ip route-static 0.0.0.0 0 24.1.1.1
[r4]ping 12.1.1.1
PING 12.1.1.1: 56 data bytes, press CTRL_C to break
Reply from 12.1.1.1: bytes=56 Sequence=1 ttl=254 time=30 ms
Reply from 12.1.1.1: bytes=56 Sequence=2 ttl=254 time=20 ms
Reply from 12.1.1.1: bytes=56 Sequence=3 ttl=254 time=40 ms
Reply from 12.1.1.1: bytes=56 Sequence=4 ttl=254 time=30 ms
Reply from 12.1.1.1: bytes=56 Sequence=5 ttl=254 time=20 ms
--- 12.1.1.1 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/28/40 ms
[r4]ping 23.1.1.2
PING 23.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 23.1.1.2: bytes=56 Sequence=1 ttl=254 time=30 ms
Reply from 23.1.1.2: bytes=56 Sequence=2 ttl=254 time=20 ms
Reply from 23.1.1.2: bytes=56 Sequence=3 ttl=254 time=30 ms
Reply from 23.1.1.2: bytes=56 Sequence=4 ttl=254 time=20 ms
Reply from 23.1.1.2: bytes=56 Sequence=5 ttl=254 time=20 ms
--- 23.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/24/30 ms
打开R1
[r1]interface Tunnel 0/0/0
[r1-Tunnel0/0/0]ip add 10.1.1.1 24
[r1-Tunnel0/0/0]tunnel-protocol gre p2mp
[r1-Tunnel0/0/0]source 12.1.1.1
[r1-Tunnel0/0/0]nhrp network-id 100
[r1-Tunnel0/0/0]q
打开R3
[r3]interface Tunnel 0/0/0
[r3-Tunnel0/0/0]ip add 10.1.1.2 24
[r3-Tunnel0/0/0]tunnel-protocol gre p2mp
[r3-Tunnel0/0/0]source 23.1.1.2
[r3-Tunnel0/0/0]nhrp network-id 100
[r3-Tunnel0/0/0]nhrp entry 10.1.1.1 12.1.1.1 register
[r3-Tunnel0/0/0]q
打开R4
[r4]int t 0/0/0
[r4-Tunnel0/0/0]ip add 10.1.1.3 24
[r4-Tunnel0/0/0]tunnel-protocol gre p2mp
[r4-Tunnel0/0/0]source 24.1.1.2
[r4-Tunnel0/0/0]nhrp network-id 100
[r4-Tunnel0/0/0]nhrp entry 10.1.1.1 12.1.1.1 register
[r4-Tunnel0/0/0]q
测试:
[r1]ping 10.1.1.2
PING 10.1.1.2: 56 data bytes, press CTRL_C to break
Reply from 10.1.1.2: bytes=56 Sequence=1 ttl=255 time=30 ms
Reply from 10.1.1.2: bytes=56 Sequence=2 ttl=255 time=30 ms
Reply from 10.1.1.2: bytes=56 Sequence=3 ttl=255 time=30 ms
Reply from 10.1.1.2: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 10.1.1.2: bytes=56 Sequence=5 ttl=255 time=30 ms
--- 10.1.1.2 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 30/30/30 ms
[r3]ping 10.1.1.3
PING 10.1.1.3: 56 data bytes, press CTRL_C to break
Reply from 10.1.1.3: bytes=56 Sequence=1 ttl=254 time=50 ms
Reply from 10.1.1.3: bytes=56 Sequence=2 ttl=255 time=20 ms
Reply from 10.1.1.3: bytes=56 Sequence=3 ttl=255 time=40 ms
Reply from 10.1.1.3: bytes=56 Sequence=4 ttl=255 time=30 ms
Reply from 10.1.1.3: bytes=56 Sequence=5 ttl=255 time=30 ms
--- 10.1.1.3 ping statistics ---
5 packet(s) transmitted
5 packet(s) received
0.00% packet loss
round-trip min/avg/max = 20/34/50 ms
打开R4
[r4]rip 100
[r4-rip-100]ver 2
[r4-rip-100]net 10.0.0.0
[r4-rip-100]net 192.168.3.0
打开R1
[r1]int t 0/0/0
[r1-Tunnel0/0/0]nhrp entry multicast dynamic —开启伪广播伪组播
[r1-Tunnel0/0/0]undo rip split-horizon —关闭水平分割
测试:
运行路由协议
hub端配置:
spoke端配置:
查看:
Hub-spoke:中心到分支,只有一个总公司
Full-mesh:全互联—A、A-1、A-2每个分公司到达其他分公司包括总部都有专线
Part-mesh:部分互联—有一部分用户到达整个网络有全部互联
Network-id具有全局意义—唯一性标识符
NBMA:非广播的多路访问(FR MGRE)—不支持广播就不支持组播
BMA:以太网,支持广播的多路访问
OSPF:开放式最短路径优先协议
使用范围:IGP
协议算法特点:链路状态型路由协议,SPF算法(最短路径优先算法)
协议是否传递网络掩码:传递网络掩码(只有RIP V1不携带掩码)
协议封装:基于IP协议封装(跨层封装),协议号为89
一.OSPF 特点
1.OSPF是一种典型的链路状态型路由协议(既传递路由信息又传递拓扑信息)
2.传递信息称作LSA(链路状态通告,包含路由信息和拓扑信息。 六种类型(1、2、3、4、5、7)
路由LSA:描述本路由器上接口的路由信息
拓扑LSA:描述路由器之间的连接状态(点对点方式、非点对点方式)
3.更新方式:触发更新(网络稳定不发生任何lac信息 网络结构改变才发送信息—增加、减少、改变(cost值))+30分钟的链路状态刷新—先传递后运算—取决于算法的工作方式—lac新旧序列号比较
4.更新地址:组播和单播更新,组播地址:224.0.0.5(ALL SPF router) 224.0.0.6 (ALL DR router) 因为TTL=1,所以只能直连不能跨路由器
5.支持路由认证
6.支持手工汇总
7.支持区域划分
8.OSPF比较消耗设备资源
二.OSPF区域
区域划分的意义(提高OSPF在较大网络中的性能):1.减少LSA的数量 2.减少LSA的传播范围
区域的划分是基于接口的(基于链路划分的)
区域的标记:使用了32个二进制 1.十进制 2.类似于IP地址
A.B.C.D
区域的分类:
骨干区域:区域标记为0或0.0.0.0
非骨干区域:区域标记不等于0或0.0.0.0
区域设计原则:向日葵型网络结构
1.OSPF网络中必须存在并唯一的骨干区域(单区域除外)
2.若存在非骨干区域,非骨干区域必须与骨干区域直接相连
OSPF中路由器的角色:
骨干路由器: 一个路由器的所有接口都属于骨干区域,那么
非骨干路由器:
ABR(既在骨干区域又在非骨干区域):区域边界路由器,能够产生3类LSA的路由器
ASBR(处于OSPF和非OSPF之间的路由器,并且将非OSPF路由引入到OSFP中):自治系统边界路由器,能够产生5类或7类LSA的路由器
要求设备ABR和ASBR的性能要高
三.OSPF 消息数据包
Hello(打招呼) DBD(数据库的 LSR LSU LSACK
hello: 周期性发送,周期时间10s或30s(根据不同的网络类型默认
10s或30s)
目的:建立并维持OSPF 邻居关系(邻居关系建立之后充当保活包功能)
四.OSPF邻居状态机制
Down(关闭状态—①OSPF未激活②OSPF工作过程中出现故障)、init 、attempt(尝试、过渡)、two-way 、exstart 、 exchange 、loading、full
Init—初始化状态(最开始状态),一旦接口激活开始发送hello报文,进入初始化状态。
Two-way communication—双向通信状态(邻居状态),接收到对方发送的hello包中,包含自己的router-id,那么会立即进入two-way状态
判断是否进行DR、BDR选举:非点对点网络结构需要选举
DBD报文:主从选举DBD、携带LSA目录DBD,发送DBD进入预启动状态
I:初始化位(第一位)
M:多位(后面还有位)
MS:主从位(=1是主 =0是从)route-id大为主小为从
DBD的序列号为:180
从将自己的序列号设置为与主的序列号一致时是隐式确认现象
主序列号确认加1
Exstart—预启动 一旦发送DBD
Exchange—预交换 主从选举完成 发送LSA目录 发送LSR
Loading—加载 学习LSA状态
DBD LSR LSU LSACK都需要确认 只有Hello包不需要确认
DBD使用序列号确认,从序列号和主序列号一致,设置和序列号加1
LSR使用LSU确认,LSU包含LSR请求的信息
LSU使用LSACK确认,将LSA的头部信息再发一遍过去
LSACK使用隐式确认
Full—邻接 请求和重传列表都空了,就进入Full状态
邻居关系建立条件:
1.router-id必须不同
2.area ID相同
3.认证:认证类型 (不认证=0 明文认证=1 MD5=2) 认证数据
4.hello时间,dead时间必须一致
5.特殊区域标识一致(E(外部路由位)=1 ; N(NSSA外部路由
位)=0 P=0)
6.MA网络中,网络掩码必须一致
7.必须同时使用单播或组播更新(如果做了单播更新则不会发送组播)
8.更新源检测(双方的IP地址必须在同一网段)
邻居状态下(two-way): MA的网络中会选举DR(指定路由器)
BDR(备份指定路由器)
DR选举: 1.比较优先级 (范围:0-255,默认优先级为1 ,越大越
优)
2.比较各自的router-id,越大越优
注意:1.DR抢占是关闭的 2.DR是一个接口概念 3.优先级范围
0-255,数字为0代表不参与选举 4.先选举BDR ,再升级为DR
224.0.0.5:DR发出
224.0.0.6:DR、BDR收到的
主从选举:发生在exstart状态, 通过双方的router-id进行比较,
router-id大的一方为主。 发送的
主从选举DBD,DBD中包含了MTU值(默认思科直接启用,华为中
默认不包含MTU,可以使用命令
激活传递MTU值的功能,若双方的MTU值不值则卡在exstart 状
态)。
Exstart---预启动状态,一旦开始发送主从DBD,则进入预启动状
态。
Exchange ---预交换状态,主从选举完成,则发送携带LSA头部信息的
DBD,进入预交换状态,会发送LSR数据包。(但是没有LSU)
Loading ---加载状态,一旦发送LSU数据包,进入了加载状态,进行
大量LSA的学习。
Full ---邻接状态。双方LSA同步(双方LSA全部学习)
排错:
Down状态—邻居关系建立条件出现问题
Init状态—有问题会退回Down状态,不是一个持久状态
Two-way communication状态—选不出DR、BDR会持续停留在two-way状态
Exstart状态—STU出现问题会卡在exstart
Exchange状态—STU出现问题会卡在exchange
Loading状态—LSA无法同步—①设备接收不了这么多LSA②在高性能路由器做了LSA
Full状态—正常状态
Attempt状态:在非广播的多路网络中存在
正常持续停留状态:Two-way和Full是稳定状态
OSPF中配为被动接口的接口单播、组播、广播都不能转发
DR、BDR选举发生在two-way状态
主从选举发生在exstart状态
五.OSPF基本配置
启用OSPF 并指定router-id
Router-id : 路由器标识符,用于标识本路由器在OSPF网络中的唯一性
OSPF router-id 选举规则:1.手工指定最优先 2.选举所有逻辑中IP地
址最大的 3.选举所有物理接口IP地址最大的
华为中: 若以上三点都不满足,则可以创建router-id 为0.0.0.0 ;在
使用逻辑或物理接口IP地址时,接口可以是关闭状态;若一台路由器启用了多个
OSPF进程,不同进程可以使用相同的router-id(不推荐);
思科中:若以上三点都不满足,则无法启用OSPF;在使用逻辑或物
理接口时,接口必须双 up ,该接口可以不通告进入OSPF中;同一路由器上多个OSPF进程必须router-id必须不同;
全局模式下可以选择针对所有的OSPF进程修改router-id ;(若同时
在接口部署时,接口优先生效)
OSPF、BGP等协议都是反掩码
RIP也是反掩码但是它写的是主类宣告
反掩码由连续的0和1组成,0不可变,1可变,匹配的是网段
Lsdb—链路状态数据库
OSF Router-id:路由器的标识符具有唯OSPF Router-id选举生成方式:①手工指定最优先②选择最大的环回接口IP地址③选择最大的物理接口IP地址
在启用OSPF协议进程后,设备会自动选举一个Router ID,这个Router ID为设备配置的接口IP地址,通常为设备的Loopback 接口地址,如果没有配置Loopback接口地址,则选择其他接口地址最大的IP地址作为Router ID。
注意:配置接口IP地址的顺序,也影响Router ID的选举。
邻居关系建立:①Router-id必须不同②区域ID必须保持一致③认证类型必须匹配(不做认证0 明文认证1 密文认证2)④hello时间和dead时间必须一致⑤特殊区域(E、N))标识必须一致
点对点结构中掩码可以不一致
非点对点网络中网络掩码必须保持一致
Hello:建立邻居和维持邻居(发送hello包10s)
Router Dead Interval(超时计时器):40s
DR:指定路由器—只发生在MA网络中—减少LAC的传播次数
DR选举方式:先比优先级(默认值为1、0-255、数值越大越优)如果一致那么再比Router-id(数值越大越优)
DR是接口的身份
BDR:备份指定路由器—DR出现故障是BDR直接为DR
DR和BDR的抢占是关闭的
设备只选BDR,先选出的BDR成为DR再选BDR
DR other:除DR、BDR以外的
这篇关于GRE、MGRE、OSPF协议—超详版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!