配置BGP的基本示例

news/2025/1/12 21:53:34/

目录

BGP简介

BGP定义

配置BGP目的

 受益

实验 

实验拓扑

​编辑 组网需求

配置思路

 配置步骤

   配置各接口所属的VLAN

配置各Vlanif的ip地址

配置IBGP连接

配置EBGP

查看BGP对等体的连接状态

配置SwitchA发布路由10.1.0.0/16

配置BGP引入直连路由


BGP简介

BGP定义

边界网关协议BGP(Border Gateway Protocol)是一种实现自治系统AS(Autonomous System)之间的路由可达,并选择最佳路由的距离矢量路由协议。早期发布的三个版本分别是BGP-1(RFC1105)、BGP-2(RFC1163)和BGP-3(RFC1267),1994年开始使用BGP-4(RFC1771),2006年之后单播IPv4网络使用的版本是BGP-4(RFC4271),其他网络(如IPv6等)使用的版本是MP-BGP(RFC4760)。

MP-BGP是对BGP-4进行了扩展,来达到在不同网络中应用的目的,BGP-4原有的消息机制和路由机制并没有改变。MP-BGP在IPv6单播网络上的应用称为BGP4+,在IPv4组播网络上的应用称为MBGP(Multicast BGP)。

配置BGP目的

为方便管理规模不断扩大的网络,网络被分成了不同的自治系统。1982年,外部网关协议EGP(Exterior Gateway Protocol)被用于实现在AS之间动态交换路由信息。但是EGP设计得比较简单,只发布网络可达的路由信息,而不对路由信息进行优选,同时也没有考虑环路避免等问题,很快就无法满足网络管理的要求。

BGP是为取代最初的EGP而设计的另一种外部网关协议。不同于最初的EGP,BGP能够进行路由优选、避免路由环路、更高效率的传递路由和维护大量的路由信息。

虽然BGP用于在AS之间传递路由信息,但并不是所有AS之间传递路由信息都需要运行BGP。比如在数据中心上行的连入Internet的出口上,为了避免Internet海量路由对数据中心内部网络的影响,设备采用静态路由代替BGP与外部网络通信。

 受益

BGP从多方面保证了网络的安全性、灵活性、稳定性、可靠性和高效性:

  • BGP采用认证和GTSM的方式,保证了网络的安全性。

  • BGP提供了丰富的路由策略,能够灵活的进行路由选路。

  • BGP提供了路由聚合和路由衰减功能用于防止路由振荡,有效提高了网络的稳定性。

  • BGP使用TCP作为其传输层协议(端口号为179),并支持BGP与BFD联动、BGP Tracking和BGP GR,提高了网络的可靠性。

实验 

实验拓扑

 组网需求

如实验拓扑所示,需要在所有Switch上运行BGP协议,SwitchA、SwitchB之间建立连接,SwitchB、SwithC和SwitchD之间建立IBGP全连接 

配置思路

采用如下的思路配置BGP的基本功能:

  1. 在SwitchB、SwitchC和SwitchD间配置IBGP连接。
  2. 在SwitchA和SwitchB之间配置EBGP连接。

 配置步骤

   配置各接口所属的VLAN

     ###配置SwitcA。SwitchB、C和D的配置与SwitchA相似

<Huawei>system-view 
[Huawei]sysname SwitchA
[SwitchA]undo info-center enable 
[SwitchA]vlan batch 10 50
[SwitchA]interface GigabitEthernet 0/0/1
[SwitchA-GigabitEthernet0/0/1]port link-type trunk 	
[SwitchA-GigabitEthernet0/0/1]port trunk allow-pass vlan 10
[SwitchA-GigabitEthernet0/0/1]quit
[SwitchA]interface GigabitEthernet 0/0/2
[SwitchA-GigabitEthernet0/0/2]port link-type trunk 	
[SwitchA-GigabitEthernet0/0/2]port trunk allow-pass vlan 50
[SwitchA-GigabitEthernet0/0/2]quit
[SwitchA]
配置各Vlanif的ip地址

##配置SwitchA。SwitchB、SwitchC和SwitchD的配置与SwitchA类似。

[SwitchA]interface Vlanif 10
[SwitchA-Vlanif10]ip address 192.168.1.2 24
[SwitchA-Vlanif10]quit
[SwitchA]interface Vlanif 50	
[SwitchA-Vlanif50]ip address 10.1.1.1 16
[SwitchA-Vlanif50]quit
[SwitchA]
配置IBGP连接

##SwitchB的配置

[SwitchB]bgp 65009
[SwitchB-bgp]router-id 172.17.2.2	
[SwitchB-bgp]peer 172.16.1.2 as-number 65009
[SwitchB-bgp]peer 172.16.3.2 as-number 65009
[SwitchB-bgp]quit
[SwitchB]

##SwitchC的配置

[SwitchC]bgp 65009
[SwitchC-bgp]router-id 172.17.3.3	
[SwitchC-bgp]peer 172.16.3.1 as-number 65009
[SwitchC-bgp]peer 172.16.2.2 as-number 65009

##SwitchD的配置

[SwitchD]bgp 65009
[SwitchD-bgp]router-id 172.17.4.4
[SwitchD-bgp]peer 172.16.1.1 as-number 65009	
[SwitchD-bgp]peer 172.16.2.1 as-number 65009
[SwitchD-bgp]quit
[SwitchD]	
配置EBGP

##SwitchA的配置

[SwitchA]bgp 65008	
[SwitchA-bgp]router-id 172.17.1.1
[SwitchA-bgp]peer 192.168.1.1 as-number 65009
[SwitchA-bgp]quit
[SwitchA]

##SwitchB的配置

[SwitchB]bgp 65009
[SwitchB-bgp]peer 192.168.1.2 as-number 65008
[SwitchB-bgp]quit
[SwitchB]
查看BGP对等体的连接状态
[SwitchB]display bgp peer BGP local router ID : 172.17.2.2Local AS number : 65009Total number of peers : 3		  Peers in established state : 3Peer            V          AS  MsgRcvd  MsgSent  OutQ  Up/Down       State Pre
fRcv172.16.1.2      4       65009        5        6     0 00:03:01 Established    0172.16.3.2      4       65009        6        7     0 00:04:04 Established    0192.168.1.2     4       65008        3        2     0 00:01:00 Established    0
[SwitchB]

可以看出,SwitchB与其他Switch的BGP连接均已建立

配置SwitchA发布路由10.1.0.0/16

##配置SwitchA发布路由

[SwitchA]bgp 65008	
[SwitchA-bgp]ipv4-family unicast 
[SwitchA-bgp-af-ipv4]network 10.1.0.0 255.255.0.0
[SwitchA-bgp-af-ipv4]quit
[SwitchA-bgp]quit
[SwitchA]

##查看SwitchA路由表信息

[SwitchA]display bgp routing-table BGP Local router ID is 172.17.1.1 Status codes: * - valid, > - best, d - damped,h - history,  i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 1Network            NextHop        MED        LocPrf    PrefVal Path/Ogn*>   10.1.0.0/16        0.0.0.0         0                     0      i
[SwitchA]

##查看SwitchB的路由表

[SwitchB]display bgp routing-table BGP Local router ID is 172.17.2.2 Status codes: * - valid, > - best, d - damped,h - history,  i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 1Network            NextHop        MED        LocPrf    PrefVal Path/Ogn*>   10.1.0.0/16        192.168.1.2     0                     0      65008i
[SwitchB]

##查看SwitchC的路由表

[SwitchC]display bgp routing-table BGP Local router ID is 172.17.3.3 Status codes: * - valid, > - best, d - damped,h - history,  i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 1Network            NextHop        MED        LocPrf    PrefVal Path/Ogni  10.1.0.0/16        192.168.1.2     0          100        0      65008i
[SwitchC]

从路由表可以看出,SwitchC学到了AS65008中10.1.0.0的路由,但因为下一跳192.168.1.2不可达,所以也不是有效路由

配置BGP引入直连路由

##配置SwitchB

[SwitchB]bgp 65009
[SwitchB-bgp]ipv4-family unicast 	
[SwitchB-bgp-af-ipv4]import-route direct 
[SwitchB-bgp-af-ipv4]quit
[SwitchB-bgp]quit
[SwitchB]

##查看SwitchA的BGP路由表

[SwitchA]display bgp routing-table BGP Local router ID is 172.17.1.1 Status codes: * - valid, > - best, d - damped,h - history,  i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 4Network            NextHop        MED        LocPrf    PrefVal Path/Ogn*>   10.1.0.0/16        0.0.0.0         0                     0      i*>   172.16.1.0/24      192.168.1.1     0                     0      65009?*>   172.16.3.0/24      192.168.1.1     0                     0      65009?192.168.1.0        192.168.1.1     0                     0      65009?
[SwitchA]

查看SwitchC的BGP路由表

[SwitchC]display  bgp routing-table BGP Local router ID is 172.17.3.3 Status codes: * - valid, > - best, d - damped,h - history,  i - internal, s - suppressed, S - StaleOrigin : i - IGP, e - EGP, ? - incompleteTotal Number of Routes: 4Network            NextHop        MED        LocPrf    PrefVal Path/Ogn*>i  10.1.0.0/16        192.168.1.2     0          100        0      65008i*>i  172.16.1.0/24      172.16.3.1      0          100        0      ?i  172.16.3.0/24      172.16.3.1      0          100        0      ?*>i  192.168.1.0        172.16.3.1      0          100        0      ?
[SwitchC]

可以看到,到10.1.0.0的路由变为有效路由,下一跳为SwichA的地址

##使用ping进行验证

[SwitchC]ping 10.1.1.1PING 10.1.1.1: 56  data bytes, press CTRL_C to breakReply from 10.1.1.1: bytes=56 Sequence=1 ttl=254 time=50 msReply from 10.1.1.1: bytes=56 Sequence=2 ttl=254 time=60 msReply from 10.1.1.1: bytes=56 Sequence=3 ttl=254 time=70 msReply from 10.1.1.1: bytes=56 Sequence=4 ttl=254 time=70 msReply from 10.1.1.1: bytes=56 Sequence=5 ttl=254 time=30 ms--- 10.1.1.1 ping statistics ---5 packet(s) transmitted5 packet(s) received0.00% packet lossround-trip min/avg/max = 30/56/70 ms[SwitchC]

http://www.ppmy.cn/news/1277061.html

相关文章

Curl多线程https访问,崩溃问题修复

Curl: &#xfffd;&#xfffd;: SSL and multithread crash on windows, how to use mutex on windows? SSL and multithread crash on windows, how to use mutex on windows? From: mao mao <lmjrd_at_hotmail.com> Date: Fri, 25 Nov 2016 09:50:48 0000 Thank…

apache poi_5.2.5 实现对表格单元格的自定义变量名进行图片替换

apache poi_5.2.5 实现对表格单元格的自定义变量名进行图片替换 实现思路 1.首先定位到自定义变量名 2.然后先清除自定义变量名&#xff0c;可利用setText(null,0)来清除 3.在自定义变量名的位置添加图片&#xff0c;使用下面的代码 4.对于图片布局有要求的&#xff0c;利用C…

大模型三级跳:2023年AI行业的崭新篇章

2023年&#xff0c;大模型的发展如同一场三级跳&#xff0c;迅速跃升至新的高度。从ChatGPT的火爆&#xff0c;到众多大厂纷纷入场&#xff0c;再到百模大战的激烈角逐&#xff0c;这一年的AI行业充满了竞争与变革。 首先&#xff0c;大模型的崛起标志着AI技术进入了一个新的阶…

【csapp】bufferlab

文章目录 实验要求实验内容Level 0Level 1Level 2Level 3Level 4 实验要求 Level 0 test 运行完后&#xff0c;不直接返回退出&#xff0c;而是跳到smoke函数处&#xff0c;继续运行&#xff0c;当 smoke 运行完毕后退出Level 1 在 Level 0 的基础上&#xff0c;使 getbuf 函数…

solidity 重入漏洞

目录 1. 重入漏洞的原理 2. 重入漏洞的场景 2.1 msg.sender.call 转账 2.2 修饰器中调用地址可控的函数 1. 重入漏洞的原理 重入漏洞产生的条件&#xff1a; 合约之间可以进行相互间的外部调用 恶意合约 B 调用了合约 A 中的 public funcA 函数&#xff0c;在函数 funcA…

Linux基础第一章:基础知识和基础命令(1)

目录 一.虚拟机网络-网卡的三种连接方式 二.Linux基础知识 1.linux的哲学思想 2.分区 3.命令行头解释 4.根目录下的常见文件 bin dev proc boot etc tmp var mnt opt home lib lib64 usr 5.shell 6.命令基础 内部命令 命令执行的过程 命令行格式 命令 …

sklearn和tensorflow的理解

人工智能的实现是基于机器学习&#xff0c;机器学习的一个方法是神经网络&#xff0c;以及各种机器学习算法库。 有监督学习&#xff1a;一般数据构成是【特征值目标值】 无监督学习&#xff1a;一般数据构成是【特征值】 Scikit-learn(sklearn)的定位是通用机器学习库&…

ChatGPT如何计算token数?

GPT 不是适用于某一门语言的大型语言模型&#xff0c;它适用于几乎所有流行的自然语言。所以 GPT 的 token 需要 兼容 几乎人类的所有自然语言&#xff0c;那意味着 GPT 有一个非常全的 token 词汇表&#xff0c;它能表达出所有人类的自然语言。如何实现这个目的呢&#xff1f;…