BGP(边界网关协议)【汇总】

概览:

BGP--EGP    (Border Gateway Protocol)

AS号:自治系统号--运行在同一个管理区域的一组网络设备

范围:1-65535

动态路由协议

内部网关协议:IGP--运行在同一个AS号内部

外部网关协议:EBG--运行在不同AS号之间--EGB/BGPv1/BGPv2/BGPv3/BGPv4

使用场合:大型骨干网络

一、BGP的特点

1.BGP:路径矢量协议(距离矢量协议),矢量指的是方向,路径指的是AS号,BGP在发送路由更新的时候,会携带沿途的AS的信息,并且记录沿途的AS号,形成AS路径

2.基于TCP的179号端口,应用层协议

3.BGP的发言者--BGP speaker--运行的BGP的路由器

4.BGP的对等体--BGP的邻居:分为IBGP对等体和EBGP对等体

IBGP对等体:运行在同一个AS号中的对等体

EBGP对等体:运行在不同AS号之间的对等体

5.BGP是通过单播建立邻居的,要求对方的IP地址可达,对方TCP的179号端口打开,邻居建立之后,需要keepalive用来维护邻居之间的关系,每隔60s发送一次,保持时间是180s。

6.BGP的AS路径:

IBGP:针对IBGP对等体学习到的路由,AS号保持不变

EBGP:针对EBGP对等体学习到的路由,将EBGP对等体的AS号记录下来

7.BGP的环路避免机制

IBGP:IBGP是通过对等体水平分割,从一个IBGP对等体学习到的路由,不会发送给其他IBGP对等体

EBGP:从一个EBGP对等体学习到的路由,会携带AS路径,当AS-path  出现自己AS号,则认为已经环路

二、BGP的报文

open:建立邻居关系,在建邻之间需要进行TCP的三次握手

   会携带建立邻居的参数,参数不匹配就无法建立邻居

keepalive:用来维护邻居之间的关系

update:更新报文,用来更新有用的路由信息,撤销无用的路由信息

             更新有用的路由信息会携带路由的属性,撤销的时候不会携带

notification:报错报文

route refresh:路由刷新报文

三、BGP的邻居建立过程

1. 空闲(Idle):尝试去查找前往邻居的路由

2. 连接(Connect):找到前往邻居的路由,此时要进行TCP的三次握手,如果通过则进入发送状态

3. 打开发送(Open sent):会开始发送OPEN报文

4. 打开确认(Open confirm):互相发送OPEN报文,如果双方参数匹配,此时就会回复Open confirm,进入确认状态

5. 已建立(Established):如果双方都进入确认状态,此时代表已经完成确认,进入Established状态

6. 活跃状态(active):一直想建立邻居,但是由于某些原因建立不成功--协商参数不匹配

注意BGP建立邻居      通告网段    是俩个过程

四、下一跳问题

IBGP:通过IBGP学习到的路由下一跳保持不变

EBGP:通过EBGP学习到的路由下一跳为EBGP对等体的出接口

下一跳不可达?

解决方法:建立IBGP对等体的时候 设置下一跳为自己

r2(config)#router bgp 100

r2(config-router)#neighbor 34.34.34.4 next-hop-self

     总结:是一个边界路由器(即有IBGP对等体,又有EBGP对等体),就需要在和IBGP对等体建立邻居的时候设置下一跳为自己

五、路由黑洞

产生的原因:IBGP内部设备没有外部BGP的路由

解决方法:

1.早期 --- 重分发(流量不大的时候)

2.目前 --- 通过建立全网可达的IBGP对等体--俩俩之间建立IBGP对等体、RR--路由反射器、BGP联盟、BGP对等体、MPLS(标签)

六、更新源问题

       一般情况下,都会使用回环接口来建立IBGP对等体关系,借用了回环接口的稳定性,但是BGP默认是使用物理接口建立邻居到的,所以会因为源、目的不匹配,而导致无法建立邻居。

      解决方法:更改更新源

r4(config-router)#neighbor 2.2.2.2 update-source lo1

BGP的TTL问题--生存时间--每经过一台三层设备TTL减1,当TTL为0时,执行数据包丢弃。

1.默认情况下,向IBGP对等体发送路由时。TTL=255

2.默认情况下,向EBGP对等体发送路由时。TTL=1

r1(config-router)#neighbor 2.2.2.2  ebgp-multihop 10--更改EBGP的TTL值为10

BGP的AD值

IBGP:200

EBGP:20

BGP的身份验证只支持md5

r4(config-router)#neighbor 34.34.34.3 password 666

BGP的属性和选路--update会携带属性

属性的意义就是为了提供BGP选路

七、BGP的选路

BGP的四大属性

1.公认必遵属性        2.公认可选属性

3.可选传递属性        4.可选非传递属性

1.权重

weight(思科私有属性)

①优先选择权重大的

②本地通告的路由权重为32768,学习到的路由权重为0

r10(config)#access-list 1 permit 1.1.2.0 0.0.0.255

r10(config)#route-map 1 permit 10

r10(config-route-map)#match ip address 1

r10(config-route-map)#set weight 32769

r10(config)#route-map 1 permit 20

r10(config)#router bgp 1000

r10(config-router)#neighbor 108.108.108.8 route-map 1 in

2.本地优先级

LocPrf--loacl preference

  ①优先选择本地优先级大的

  ②通过IBGP对等体学习到的路由本地优先级为100

      通过EBGP对等体学习到的为0

r1(config)#access-list 2 permit 10.1.1.0 0.0.0.255

r1(config)#route-map 2 permit 10

r1(config-route-map)#match ip add 2

r1(config-route-map)#set local-preference 101

r1(config)#route-map 2 permit 20

r1(config)#router bgp 1234

r1(config-router)#neighbor 3.3.3.3 route-map 2 in

3.优先本地产生的路由

下一跳为0.0.0.0

   next hop 为0.0.0.0 代表就是本地路由器通告的

4.最短的AS路径

只能增加

(config)#access-list 4 permit 10.1.2.0 0.0.0.255

(config)#route-map 4 permit 10

(config-route-map)#match ip address 4

(config-route-map)#set as-path prepend last-as 3

(config)#route-map 4 permit 20

(config)#router bgp 1234

(config-router)#neighbor 45.45.45.5 route-map 4 in

5.最小的来源代码

i--IGP--代表是network学习到的

e--EGP--代表通过EGP学习到的(不使用、看不到)

?--incomplete--代表是重分发学习到的

优先级: i>e>?     起源值:i<e<?

r10(config)#access-list 5 permit 1.1.3.0 0.0.0.255

r10(config)#route-map 5 permit 10

r10(config-route-map)#match ip address 5

r10(config-route-map)#set origin  incomplete

r10(config)#route-map 5 permit 20

r10(config-router)#neighbor 109.109.109.9 route-map 5 in

6.MED--度量值

BGP中默认是没有度量值的,也就是0

r10(config)#access-list 6 permit 7.1.1.0 0.0.0.255

r10(config)#route-map 6 permit 10

r10(config-route-map)#match ip address 6

r10(config-route-map)#set metric 10

r10(config)#route-map 6 permit 20

r10(config-router)#neighbor 108.108.108.8 route-map 6 in

7.优选EBGP(AD:20)路径,次选IBGP(AD:200)路径

eigrp:90内 170外   ospf:110   rip:120

8.选择通往最近的IBGP邻居

9.选择最老路由的EBGP路径

10.选择具有最低邻居BGP路由器ID的路径

11.选择具有最低邻居IP地址的路径

基本配置

r1(config)#router bgp 200

r1(config-router)#neighbor 12.12.12.2 remote-as 100

r1(config-router)#network 1.1.1.0 mask 255.255.255.0--精确通告

r3#clear ip bgp * soft --软清

r1#clear ip bgp *  --硬清

r2#show ip bgp neighbors --查看BGP邻居的详细信息

r2#show ip bgp summary  --查看BGP邻居的简要信息

r2#show ip bgp --查看BGP表

r2#sh ip route bgp --查看BGP的路由表

  • 16
    点赞
  • 16
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Jun_Share

能不花就省点~

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值