#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh 原创

whale_life
发布于 2022-9-26 14:23
浏览
0收藏

OSPFv2 ipv4
OSPFv3 ipv6

OSPF 为了解决静态路由可能会存在路径不优的问题

Router ID

#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
•OSPF Router-ID用于在OSPF domain中唯一地表示一台OSPF路由器,从OSPF网络设计的角度,我们要求全OSPF域内,禁止出现两台路由器拥有相同的Router-ID。
•OSPF Router-ID的设定可以通过手工配置的方式,或者通过协议自动选取的方式。当然,在实际网络部署中,强烈建议手工配置OSPF的Router-ID,因为这关系到协议的稳定。

  • OSPF Router-ID的建议绑定到 Loopback 网卡

DR & BDR

#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
在广播多路访问网络(Multi Access)中,所有的路由器的接口都是相同网段,这些接口两两建立OSPF邻居关系,这就意味着,网络中共有:n(n-1)/2。维护如此多的邻居关系不仅额外消耗资源,更增加了网络中LSA的泛洪数量。

•为减小多路访问网络中的 OSPF 流量,OSPF 会在每一个MA网络(多路访问网络)选举一个指定路由器 (DR) 和一个备用指定路由器 (BDR)。
•DR选举规则:最高OSPF接口优先级拥有者被选作DR,如果优先级相等(默认为1),具有最高的OSPF Router-ID的路由器被选举成DR,并且DR具有非抢占性。
•指定路由器 (DR):DR 负责使用该变化信息更新其它所有 OSPF 路由器(DR Rother)。
•备用指定路由器 (BDR):BDR 会监控 DR 的状态,并在当前 DR 发生故障时接替其角色。
•注意OSPF为“接口敏感型协议”,DR及BDR的身份状态是基于OSPF接口的。
•MA网络中,所有的DRother路由器均只与DR和BDR建立邻接关系,DRother间不建立全毗邻邻接关系。
•如此一来,该多路访问网络中设备需要维护的OSPF邻居关系大幅减小:M= (n-2)×2+1,LSA的泛洪问题也可以得到一定的缓解。

IBGP(Internal BGP)

位于相同自治系统的BGP路由器之间的BGP邻接关系。
•两台路由器之间要建立IBGP对等体关系,必须满足两个条件:
•两个路由器所属AS需相同(也即AS号相同)。
•在配置BGP时,Peer命令所指定的对等体IP地址要求路由可达,并且TCP连接能够正确建立

EBGP(External BGP)

位于不同自治系统的BGP路由器之间的BGP邻接关系。
•两台路由器之间要建立EBGP对等体关系,必须满足两个条件:
•两个路由器所属AS不同(也即AS号不同)。
•在配置BGP时,Peer命令所指定的对等体IP地址要求路由可达,并且TCP连接能够正确建立.

eNSP 模拟 OSPF

首先我们要将 BGP AS123 自治域内的网络通过 OSPF 打通,这样使路由可达,能达到 Established 的连接状态,这样便可以将 BGP 域内的 179 端口可达,BGP是需要 179 端口进行组播通信。
这样就可以使 AR1 和 AR3 成为 IBGP 的对等体,IBGP Peer。
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

AR1 配置

通过 LoopBack0 口配置地址来宣告 router-id ,这样可以预防网络抖动。因为LoopBack0 不会关闭。

<Huawei>system-view 
[Huawei]sysname AR1

[AR1]interface GigabitEthernet 0/0/0
[AR1-GigabitEthernet0/0/0]ip address 10.1.12.1 24
May 21 2022 18:12:31-08:00 AR1 %%01IFNET/4/LINK_STATE(l)[0]:The line protocol IP
 on the interface GigabitEthernet0/0/0 has entered the UP state. 
[AR1-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 10.1.12.1 255.255.255.0 
#

[AR1-GigabitEthernet0/0/0]interface l0
[AR1-LoopBack0]ip a 1.1.1.1 32
[AR1-LoopBack0]dis this
[V200R003C00]
#
interface LoopBack0
 ip address 1.1.1.1 255.255.255.255 
#
return
[AR1-LoopBack0]q
[AR1]ospf 1 router-id 1.1.1.1
[AR1-ospf-1]area 0
[AR1-ospf-1-area-0.0.0.0]network 1.1.1.1 0.0.0.0
[AR1-ospf-1-area-0.0.0.0]network 10.1.12.0 0.0.0.255
[AR1-ospf-1-area-0.0.0.0]display this
[V200R003C00]
#
 area 0.0.0.0 
  network 1.1.1.1 0.0.0.0 
  network 10.1.12.0 0.0.0.255 
#
return


AR2 配置

<Huawei>system-view 
Enter system view, return user view with Ctrl+Z.
[Huawei]sysname AR2
[AR2]interface GigabitEthernet 0/0/0
[AR2-GigabitEthernet0/0/0]ip a 10.1.12.2 24
[AR2-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 10.1.12.2 255.255.255.0 
#
return
[AR2-GigabitEthernet0/0/0]int G 0/0/1
[AR2-GigabitEthernet0/0/1]ip a 10.1.23.1 24
[AR2-GigabitEthernet0/0/1]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/1
 ip address 10.1.23.1 255.255.255.0 
#
return
[AR2-GigabitEthernet0/0/1]inter l0
[AR2-LoopBack0]ip a 2.2.2.2 32
[AR2-LoopBack0]dis this
[V200R003C00]
#
interface LoopBack0
 ip address 2.2.2.2 255.255.255.255 
#
return

[AR2-LoopBack0]q
[AR2]ospf 1 router-id 2.2.2.2
[AR2-ospf-1]area 0
[AR2-ospf-1-area-0.0.0.0]network 2.2.2.2 0.0.0.0
[AR2-ospf-1-area-0.0.0.0]network 10.1.12.0 0.0.0.255
[AR2-ospf-1-area-0.0.0.0]network 10.1.23.0 0.0.0.255
[AR2-ospf-1-area-0.0.0.0]display this
[V200R003C00]
#
 area 0.0.0.0 
  network 2.2.2.2 0.0.0.0 
  network 10.1.12.0 0.0.0.255 
  network 10.1.23.0 0.0.0.255 
#
return

AR3 配置

<Huawei>system-view 
[Huawei]sysname AR3
[AR3]interface GigabitEthernet 0/0/0
[AR3-GigabitEthernet0/0/0]ip a 10.1.23.2 24
[AR3-GigabitEthernet0/0/0]dis this
[V200R003C00]
#
interface GigabitEthernet0/0/0
 ip address 10.1.23.2 255.255.255.0 
#
return
[AR3-GigabitEthernet0/0/0]inter l0
[AR3-LoopBack0]ip a 3.3.3.3 32
[AR3-LoopBack0]dis this
[V200R003C00]
#
interface LoopBack0
 ip address 3.3.3.3 255.255.255.255 
#
return
[AR3-LoopBack0]q
[AR3]ospf 1 router-id 3.3.3.3
[AR3-ospf-1]area 0 
[AR3-ospf-1-area-0.0.0.0]network 3.3.3.3 0.0.0.0
[AR3-ospf-1-area-0.0.0.0]network 10.1.23.0 0.0.0.255
[AR3-ospf-1-area-0.0.0.0]dis this
[V200R003C00]
#
 area 0.0.0.0 
  network 3.3.3.3 0.0.0.0 
  network 10.1.23.0 0.0.0.255 
#
return
[AR3-ospf-1-area-0.0.0.0]

查看 ospf peer 状态

OSPF 建立连接 通过 224.0.0.5 发送组播包
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
ospf 邻居状态建立过程
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

[AR1]display ospf peer brief 

	 OSPF Process 1 with Router ID 1.1.1.1
		  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             2.2.2.2          Full        
 ----------------------------------------------------------------------------

[AR2]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.0          GigabitEthernet0/0/1             3.3.3.3          Full        
 ----------------------------------------------------------------------------

[AR3]display ospf peer brief 

	 OSPF Process 1 with Router ID 3.3.3.3
		  Peer Statistic Information
 ----------------------------------------------------------------------------
 Area Id          Interface                        Neighbor id      State    
 0.0.0.0          GigabitEthernet0/0/0             2.2.2.2          Full        
 ----------------------------------------------------------------------------

查看 AR1 - AR3 路由

至此,通过 OSPF 将 AR1 至 AR3 的链路打通,为了后边使用 BGP 的 179 端口做了基础准备
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区![[…/image/Pasted image 20220521183250.png]]
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

IBGP Peer

IBGP 的对等体需要 建立 full mesh 的全连接状态。
同时为了方式 AS 内产生环路,IBGP 不会从 IBGP Peer 学习到的路由通告给其他的 IBGP Peer。
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

AR1 BGP 配置

[AR1]bgp 123	
[AR1-bgp]router-id 1.1.1.1
[AR1-bgp]peer 2.2.2.2 as-number 123
[AR1-bgp]peer 2.2.2.2 connect-interface l0
[AR1-bgp]dis this
[V200R003C00]
#
bgp 123
 router-id 1.1.1.1
 peer 2.2.2.2 as-number 123 
 peer 2.2.2.2 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  peer 2.2.2.2 enable
#
return

AR2 BGP 配置

[AR2]bgp 123
[AR2-bgp]router-id 2.2.2.2
[AR2-bgp]peer 1.1.1.1 as-number 123
[AR2-bgp]peer 1.1.1.1 connect-interface l0
[AR2-bgp]peer 3.3.3.3 as-number 123
[AR2-bgp]peer 3.3.3.3 connect-interface l0
[AR2-bgp]dis this
[V200R003C00]
#
bgp 123
 router-id 2.2.2.2
 peer 1.1.1.1 as-number 123 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 3.3.3.3 as-number 123 
 peer 3.3.3.3 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  peer 1.1.1.1 enable
  peer 3.3.3.3 enable
#
return
[AR2-bgp]
May 21 2022 18:59:46-08:00 AR2 %%01BGP/3/STATE_CHG_UPDOWN(l)[0]:The status of th
e peer 1.1.1.1 changed from OPENCONFIRM to ESTABLISHED. (InstanceName=Public, St
ateChangeReason=Up)  
[AR2-bgp]

AR3 BGP 配置

[AR3]bgp 123
[AR3-bgp]router-id 3.3.3.3
[AR3-bgp]peer 2.2.2.2 as-number 123
[AR3-bgp]peer 2.2.2.2 connect-interface l0
[AR3-bgp]display this
[V200R003C00]
#
bgp 123
 router-id 3.3.3.3
 peer 2.2.2.2 as-number 123 
 peer 2.2.2.2 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  peer 2.2.2.2 enable
#
return

查看 BGP 连接状态

BGP Peer 状态为 Established 即为正常,表示 179 端口可达
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

[AR1]display bgp peer
[AR2]display bgp peer
[AR3]display bgp peer

#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

AR3 宣告路由,AR1 能否学习到?

AR1 和 AR3 是 IBGP 对等体。
验证水平分割
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

<AR3>system-view 
Enter system view, return user view with Ctrl+Z.
[AR3]interface l1
[AR3-LoopBack1]ip a 33.33.33.33 32
[AR3-LoopBack1]dis this
[V200R003C00]
#
interface LoopBack1
 ip address 33.33.33.33 255.255.255.255 
#
return
[AR3-LoopBack1]q

[AR3-bgp]display this
[V200R003C00]
#
bgp 123
 router-id 3.3.3.3
 peer 2.2.2.2 as-number 123 
 peer 2.2.2.2 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  peer 2.2.2.2 enable
#
return

[AR3-bgp]network 33.33.33.33 255.255.255.255
[AR3-bgp]dis this
[V200R003C00]
#
bgp 123
 router-id 3.3.3.3
 peer 2.2.2.2 as-number 123 
 peer 2.2.2.2 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  network 33.33.33.33 255.255.255.255 
  peer 2.2.2.2 enable
#
return

AR3 BGP 路由

display bgp routing-table

#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

AR2 BGP路由

AR2 可以正常学习到 AR3 发布的路由
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

AR1 BGP 路由

AR1 并不能学习到 AR3 的路由,因为 AR1 和 AR3 并未建立连接
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

AR1 AR3 建立连接

注意,此时建立连接是依赖于 OSPF 底层网络建立完毕,179 端口可达的基础上。

AR1

[AR1]bgp 123
[AR1-bgp]peer 3.3.3.3 as-number 123
[AR1-bgp]peer 3.3.3.3 connect-interface l0
[AR1-bgp]dis	
[AR1-bgp]display this
[V200R003C00]
#
bgp 123
 router-id 1.1.1.1
 peer 2.2.2.2 as-number 123 
 peer 2.2.2.2 connect-interface LoopBack0
 peer 3.3.3.3 as-number 123 
 peer 3.3.3.3 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  peer 2.2.2.2 enable
  peer 3.3.3.3 enable
#
return

AR3

[AR3]bgp 123
[AR3-bgp]peer 1.1.1.1 as-number 123
[AR3-bgp]peer 1.1.1.1 connect-interface l0
[AR3-bgp]dis this
[V200R003C00]
#
bgp 123
 router-id 3.3.3.3
 peer 1.1.1.1 as-number 123 
 peer 1.1.1.1 connect-interface LoopBack0
 peer 2.2.2.2 as-number 123 
 peer 2.2.2.2 connect-interface LoopBack0
 #
 ipv4-family unicast
  undo synchronization
  network 33.33.33.33 255.255.255.255 
  peer 1.1.1.1 enable
  peer 2.2.2.2 enable
#
return

查看 BGP Peer 连接状态

#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

再次查看AR1 BGP 路由

此时建立连接以后,就可以正常学习到 AR3 发布的 BGP 路由了。
并且此路由只有 BGP 宣告,没有经过 OSPF,所以此条路由也是最优路由,并且是可达的。
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区
#打卡不停更# eNSP 模拟 OSPF + IBGP Full Mesh-鸿蒙开发者社区

至此,eNSP 模拟 OSPF + IBGP Full Mesh 的实验就进行完毕,对 BGP 有一个简单的认识,然后方便我们下节理解 calico 的 BGP Full Mesh。

©著作权归作者所有,如需转载,请注明出处,否则将追究法律责任
分类
1
收藏
回复
举报
回复
    相关推荐