CCNP-第九篇-BGP(一)
首先,开工啦,祝大家2022新年快乐
虎年大吉,虎虎生威哦
BGP是一个网络工程师的分水岭
这是真的,BGP一般很大的企业才能用得上,或者ISP运营商
人家可以不用,但是你不能不会吧,
BGP,CCIE必考
BGP有四节课基础,后面CCIE的部分还有
从BGP开始就要换一种理念
因为之前都是IGP协议
BGP能支持IGP,也能支持EGP(一个内部,一个外部)
Border Gateway Protocol,边界网关协议,顾名思义用在边界
1.BGP位于OSI的第七层应用层
2.BGP使用协议号179
3.BGP支持内网以及外网
4,常见的BGP使用场景:
一.数据中心,Date Center
二.运营商内部
三.运营商与运营商之间
四.大型企业的各个分支的互联
(比如亲自做过的,佛山美的-世界五百强)
5.一种新型的东西叫做SD-WAN,跟BGP不一样,但是大体上相似
,比BGP省钱的多,也很多人用,实现功能跟BGP差不多
6,通常BGP会很OSPF结合使用,OSPF用来跑底层,只宣告互联接口IP,
然后重分布BGP或者直接起PE或者CE设备的BGP
7.BGP拥有通告的AS系统内的`全网`的明细路由条目
BGP适用于上行数据大,下行数据小的环境(数据中心,网盘,爱奇艺)
TAG:你只能管理数据从拿出去的,你不能管理数据怎么进来的
比如,你去打开百度,同一个地方 不同的dns将会决定你往哪访问
BGP
种类
首先BGP有两种
IBGP=内部网络=同一个AS号
EBGP=外部网络=不同AS号
其中,IBGP的管理距离为200
EBGP的管理距离为20
三张表
一样三张表
1.邻居表
2.拓扑表-有时候叫BGP表,官网这个东西叫转发表
3.路由表
AS-path=记录BGP路由经过的每一个AS编号
BGP使用场景
简单翻译
1.跟运营商建BGP,意思就是运营商的BGP愿意帮你转发
2.要会策略
3.单线不要用,一定要至少双线以上
4.没钱,设备差穷的你就别用了
5.不会的你就别用了,一定要用策略
6.AS之间带宽低
特性
1.可靠更新机制,运行在TCP,OSI的第七层
2.触发式增量更新(没有周期更新)
3.Keepalive信息周期信息,相当于OSPF中的Hello包,单播的,它只会确保邻居是否存活,跟路由无关
60秒发一次,180秒收不到邻居失效重点:仅仅是用来保持邻居,不用来建立邻居
建立邻居,采用Open信息
4.拥有13条选路原则(这是个大家伙)
5.适用于大型网络
比较其他路由协议
ospf,eigrp的宣告网络和建立邻居都是一个步骤,network
在BGP中,需要先建立邻居再宣告网络
IBGP
建立邻居
邻居为10.1.1.2,AS编号为100
(这个AS写的是对方的AS哦)
查看bgp邻居,show ip bgp summary
其中,只要最后这个state是数字就证明建立了
或者,查看show ip bgp neighbors
其中,这个BGP State代表bgp的状态,只要是这个eastablished,就代表已经是确定建立邻居的状态.
宣告网段
此时的网络环境为两个设备直连并且带一个环回口
router bgp xxx
建立完邻居後
此时的路由表已经收到了来自BGP的路由条目
可以看到后面的管理距离为200=IBGP
其中,一个设备,只能启动一个BGP
跟ospf和eigrp不一样
一个是因为BGP的特性
第二个是因为BGP很占用设备内存
其实IBGP意义不大,意义最大的是EBGP
EBGP
同上的网络环境,但是改了一下编号,一个为100一个为200
配置太简单所以省略
建立邻居後
show ip bgp summary,这个地方变成了1,意思是收到的路由条目1条
show ip route ,这里面的路由条目已经收到了,并且他的管理距离是20
这里毕竟是两个设备在做,其实没什么意义,接下来上更多的设备
BGP的最大的特点是他可以跨越设备
上操作
网络环境如下
这时候的OPSF,仅仅是给R1-R2-R3做底层互通使用的
只要把每个接口都宣告进A0就行了,就不写配置了
但是注意不要把环回口宣告进去
R1:
R3:
R1和R3都收到彼此的路由条目了但是
与R2无关
这里是一台R2,可是在数据中心,运营商内部,可能是无数个R2
虽然有路由条目的,但是请问他们通嘛?
答案是不通的,为什么?
通过路由表可以看到这个数据的下一跳是R2
那么,当这个数据发送到R2的时候他有这条路由吗?答案是没有
所以这个时候就形成BGP的路由黑洞了
这个是在I-BGP的情况下,我们现在来换成EBGP,配置都一样,换个AS编号
但是现在重新做配置了
来看看状态
Idle的意思是TCP连接建立不起来
为啥呢?
它的底层有OSPF而且通的呀
这是因为,在IGBP中的默认条数是255
但是在EBGP中的默认条数是1跳
(虽然我感觉很不合理但是别人就是这样设计的)
所以这个时候需要修改一下默认跳数
router bgp 100
neighbor 20.1.1.2 ebgp-multihop (如果不写他就是255跳)
这个255自动的
然后这个时候再来看看邻居状态
可以看到,这个时候的邻居已经起来了,也收到路由条目了(截图快了)
AS编号
这个时候有人要问了,你这不是蛋疼吗,好好的分什么IBGP和EBGP
用同一个AS号它不香吗
这个时候就要说到一个问题了
AS编号,他是要钱
买的
从哪申请呢?
1.运营商申请
2.国内的一个机构,CNNIC机构
>首先要成为这个机构的会员,一年一个w而已
>申请一个AS编号,一年一个w一年而已
>这里仅仅是编号,不包括任何带宽,服务
>这就是说,申请一个编号而已,一年2w哦
>到了后期的学习,需要通过经过的AS的编号,进行路径的选择
>对于三大运营商来说,一年的BGP-AS的编号费用,几千万那都是少的
>因为他们很多出口,每个城市,每个行政区,都有机房
IBGP适用于内网
EBGP适用于外网
show ip route bgp bgp路由表
show ip bgp bgp表
show ip bgp neighbor bgp邻居表
show ip bgp summary bgp拓扑表
官网叫法中,邻居不叫邻居,叫Peer
BGP信息类型
1.Open信息(含holdtime和BGP的RID) 用来建立邻居
2.Keepalive 保持邻居存活
3.Update 更新信息,每一条路径的信息和含BGP属性的信息(需要收到ACK的回复,因为他是基于TCP的)
4.Notification 报错信息,当发出这个信息後BGP的连接会关闭
下一次会讲BGP的路由黑洞问题
总结
1.BGP运行于TCP的第7层,适用于大型网络
适用于上行流量大下行流量小的网络环境,如数据中心
2.这玩意很贵,难
3.区分IBGP,EBGP
其中IBGP管理距离为200,默认跳数为255
其中EBGP管理距离为20,默认跳数为1,所以需要手动修改跳数
4.一样跟其他路由协议拥有3张表
5.配置需要先做邻居,后面的AS编号需要写对方的AS编号