BGP

边界网管路由协议BGP

AS

自治系统 一组被统一管理的路由器集合。
a,使用相同的度量值
b 使用相同的IGP

AS号

系统之间通过AS号区分,由IANA 地址授权委员会统一分配。
-公有AS号 2byte 范围 0-64511 0为保留的AS号
-私有AS号 64512-65535 不能在公网出现
-如今AS被拓展为4byte

IGP特点

  1. 运行在同一个as内部
  2. 周期性更新确保路由正确
  3. 收敛速度快,抖动比较频繁
  4. 采用相同标准结束度量值
  5. 提供有限的路由策略,调整路由路径只能通过metric(BGP 13条选路原则)
  6. ospf 最多支持10000条 isis做多支持20000 条路由条目

BGP特点

  1. 属于外部网关路由协议(EGP),高级路径矢量路由协议
  2. BGP基于TCP,端口号 179
  3. 第一次做完整更新,后面只做增量更新,触发更新
  4. 使用keeplive维持BGP邻居关系
  5. 丰富的度量值
  6. BGP只用于internet,是互联网协议
  7. BGP在AS间传递路由信息

BGP优点

1非常可靠

  1. 通过TCP建立可靠连接
  2. BGP放环机制 IBGP 防环 EBGP防环

2稳定性

路由条目稳定 cisco IOS,外部bgp路由30s放进BGP转发表
可以追踪指定的路由,根据他的震荡历史,对其进行路由的惩罚---damping

3可拓展性


BGP三张表

  1. 邻居表 可以不用直连,底层可达即可 需要显示配置
show ip bgp summary----------查看bgp路由表
  1. BGP转发表 从邻居收掉的所有BGP路由属性
show ip bgp ----------查看bgp路由表
  1. 路由表 最优的BGP路由提交给路由表

BGP对等体关系

  1. IBGP邻居
    1.1位于一个AS内部
    1.2通常建IBGP邻居使用环回口
    1.3TTL=255
    1.4 构造IBGP对等体
            R2:
            no auto-summary -----关闭自动汇总
            no synchronization -----关闭同步检测机制
            bgp router-id 2.2.2.2-----配置BGP的router-id,BGP的标识符
            BGP router-id选举原则和OSPF一样,建议手工配置
            neighbor 1.1.1.1 remote-as 12
            Neighbor 1.1.1.1 update-source loopback 0
            
            R1:
            router bgp 12
            bgp router-id 1.1.1.1
            bgp log-neighbor-changes
            neighbor 2.2.2.2 remote-as 12
            neighbor 2.2.2.2 update-source Loopback0


  1. EBGP
    2.1 位于不同AS
    2.2 使用直连接口
    2.3 EBGP对等体(基于直连接口)
R2
Router bgp 2
BGP ROUTER-ID 2.2.2.2
NEIGHBOR 12.1.1.1 REMOT 1
 
R1
Router bgp 1
BGP ROUTER-ID 1.1.1.1
NEIGHBOR 12.1.1.1 REMOT 2

2.4

R2
router bgp 2
 bgp router-id 2.2.2.2
 bgp log-neighbor-changes
 neighbor 1.1.1.1 remote-as 1
 neighbor 1.1.1.1 disable-connected-check----关闭直连检测
 neighbor 1.1.1.1 update-source Loopback0
R1
router bgp 1
 bgp router-id 1.1.1.1
 bgp log-neighbor-changes
 neighbor 2.2.2.2 remote-as 2
 neighbor 2.2.2.2 disable-connected-check
 neighbor 2.2.2.2 update-source Loopback0


BGP的状态机

  1. idle状态原因
    1.1 没有去往邻居路由
    1.2 指错neighbor后面地址
    !路由器无法通过默认路由主动发起tcp,需要一条明细的静态
  2. connect
  3. active
  4. opensent
  5. openconfirm
  6. establish-------------BGP邻居建立
    !更新源地址:路由器用来和路由器建立BGP邻居的地址
show ip bgp neighbor

neighbor的含义

  1. 向neighbor后的地址发起TCP连接,源端口为随机高端口,目的端口为179
  2. 允许neighbor后的地址向本路由器发起tcp连接

BGP数据包

  1. open 用于建立BGP邻居关系
  2. keeplive 维持邻居关系,60s发一次 保持时间 180s
  3. update 携带路由更新和利用属性
  4. notification 当bgp邻居发生错误时产生

路由通告进BGP

network x.x.x.x mask 掩码

只会通告路由进BGP,而不会激活一个接口
特点:

  1. 路由表除了非BGP路由,都可以通告进BGP C S IGP
  2. network通告的时候,必须精确(网络号和掩码必须要和路由表相同)
  3. 可以通告从IGP学习到的路由,会将下一跳地址和metric带入bgp转发表
    !BGP转发表看到吓一跳地址为0.0.0.0,表示的是路由是自己产生的
    !在bgp转发表看到 r 表示压入路由表失败
    !* 有效
    ==!> 最优==

对等体传递路由

  1. IBGP对等体传路由时,不会更改下一跳地址
  2. EBGP对等体传路由时,更改下一跳地址

==最优的条件==

  1. 同步检测
  2. ==下一跳可达==

如何下一跳可达
将直连接口宣告进IGP
or

neighbour 3.3.3.3 next-hop-self//需要在IBGP和EBGP边界敲该命令

  1. 从Ibgp学来的路由,ad为200
  2. 从EBGP学来的路由,ad为20

路由黑洞

路由黑洞
IBGP的水平分割(用于防环)
从一个IBGP对等体学习到的路由不会传递给另外一个IBGP对等体
show ip bgp neighbour 3.3.3.3 advertised-routes//查看已经向邻居3.3.3.3通告的路由条目


解决:

  1. 建立全互联对等体
  2. 路由反射器(打破水平分割)
    配置了路由反射器,会给bgp路由添加两个新的属性(用于防环)
    1 orignator 路由器起源(从哪个IBGP对等体收到
    2 cluster list 路由反射器的router-id
neighbour 3.3.3.3 router-reflect-cliebt---------R1是路由的反射器,3.3.3.3是反射器的客户端

2.1 从客户端收到的路由可以反射给非客户端
2.2 从非客户端收到的路由可以反射给客户端
2.3 客户端收到的路由可以反射给客户端
2.4 从非客户端收到的路由==不==可以反射给非客户端

  1. 联邦:将大的AS划分为若干个小的AS,在AS之间建立的是EBGP(联邦内部使用私有AS号64512-65535)
    3.1:联邦内部所有路由器需要配置
bgp configration identifier 123 //对外宣称AS号为123

3.2: 联邦内部建EBGP对等体的路由器配置

bgp confideration peers <内部AS号>

联邦缺点:
配置复杂 两个路由器放在一个联邦的内部,AS号需要规划好

  1. BGP重分布进IGP(一般不用,BGP路由条目太多,重分布进IGP会搞瘫)

在EBGP如果不小心将环回口宣告进BGP,路由表会每3分钟翻动一次

解决方案
  1. 修改EBGP对等体发过来的路由AD值
access-list 1 permit 2.2.2.0
router bgp 1
distance 150 2.2.2.0 0.0.0.1

distance EBGP路由AD值 IBGP路由AD 本地产生路由AD 

  1. 后门链路
network 2.2.2.0 mask 255.255.255.0 backdoor --------------针对2.2.2.0/24路由开后门,相当于将2.2.2.0/24路由AD改为200


BGP下发默认路由
ip route 0.0.0.0 0.0.0.0 出接口
router bgp xx
net 0.0.0.0 

  1. 以上两种方法向所有对等体发
ip route 0.0.0.0 0.0.0.0 出接口
router bgp xx
redistribute static 
defaule-information originate

  1. 向特定的对等体下发默认路由
neighbour 2.2.2.2 default-orignate


BGP和IGP重分布
  1. ospf->bgp
router bgp 1
redistribute ospf 110 match internal external(默认只有internal)


BGP AS-BY-AS的路由协议

  1. 在AS之间传递路由信息
  2. BGP路由每经过一个AS会记录下AS号

path属性,最右边为起源AS
EBGP通过AS号来防环:如果发来的路由信息的AS号与本地AS号相同,则拒绝收取该路由信息
如果想要接受含有本地AS号的路由则敲以下命令:

neighbour 35.1.1.1 allowas-in      //本命令后面还可跟上
参数1-10,表示本地AS号在as-path出现的次数,默认为3,次数超过该数字则不收取该路由


peer-group 对等体组

配置:

neighbour a peer-group
neighbour a remote-as 123 
neighbour a update-source loopback 0
neighbour a route-reflactor-client
neighbour 123.2.2.2 peer-group a
neighbour 123.3.3.3 peer-group a


BGP聚合-----BGP的汇总

方法

ip route 10.1.0.0 255.255.252.0 null0---配置一条汇总路由的静态,指向null0防环
router bgp 4
net 10.1.0.0 mask 255.255.252.0 ------------必须精确宣告

先将明细宣告进BGP
aggregate-address 10.1.0.0 255.255.252.0------------聚合10.1.0.0/22,该命令会将明细和汇总一起发送,
其实际是后面跟着suppress-map为空,没有路由被匹配,所以都会被放行。反之,被suppress-map匹配的路由都被抑制
aggregate-address 10.1.0.0 255.255.252.0 summary-only-----------------抑制明细,只发汇总

特点
本地产生指向null0的汇总,防环 AD=200(所以BGP有三个管理距离)
聚合路由不会携带明细路由属性
聚合的命令 as-set 让聚合路由携带明细路由属性


建对等体时过滤路由条目

access-list 1 deny 55.55.55.0
access-list 1 permit any
router bgp 5
neighbour 35.1.1.3 distribute-list 1 out

BGP触发更新


BGP的团体属性

分两大类

  1. 熟知团体属性:限制BGP路由传递范
    1.1 no-advertise 不会通知给任意的对等体
    1.2 local-as 只能在as内部进行传递,不能出as(有联邦的情况不能出小as)
    1.3 no-export 只能在as内部传递,不能出本as(联邦之间也可以传递,不能出大as)
    1.4 internet 全网传递
    1.5 none 没有团体属性
show ip bgp community-----------哪些bgp路由有团体属性
团体属性默认情况下不会发送给对等体
neighbor x.x.x.x send-community-------------这样才会发送团体属性

  1. 私有团体属性:给BGP路由打上标记
    标记的两种格式:
    1-4294967295 数字
    默认显示老的格式
    AA:NN AA-------bgp路由as号 NN分配数值
ip bgp-community new-format----显示AA:NN这种格式
ip community-list  ------------------团体属性列表  ,匹配带有团体属性路由,然后去做某些策略



BGP的第三方下一跳

EBGP传路由默认修改下一跳,但有特例

第三方下一跳

==默认行为:EBGP传路由会修改下一跳==
特例:

  1. Neighbor 后面的地址和BGP路由的下一跳在通一网段,不修改下一跳直接发出
  2. bgp路由最终的下一跳(递归后的路由)和neighbour后的地址在同一网段,不改变下一跳地址

在指EBGP对等体,不修改BGP路由的下一跳

neighbour 1.1.1.1 next-hop unchanged


路由属性----------衡量BGP路由优劣

  1. 公有必尊,所有厂家都必须要有的BGP路由属性,每条BGP路由都携带该属性
    a. next-hop
    b. as-path
    c. 起源代码(network进 i EGP重分布进BGP路由 e IGP重分布进BGP ?)
  2. 公认可选,共有的,但不是每条BGP都要携带
    a. local-preference 本地优先级
    b. 原子聚合属性 (BGP汇总属性有关)
  3. 任选可透明 可有可无,从一个AS去往另外AS不会丢失
    a. 聚合者(BGP汇总)
    b. 团体属性
    4.任选非传递,可有可无,从一个AS去往另外AS会丢失
    a. Originator 路由器起源 (从哪个IBGP对等体收到的) b. Cluster list-------路由反射器的router-id
    c. MED (多鉴别出口路由属性)

选路的原因

从多个对等体学到相同的路由,需要进行选路

13条选路原则

见截图:


13条选路原则
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 203,362评论 5 477
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,330评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,247评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,560评论 1 273
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,580评论 5 365
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,569评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 37,929评论 3 395
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,587评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,840评论 1 297
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,596评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,678评论 1 329
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,366评论 4 318
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,945评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,929评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,165评论 1 259
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 43,271评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,403评论 2 342

推荐阅读更多精彩内容

  • Border Gateway Protocol 边界网关协议 1、四种消息类型: Open消息:Open消息是TC...
    狗达Da阅读 1,331评论 0 7
  • 一、BGP邻居无法建立问题 1.查看是否配置了正确的邻居、AS号。 2.检查邻居是否可达,由于一台路由器可能有多个...
    Sec小玖阅读 2,795评论 0 1
  • 【原作者:姜杏春】 BGP路由是构成之Internet路由表的核心,目前规模已经达到十几万条。在实际应用中并不是所...
    delking阅读 3,347评论 0 2
  • (一) 你在的日子, 我恨时光飞逝。 你不在的日子, 我放逐在这座城市, 于空气中刻下你的名字。 (二) 你做的每...
    梦是彩色的阅读 370评论 4 6
  • 我每天一大早起来,第一件事情就是打开手机喝一大罐鸡汤,然后刷满屏幕的爱情箴言。箴言看多了,于是对另一个他的要求无形...
    顥书阅读 217评论 0 1