XCIE-HUAWEI-超级完整的BGP-1

XCIE-HUAWEI-超级完整的BGP-1

声明,内容对比前面的可能差一点,因为这个BGP我是会的,但是华为的特性啥的不太会
所以相对来说可能没那么详细,不过应该也够的了,要看思科的翻我的文章去有思科的

先说一个东西
面试会问到的哈
BGP和OSPF的network有什么区别
BGP和OSPF的network 0.0.0.0 0.0.0.0 分别代表什么
答案
1.BGP的network是宣告路由表,OSPF想宣告什么宣告什么
换句话说,如果这条路由条目不存活,或者不在路由表中,则无法宣告
2.OSPF的network八个0代表宣告本机所有接口
而BGP中的八个0代表宣告默认路由的意思

关于华为官网的列举的BGP的东西太多了,就不发出来了
我会一个一个解释哈

BGP前言

首先呢,这个东西,可能比我还大,我03年的
然后,现在用的都叫BGP第四版
曾经呢,有个东西叫EGP,不是外部外网关协议,而是他就叫EGP
然后呢,他也没有防环,也垃圾,慢慢的就被淘汰了
BGP和OSPF,ISIS,EIGRP这些路由协议一样,一样是有这个AS号的
自治系统区间

在BGP中
-同一个AS的叫IBGP
-不同一个AS的叫EBGP

这个AS呢,我们是拿不到的,得去申请哈,在这个IANA里面,一个AS号我记得是2w吧,然后一个月又2w,反正挺贵的,公网上的BGP-AS号,是由IANA-这个国际组织去分配的。这个事情是运营商去做的,我们呢跟运营商申请就行

as的范围呢就是
私有AS:64512-65535(相当于私网IP)
公有AS:1-64511
单个设备上只能启动一个BGP进程
因为BGP非常消耗设备的内存
在这里插入图片描述

小知识
中国电信呢
有三张网络
一个叫CN2。基于MPLS VPN的,也是用来提供MPLS的,比163网牛逼很多,而且也有外国出口,欧洲,美洲的出口等
一个是DCN,网管的,终端呀,管理核心设备的,啥的
一个是163网,也叫ChinNet网,是中国最大的互联网,基本上客户都在这,提供国际的出口

然后BGP的叫法挺有意思的
BGP在华为里面呢,叫路径矢量路由协议
但是在思科里面呢,叫距离矢量路由协议
一旦是这个矢量,就代表传递路由表,所以OSPF不叫这个,因为OSPF传递的是LSA

IBGP和EBGP(BGP的邻居类型)

BGP即可做内部网关协议也可以作为外部网关协议
IBGP —— (Internal Border Gateway Protoco)
EBGP —— (External Border Gateway Protoco)

IBGP=同一个AS号,其中这个i,你理解为in也行,Internal也可以,内部

AS理解为工号,同一个工号的才可以信任
所以IBGP的特点就是
第一,使用IGP来计算和发现路由,同一个AS的是互相信任的。
因此IGP的路由计算和信息泛洪处于完全开放状态,简单的说人为不用怎么干预

EBGP=不同一个AS号

不同AS的,你就不是中国人!不是一类的,所以E,外部External
BGP里面的IBGP意义不太大,但是不能说没有
最大意义的还是EBGP
因为他可以让全球互联,还能结合MPLS的使用
记住了哈,无论是什么品牌,EBGP默认调试=1=TTL=1

一个比较明显的特点
IBGP是计算的
EBGP是不计算的,你给他啥他就学啥了

工作

BGP是建立在OSI的第七层应用应用层的,使用TCP目的端口179工作
由于BGP是使用TCP的底层,so,BGP的邻居建立可以跨越多跳,啥意思呢?
在OSPF里面
A-B-C (必须全部彼此建立)
在OSPF里面
A-B-C
只要ABC的底层互通了,那么A和C可以建立邻居(与B无关)

这个很重要的哈,有依有据

BGP邻居

BGP邻居状态机有6个

只有这个是有用的(Established)
其他的都是废的

BGP的报文
BGP对等体间通过以下5种报文进行交互,其中Keepalive报文为周期性发送,其余报文为触发式发送:

Open报文:用于建立BGP对等体连接。

Update报文:用于在对等体之间交换路由信息。

Notification报文:用于中断BGP连接。

Keepalive报文:用于保持BGP连接。

Route-refresh报文:用于在改变路由策略后请求对等体重新发送路由信息。只有支持路由刷新(Route-refresh)能力的BGP设备会发送和响应此报文。

在这里插入图片描述
既然是TCP,TCP嘛,三次握手,开回顾一波

TCP三次握手

比如A-B
B发起TCP连接=TCP-SYN=请求连接
A会回复一个TCP,ACK+SYN=回复+确认
B收到之后再回复一个ACK=双向确认
A会在给一个四次挥手

环境

在这里插入图片描述
上面讲过,因为BGP是需要基于TCP的
换句话说就是三层以上,那就是=有路由了
那么假设现在左边为中国,中间是世界,右边是美国
那么这个时候中美需要建立AS=1的BGP的关系
在这里插入图片描述
左边为10段,右边为20段
R1上的这个代表啥呢?
BGP和OSPF不一样
他不是宣告就=邻居+网络了

BGP里面得手动指定邻居和宣告网络才可以

解释一下
邻居IP为20.1.1.2,AS号为1
当然在对端上也要写过来

与此同时,也带有三层含义(后面就知道为什么这样说了)
第一。指定了发送BGP报文的目的IP
第二,指定了邻居路由器的AS号
第三,邻居向我发送报文的源地址

在这里插入图片描述
在这里插入图片描述

display bgp peer

记住了 ,只有这个状态才是正常的,其他都是不成功的

说到这里了就讲讲这个邻居表怎么看

在这里插入图片描述
首先
BGP local router ID :这个不用说了,就是RID
RID呢,任何的路由协议都是一样的,标识符
那么在BGP里面的RID选举是咋样的呢?

一毛一样
1.手动配置的RID
2.不配置的情况下自动选择最大的Lo接口
3.以上都没有的情况下选择最大的IP接口

Local AS numbem:本地的AS编号

Total number of peers:代表指定了几个邻居(也叫对等体)

Peers in established state : 已经建立连接的

Peerfrcv这个是对端的接口IP

V是版本的意思=version

AS=AS号

MsgRcvd=接收报文

MsgMent=发送报文

OutQ=0(一般情况下都是0,不是0反而有问题了,意思是队列,在传输队列的意思,或者他发不出去)

Up/down 建立时间

State Pre:状态

口说无凭,抓个包玩玩

抓的是R1的G0/0/0口
在这里插入图片描述

reset bgp all //相当于OSPF里面的软重启
我们来看看BGP建立邻居的过程

在这里插入图片描述
首先,我把它干断了,红色的。

BGP的OPEN报文仅仅用来建立邻居,不参与维护邻居
在这里插入图片描述
BGP的
在这里插入图片描述
OSPF的
在这里插入图片描述

这也是为什么BGP可以跨设备的原因

邻居讲完了,该说路由了

当然了,一样是network这个不会变的哈
在这里插入图片描述

开头讲过,BGP是宣告路由表的,那么就是我路由表里面有的我才能宣告
在这里插入图片描述
做了一个环回口
在这里插入图片描述
宣告进去

BGP路由

在这里插入图片描述
在这边已经通过了IBGP的方式学到了

默认情况下,EBGP和IBGP的优先级均为255

那么在BGP里面有LSDB这个东东吗

答案是有的,但是他不叫LSDB,LSDB是链路状态数据库
在BGP里面,他叫路由表

display bgp routing-table

在这里插入图片描述
至于每个代表啥,后面会讲
现在只需要知道,这个路由条目前面带一个>,代表的是
可以进入路由表
BGP的工作流程是首先获取路由,然后到自己路由表中计算,最优的才能加入路由表= > 这个标识符
*>=有效的最优的路由
*=有效

best 最优

BGP的一些东西在思科的那一章也有写,或许更多

BGP更新机制

1.触发更新
2.管理员手动触发更新
因为BGP更新很慢,所以一般会结合BFD或者说更改源地址

啥是手动更新呢?
在这里插入图片描述
手动发一次,如果是ALL则是双向
如果是export,则是手动更新给其他邻居
如果是import,则是手动更新给自己(因为很多时候会有引入)

什么是改源呢?

就是说,修改BGP路由更新的源地址

为什么这样做呢?

第一
环回口有一个特点
就是他无法被down,也不可能down,他down的情况只有一种就是设备挂了
如果设备挂了的话,就别说BGP了,直连都没了啥都没了
第二,通常每个设备上都有一个lo接口
作为设备的标识符
那么呢,在BGP里面的RID,也可以用这个lo口
然后呢,做更新源是啥意思呢?
比如上面的那个左边10右边20
那么对于10来说目的地址就是20
反之,对于20来说目的地是10
我这个时候把他改成lo口,这样更新会稳定跟多
但是带来的影响

1.路由问题(源目接口的更改)
2.跳数问题(EBGP)

所以要求这个修改更新源,也要保证这个源,对端也有他的TCP连接,就是说有路由的意思

修改办法

在这里插入图片描述

neighbor x.x.x.x update-source loopback 0 (思科)

BGP路由黑洞问题

在这里插入图片描述
注意看,现在有路由的情况下,是不通的
为什么呢?
先别慌
首先
在BGP和往后的学习中,这种情况,很常见

so why

因为,R2没路由
为什么呢??
不是说跟R2没关系嘛
BGP的只是R1和R3呀
但是我们来看路由表(不看bgp表)

在这里插入图片描述
对于BGP来说他是有了但是对于R2来说,这啥啊,没路由,我给谁啊,又没默认路由,扔了扔了。
这就形成了路由黑洞了

解决办法xxx---后面再说

IBGP和EBGP对等体的路由的问题

因为,对于BGP的下一跳的修改问题

1.对于路由器的始发路由,传输给BGP邻居的时候,自动修改下一跳,为本机,就是我发出去的,下一跳来找我

IBGP进入IBGP的问题

在IBGP中,如果IBGP的邻居传输一条来自IGBP的邻居路由给EBGP邻居的时候,那么会自动修改下一跳为自己

说的可能怪怪的,上个图吧
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

捋一捋哈,别晕了
R3和R1是IBGP的邻居
那么
R1传输来自R3的路由,给R5的时候(IBGP给EBGP来自IBGP的路由)
这个时候,他会自动修改下一跳
就是告诉R5,这条路由,下一跳找我就行了

这样描述应该很可以了,自己看着理解吧

IBGP进入IBGP的问题(也是IBGP的防环原则)

谁告诉你完了?
把耳朵捡起来!!!
先说重点:一个IBGP设备收到一条IBGP的路由,他不会转发给他的IBGP的邻居
什么意思呢?

在这里插入图片描述
还是这个图,还是这个系列,AR6新接入,也是为AS1

再讲一次
R3-R5(EBGP)
R3-R6(IBGP)
IBGP设备从EBGP学到的路由不会转发给他的任何的一个IBGP的邻居
R5发给R3的路由,他不会发给R1,AR6

口说无凭上配置
在这里插入图片描述
在这里插入图片描述
在R6的BGP表中(可以理解为全网网络)
并没有来自下方(R1) 网络的路由
这条2.2.2.2是他们两个直连的,就是R3的环回口的路由

EBGP进入IBGP

先说重点:当IBGP学到EBGP的路由再发给IBGP的邻居的时候,不会修改下一跳

还是这个拓扑图
在这里插入图片描述

我在R5上添加了一个lo口并且宣告到EBGP中

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

来到R1上查看路由表
发现200.200.200.200并没有加表,而且他的下一跳是30.1.1.2(R5)
但是R3可以
 当IBGP学到EBGP的路由再发给IBGP的邻居的时候,不会修改下一跳
 看好了
 R3-R5(EBGP)
 R1-R3(IBGP)
 R3从R5学来的EBGP的路由
 发给R1的时候(IBGP)
 不会修改下一跳
这个咋解决呢?
告诉R1以及其他的IBGP邻居,下一跳,找我就行了
咋做呢?
R3上

在这里插入图片描述
告诉1.1.1.1,你收到我的路由的时候的下一跳,指向我
这个时候再来看(1.1.1.1=R1)的路由表的情况
在这里插入图片描述

现在不要去ping哈,告诉你,除了直连百分百都不通

这个啥时候会用到呢?
答:
当你的设备为边界设备的时候,连接外部的EBGP邻居的时候
向你的IGBP邻居做这个配置,告诉他们,下一跳,is me

EBGP进入EBGP

EBGP进入BEGP的时候,会自动修改下一跳

在这里插入图片描述
当AR6发给AR3的路由的时候,AR3发给AR5,这个时候会自动修改下一跳
在这里插入图片描述
在这里插入图片描述

总结一波,有点多哈

BGP-大型路由协议,即可内网也可以外网,TCP-179-OSI第七层应用层
区分邻居
IBGP=内部=ttl=255=优先级255=同一个AS号
EBGP=外部=ttl=1=优先级255=不同的AS号
(均为默认值)
互相进入
1.始发的路由直连都会自动修改下一跳
2.IBGP设备收到{IBGP}邻居发来的路由进入EBGP的时候,会自动修改下一跳
3.IBGP设备收到{IBGP}邻居发来的路由不会发给任何一个IBGP邻居(IBGP防环原则)
4.顺带提一下,EBGP的防环原则是AS-PATH,简单的说就是路由器水平分割一样的,具体后面讲
5.当IBGP设备学到{EBGP}的路由再发给IBGP的邻居的时候,不会修改下一跳
解决办法:指定本机为IBGP邻居的下一跳,用于边界(PE,CE)
6.EBGP进入EBGP,是最正常的,会自动修改下一跳
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

CCIE-Yasuo

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值