BGP协议
1
。定位:运营商。
2
。强调点:
1
)处理的是互联网的路由。
2
)企业是否需要(传输
AS
:承担互联网的流量
多归路的网络环境:外网有电信和网通。)
3
。
http
:
//www.cidr-report.org/
4
。
64512-65535
:是私有的
AS
。
5
。路径矢量。经过的
AS
数量越少,越好。
6
。没有
metric
,用属性。
7
。只能影响自己的路由做决策,不能影响不能别人的路由器做的决策。
8
。
BGP
的特征:
1
)
BGP
的用途:
传输
AS
AS
到其它的
AS
有多个连接
希望我的流量在转发的时候更依赖管理员的控制
2
)不需要用
BGP
:
对路由过滤和
BGP
路径选择理解不够
连接到
ISP
只有一个
内存不足或者处理器不够强劲
3
)距离矢量的增强:
可靠更新:因为要建立
TCP
的连接(
179
)
增量更新,出发更新。
周期发送存活消息来验证
TCP
连接性。
(补充比较:
rip udp
eigrp ip
ospf ip
bgp tcp
)
路径矢量或属性
设计来用于大型互联网情况。
9
。
BGP
数据库:
1
)邻居表
2
)
BGP
表(转发数据库)
3
)
IP
路由表
10
。管理距离
IBGP
:
200
EBGP
:
20
11
。四个消息类型
1
)
open
:
tcp
建立完成,发送
open
消息。
version number
:
1
个字节
AS number
:
hold time
:
0
或者至少是
3
秒。
0
代表不考虑。
router id
:
optional parameters
:
2
)
keeplive
:保活消息。是
holdtime
的三分之一。每隔
60s
,交换
keeplive
消息,对
open
消息的确认。
3
)
update
network-layer reachability information
(网络号)
path attributes
(路径属性)
可能出现:
withdrawn routes
(撤销路由)
4
)
notification
:检测错误发送的消息
error code
error subcode data
12
。
EBGP
和
IBGP
EBGP
:
AS
之间应该是直连的。
IBGP
:
AS
内部有协议:可以不直连。
13
。
IBGP
:
邻居关系不需要直接相连。
AS
之间都用
IBGP
,而且是
full-mesh
互联。
为什么要全互联:
原因:
IBGP
水平分割:从一个
IBGP
邻居收到一个路由更新,不会发送给其它的
IBGP
邻居。
14.
配置:
可以宣告非直连的网络。
network
:将哪个网络在哪里作为起源。
前提:存在在
IP
路由表里。
15.
源
IP
地址的问题:
源
IP
地址必须和
neighbor
命令所指定的
IP
地址必须相同。
问题一:去往目的地的时候有冗余路径的时候(即有多条路径的时候)
解决方法:环回口来建立邻居关系。
EBGP
:
1
)修改
ebgp-multihop 2
2
)修改更新源
IBGP
:
修改更新源就可。不用修改
ebgp-multihop
16.
下一跳属性:
从
EBGP
邻居那里收到更新时,在
AS
里,下一跳不会改变。
解决办法:
neigh 4.4.4 .4 next-hop-self
16
。减少命令的方法:
对等组:
neigh test peer-group
neigh test remote-as 200
neigh 2.2.2 .2 peer-group test
17
。
BGP
的状态:
1
)
idle
:查找本地路由表看是否能够达到。找不到,始终停留在
idle
。
2
)
connect
:接受到对方的
tcp syn ack
确认,进入连接状态。
3
)
open sent
:创建一个
open
包,并发送,进入
open sent
状态。
5
秒钟后没收到确认,进入
active
状态。
4
)
open confirm
:收到一个
open
的响应,进入
open confirm
状态。
5
)
established
:路由传递完成,邻居关系建立。
注意:
active
状态,发了
open
没收到确认。
哪些原因导致:
邻居没有到源
IP
地址的路由。
邻居对等邻居指向错误
邻居没有做
neigh
语句
as
号错误配置
18.BGP
规则和同步
要接受
BGP
路由,要先存在
IGP
路由表中。
关闭同步。
19.BGP
邻居认证
neighbor ip-address password string
20.
。
show ip bgp
第一列:
如果为
*
号,意味着第五列
即下一跳
是可达的。
第二列:可以是
>
号:代表最佳路径。没有负载均衡。
s
:汇总
d
:
惩罚
h
:历史(已经失效,但还没从路由表删除)
第三列:小
i
:通过
ibgp
学习的。
空:通过
ebgp
学习而来的。
第四列:网络号和掩码
第五列:下一跳
:如果是
0.0.0
.0
本地产生
最后一列:
i
:通过
network
起源的
?:不知道怎么起源(重发布)
e
:通过
ebgp
协议学习
21.BGP
的路径选择。
路径属性:
1
)公认的(
well-known
):所有运行
bgp
路由器都知道,了解和实现。
1.1
)必遵
路由更新要携带必遵属性。
1.2
)随意的
发送路由更新,可以发也可以不发。
2
)任选的(
optional
):有些属性不被识别
2.1
)可传输
:不认识的也要传
2.2
)不可传输:
不认识可以丢弃
22.BGP
属性
AS path
:
1.1
next-hop
:
1.1
origin
:
1.1
local preference
:
1.2
med
:
2.2
others
:
23.
具体属性的工作
1
)
AS-path
属性:自治系统号的列表,
经过的
as
越少越优先
不能有重复的
as
2
)下一跳属性:
3
)起源属性
4
)本地优先属性:
IBGP
的宣告者计算每一条外部路由的优先程度的属性。
本地的
IBGP
有效,用来决定离开本地的出口是谁。
选高的。
默认值是
100.
5
)
MED
:
metric
用来区分到
ebgp
邻居,怎么样离开本地到达邻居。
对端设置,本地选择。
对方影响本地。
选低的优先。
6
)
cisco
专有:
weight
属性。
只在本地路由器上配置,不会向外传递。
选高的。
24.
路径决策的规则:
1
)如果路径是内部的,同步要求打开,而路由没有被同步,则不选择这条路径。
2
)如果路由的下一跳,是不可达的,不选择这条路径。
3
)通过最高的
weight
值来比较路由。
4
)如果
weight
值相同,选举最高的本地优先。
5
)如果本地优先相同,考虑起源属性。本地始发的路径优先。
6
)如果没有路径是本地起源的,选择最短的
as-path
属性。
7
)
as-path
相同,选择最低的起源值。(
IGP<EGP<incomplete
)
8
)如果起源相同,选择最低的
MED
9
)如果
MED
相同,在
EBGP
和
IBGP
之间,优先选择
EBGP
。
10
)如果同步关闭,却只有内部路由,就选择最近的
IGP
邻居。
11
)在
EBGP
路径中,选择存在时间最长的。
12
)选择最低的邻居路由器
ID
。
本文出自 “追求无止境。。。” 博客,谢绝转载!