学习网络BGP必备基础知识

外部网关协议,使用TCP作为传输层协议,支持CIDR,增量更新,距离矢量路由协议,无环路,路由策略丰富,可防止路由震荡,易于扩展。使用Python搭建http服务器

BGP概述

#BGP工作原理 之 报文类型TCP三次握手open报文(类型为"1" ,协商BGP参数,包括版本,AS号,hold time等,然后建立邻居)update报文(类型为"2",交换路由信息)包含NLRI网络层可达信息keepalive报文(类型为"4",保持邻居关系)Notification报文(类型为"3",差错通知)Route-Refresh报文(路由刷新报文:用于在改变路由策略后请求peer重新发送路由信息)(命令:refresh bgp all import)#BGP工作原理 之 数据库IP路由表BGP路由表邻居表(对等体列表)Adj-RIB-In(对等体宣告给本AS的未经过处理的路由信息库)Adj-RIB-Out(本地speaker 宣告给指定对等体的路由信息库)

BGP工作原理-BGP路由信息处理

BGP需要注意的事项

1:由于BGP的水平分割,会导致BGP出现路由黑洞,解决办法有三个(IBGP全互联,RR,联盟)2:EBGP邻居,默认其TTL为13:在IBGP路由加入路由表并发布给EBGP对等体之前,会先检查IGP路由表,只有在IGP也知道这个IBGP路由时,它才会被加入到路由表,并发布给EBGP对等体同步:指IGP表和BGP表同步,才会发给EBGP对等体4:私有AS号(64512-65535)5:使用import-route static命令引入静态路由时,只能引入活跃路由。

https://article.pchome.net/content-2099609.html

https://www.csdn.net/article/a/2019-09-02/15980449

BGP的属性分类 及列举讲解

#第一:公认必遵(as-path,next_hop,origin)

#第二:公认任意(Local_Pref本地优先影响出战流量,原子聚合)

#第三:可选传递(聚合者,community团体属性类似于tag)

#第四:可选非传递(MED多出口鉴别器影响本地AS的入站流量,Cluster List集群列表,起始者ID)

#A:origin 起源属性(用来定义路径信息的来源)

IGP(i):通过network引入的路由,会在bgp routing-table中显示为i

EGP(e):通过EGP得到的路由,会显示为e(已不常见)

Incomplete(?):通过其他方式学习到的路由信息,表示为?

选路原则:i>e>?

#三种加入BGP的方式

import 以及 路由聚合

network:直连的路由可以用这样的方式加入(即当我们需要加入BGP的路由存在于IGP路由表中可以使用这个方式,直连)

#B:as-path 路径属性(用于选路,用来定义经过了哪些路径,可用于ebgp防环)

#aspath抓包显示的as记录类型有4种,

as-seq 以序列的方式进行记录as号(普通的)

as-set 用于BGP聚合时防止环路

另外两种是用于联盟

#C:next_hop 下一跳属性:(有图)

1:从IBGP学到的路由信息,默认不会传递给其他IBGP对等体(正常,可以建立全互联模型)

2:从IBGP对等体学到的路由,在传递给EBGP对等体时,下一跳不改变(正常)

3:从EBGP学到的路由,在传递给IBGP对等体时,默认下一跳不改变(不正常,会导致IBGP对等体的路由下一跳不可达),解决办法是

#D:Local_Pref 属性表明BGP路由信息的优先级,用于判断流量离开AS时的最佳路由(华为设备上该值越大越优先,默认是100)

1:只能在IBGP之间传递,影响本AS的出战流量

#E:community 团体属性(写法 100:1)(用于标识具有相同特征的BGP路由)

1:自定义团体(一般在内部传递)

2:公共团体属性

  Internet       互联网属性,只要是公共路由都带有

  No Advertise       不通告路由(若是收到带有该值的路由信息,不会将该路由传递给其他任何BGP邻居)

  No Export       不外发(若是收到带有该值的路由信息,不会传递给任何EBGP邻居)

  No Export Subconfed  用于联盟,不会将该路由传递给联盟EBGP(即不传递给普通EBGP邻居)

#F:MED多出口鉴别器,相当于链路cost

1:(华为默认是0)影响入站流量(注意我说的是流量不是路由),用于EBGP邻居(华为设备该值越小越优先),能在对端的AS内部传递,对端AS不能传递给其他AS

2:(提醒:影响入流量就是影响对方,也就是说对方AS内可以进行比较)

#注意影响选路的有起源属性,AS path ,local_pref,MED这些.其他的如commity只是控制不直接影响选路

BGP扩展特性

BGP十三条选路原则

#当到达同一目的地存在多条路由时,BGP依照如下策略顺序进行选路

1:若此路由的下一跳不可达,则忽略该路由

2:优选协议首选值(PrefVal)最高的路由(华为私有特性)

3:优选本地优先级(Local_Pref)最高的路由

4:优选本地生成的路由(即本地始发,本地聚合)

5:优选AS 最短的路由

6:比较起源属性(Origin),其中 i>e>? (即network>ebgp>import)

7:优选MED值最低的路由

8:优选从EBGP邻居学到的路由,(EBGP路由优先高于IBGP路由)

9:优选到下一跳IGP Metric较小的路由

10:优选Cluster List最短的路由(前面9条全部一样,才可能负载均衡)

11:优选Router ID最小的路由器发布的路由

12:比较对等体的IP address ,优选从具有较小IP address 对等体学来的路由

BGP如何实现负载均衡,前8条都没有比较出优先还是不优先的

MED的比较只能发生在同一AS内部

BGP高级特性描述

#路由反射器(指在IBGP内,实现简单,不改变现网拓扑)

1:根本原因:水平分割原则,中转AS,路由黑洞

2:角色类型: RR路由反射器,client客户机,Non-client非客户机

3:反射规则

只要是RR上有的路由,它都能将其传递给所有的client

4:路由反射器-防环机制(cluster list)

    A:Originator ID属性(可选非传递),用于集群内的防环,由路由反射器RR产生,携带本地AS内该路由发送者的Router ID.

    B:Cluster List属性(可选非传递),用于集群间的防环,有每个路由反射器RR产生,记录反射路由经过的集群.

5:路由反射器-备份RR

相同集群中的路由反射器共享相同的Cluster ID

Cluster List 的应用保证了同一AS内的不同RR之间不出现路由环路

6:路由反射器-同级RR

一个AS中可能存在多个集群,各个RR之间是IBGP对等体关系

7:路由反射器-分级RR

将较低网络层次的RR配置成更高网络层次中RR的client

#BGP联盟(使用较少)

1:将一个AS划分若干个子AS,每个子AS内部建立全互联BGP邻居关系,子AS之间建立EBG连接关系

2:联盟-防环机制(AS_Path的记录类型)

AS_CONFED_SEQUENCE

AS_CONFED_SET

#路由聚合(自动聚合:只能聚合import的路由不能是network引入的)

只向对等体发送聚合后的路由,从而缩小路由表规模

明细路由如果发生震荡,不会对网络造成影响

路由聚合分为自动聚合和手动聚合

#BGP增强特性

1:BGP ORF(Outbound Route Filtering):出向路由过滤(有图)

BGP基于前缀的ORF,基于本地的入口策略构建对端的出口策略,实现BGP按需发布路由

包括基于前缀的ORF和VPN ORF

2:Active-Route-Advertise

只有当BGP路由被成功的安装进IP路由表,该路由才能被发送给邻居

3:BGP按组打包

按组打包技术将所有拥有共同出口策略的BGP邻居当作是一个打包组

每条待发送的路由只被打包一次然后发给组内的所有邻居

4:4字节AS号

5:按策略进行下一跳迭代

1:通过配置路由策略来限制迭代到的路由,如果路由不能通过路由策略则该路由迭代失败

Internet设计原理

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

推荐阅读更多精彩内容

  • Calico 为大规模集群以及云环境的节点提供了 end-to-end 的网络互联。为此,calico 需要一个物...
    IT农民阅读 2,554评论 0 2
  • 边界网管路由协议BGP AS 自治系统 一组被统一管理的路由器集合。a,使用相同的度量值b 使用相同的IGP AS...
    srat阅读 3,639评论 0 1
  • Border Gateway Protocol 边界网关协议 1、四种消息类型: Open消息:Open消息是TC...
    狗达Da阅读 1,335评论 0 7
  • 网络层提供的两种服务 在计算机网络领域,网络层应该向运输层提供怎样的服务(面向连接还是无连接)曾引起了长期的争论,...
    srtianxia阅读 3,926评论 0 12
  • 一、题库介绍 页数:214P 题目:305道 题型:单选、多选、判断 二、题目分类 IGMP、组播 IGP:OSP...
    狗达Da阅读 7,704评论 3 13