BGP小实验

协议工作过程:

建邻配置完成后,邻居间基于TCP的179端口,通过TCP的三次握手建立TCP会话;

(邻居间已知对端单播地址---地址可达---BGP承载于IGP之上)

会话建立后,所有的BGP数据包全部基于TCP会话进行传递和可靠性的 保障;

邻居间正常仅接受一次open报文,交互RID,相互认识去,建立邻居关系;生成邻居表

邻居关系建立后;正常每一分钟keeplive周期保活TCP会话即可;

之后管理员可以根据网络的实际需要,选择性将本地路由表中通过任何来源产生的路由条目;宣告到BGP协议中,有BGP共享给所有的BGP邻居---更新包 update;

生成BGP表——>装载本地发出以及接受到的所有BGP路由;

仅将本地BGP表中最优(参数最好) 路由条目加载于本地路由表;默认不支持负载均衡 收敛完成,无周期更新;仅keeplive保活;

实验拓扑图:

 实验要求:

除R5的环回以外,其余所有的环回均可互相访问;

过程配置:

1.基础的ip地址配置,在这里就不展示了

2.在AS2内部启用OSPF协议

 R2:

R3:

R4:

 配置结束可以测试一下AS2内是否互通

3.BGP关系的建立

BGP的相关知识点:

BGP协议本身不产生路由,而是转发本地路由表中来自其他协议生成的路由条目;

AS之间正常存在大量的BGP邻居关系,且BGP协议不会计算最佳路径;因此在BGP协议中管理员需要进行策略来干涉选路;

 BGP的特点:
  1. 无类别路径矢量 -----距离矢量的升级版---AS--BY--AS
  2. 使用单播更新来发送所有信息;基于TCP 179端口工作
  3. 增量更新--仅触发无周期
  4. 具有丰富的属性来取代IGP中度量进行选路----多个参数控制协议
  5. 可以在进项和出项对流量实施强大的策略--可控性
  6. 默认不被用于负载均衡-----通过各种选路规则仅仅产生一条最佳路径
  7. BGP支持认证和聚合(汇总)
BGP的数据包: 

基于TCP的179端口工作;故BGP协议中所有的数据包均需要在tcp会话建立后,基于TCP的会话来进行传输及可靠性的保障;

首先通过TCP的三次握手来寻找到邻居;

Open       仅负责邻居关系的建立,正常进收发一次即可;携带route-id;

Keeplive    保活    周期1min查询邻居关系是否存在;实际保活TCP会话;hold time 默认3min

Update     携带路由条目     目标网络号+各种属性

Notification   出现错误数据时收发;

需要注重了解的名词:

邻居---直连  因为BGP协议中存在非直连邻居的需求,故BGP邻居称为毗邻关系;

EBGP邻居关系 ----  外部BGP邻居关系,建邻的两台设备处于不同的AS中

IBGP邻居关系  ---- 内部BGP邻居关系,建邻的两台设备处于相同的AS中

 BGP的路由黑洞:

非直连建邻到达控制层面路由条目可传递,递归计算路由可达;

而实际数据层面流量在经过没有运行BGP协议的路由器时无法通过,最终有去无回

  1. 物理、逻辑拓扑全连 --  物理链路直连、或者vpn
  2. 邻居关系全连 – 网络中所有设备运行BGP
  3. BGP重发布到IGP(LAB)
  4. MPLS 多协议标签交换--- 推荐做法
 BGP的防环机制:水平分割

1、EBGP水平分割—解决EBGP环路;

依赖了BGP路由条目中的一种属性来进行防环;AS-PASH路径属性;

BGP协议在传递路由条目的过程中,将记录所有经过的AS的编号;

EBGP水平分割—接收到的路由条目中,若存在本地的AS号将拒绝该条目进入;

2、IBGP水平分割解决IBGP环路由中的一种机制

  本地从一个IBGP邻居处学习到的路由条目,不得传递给本地的其他IBGP邻居;

AS-BY-AS在一个AS内部条目传递的过程中,默认不会修改任何的属性;

由于BGP可以非直连建立邻居关系,故在一个AS内部,可以通过与多台运行BGP协议的路由器建立BGP邻居关系,来稳定关系网络;因此在一个AS内部运行BGP协议的设备,正常均存在EBGP邻居(均同时连接其他AS)

在IBGP水平分割的限制下,虽然避免了IBGP的环路产生,但同时也使得AS内部为了能够传递路由条目,必须两两间建立IBGP邻居关系,邻居关系成指数上升,配置量巨大;

后期可以依赖打破水平分割的机制来解决---联邦、路由反射器

由图可知R1和R5之间为EBGP

[R1]bgp 1
[R1-bgp]router-id 1.1.1.1
[R1-bgp]peer 12.1.1.2 as-number 2

[R2]bgp 2
[R2-bgp]router-id 2.2.2.2
[R2-bgp]peer 12.1.1.1 as-number 1

[R5]bgp 3
[R5-bgp]router-id 5.5.5.5
[R5-bgp]peer 45.1.1.1 as-number 2

[R4]bgp 3
[R4-bgp]peer 45.1.1.2 as	
[R4-bgp]peer 45.1.1.2 as-number 3

 注:IBGP邻居关系建立,在一个AS内部,拓扑正常较为负载;建议使用环回接口地址作为源、目标ip地址
为了避免BGP路由黑洞的产生,as2中所有的设备均运行bgp协议,为了让传入的路由为优秀可以传递和加表,需要修改下一跳。

R2,R3,R4之间建邻

[R2]bgp 2
[R2-bgp]peer 3.3.3.3 as    
[R2-bgp]peer 3.3.3.3 as-number 2
[R2-bgp]peer 3.3.3.3 co    
[R2-bgp]peer 3.3.3.3 connect-interface l    
[R2-bgp]peer 3.3.3.3 connect-interface LoopBack 0
[R2-bgp]peer 4.4.4.4 as    
[R2-bgp]peer 4.4.4.4 as-number 2
[R2-bgp]peer 4.4.4.4 co    
[R2-bgp]peer 4.4.4.4 connect-interface l    
[R2-bgp]peer 4.4.4.4 connect-interface LoopBack 0

 

 bgp邻居建立完后,邻居间则通过三次握手,建立TCP会话;当TCP会话建成后,邻居间BGP协议将正常收发一次open报文,建立BGP邻居关系,生成邻居表;

EBGP邻居间存在多条物理链路时,也建议使用环回接口地址来建立

{1}IP可达,建议静态路由

{2}正常环回做为源、目ip地址建立邻居关系

{3}默认IBGP邻居间数据包的TTL值为255,EBGP邻居间TTL为1;故一旦使用环回建立ebgp邻居关系,必须修改TTL值,否则无法建立

 R4与R5做相同的操作;

4.宣告

 R4进行宣告,

 同时写上R4到达R5环回的路由;并查看bgp路由表发现达到目的;

要让R5的5.5.5.5到达R4,则需要删除原来的静态路由,改成如图的情况;R5也要保持和R4相同的静态路由操作

查看各路由器的bgp表---dis bgp routing-table

5.测试ping

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值