网络总结16-30

Virtual-link Neighbor-id -> 4.4.4.4, Neighbor-State: Full

Interface: 23.1.1.1 (GigabitEthernet0/0/1)
Cost: 2 State: P-2-P Type: Virtual
Transit Area: 0.0.0.1
Timers: Hello 10 , Dead 40 , Retransmit 5 , Transmit Delay 1
GR State: Normal

此虚链路建立起来之后,两台ABR之间依然会有hello包的周期保活,同样会造成对中间区域的资源占用。

Cisco里的虚链路技术,为了避免对中间区域的资源进行占用,直接取消了虚链路的保活机制—不可靠

3、多进程双向重发布(推荐的技术)
多进程:在同一台设备上,启动不同的OSPF进程,且不同的进程工作在不同的接口,将会各自建立邻接关系,生成各自的
数据库表(不共享)和邻居表;但是会将各自计算的路由表加载到同一张表中。并且一个接口只能被一个进程宣告。
此时,此多进程设备类似于启动了不同的协议。此设备被称之为ASBR。
ASBR:自治系统边界路由器(协议边界路由器),ASBR不会自动共享不同协议的路由,需要手工导入。

双向重发布:在ASBR上将不同协议或者不同进程产生的路由进行双向手工导入

[rr2]ospf 1
[rr2-ospf-1]import-route osp

[rr2]ospf 2
[rr2-ospf-2]import-route ospf 1

OSPF中的各种LSA–数据库表:
LSA:链路状态通告
LSDB:链路状态数据库表

[r1]display ospf lsdb //查看数据库表
[r1]display ospf lsdb router 2.2.2.2
LSA类型 link-ID
所有的目标网段均需要使用1&2类LSA进行验算。
所有类别的LSA均携带以下信息:
Type : Router 类别名,此处为1类(Router)
Ls id : 2.2.2.2 link-id,在目录中的编号
Adv rtr : 2.2.2.2 通告者,此条LSA的发起者的RID
Ls age : 161 LSA老化时间,1800s周期刷新为0,触发归0.最大老化时间3609s
Len : 72 长度
Options : E 类型
seq# : 80000007 序号
chksum : 0x748 校验和

类别名	    传播范围				通告者						携带的信息

1类 Router 本区域内 本区域内的每台路由器 该区域内每台路由器的直连拓扑信息
2类 Network 本区域内 该网段内的DR 该MA网络的拓扑信息
3类 Summary 整个OSPF网络 ABR 域间路由,其他区域的路由
4类 Asbr 除了ASBE所在 ABR ASBR的位置
区域的所有OSPF网络
5类 ASE 整个OSPF网络 ASBR 域外路由,其他协议或者其他进程重发布进来的路由
7类

类别名			link-ID				    	通告者

1类 Router 通告者的RID 本区域内的每台路由器
2类 Network DR接口IP地址 每个MA网络中的DR
3类 Summary 域间路由的目标网络号 ABR,在经过下一台ABR时,修改为新的ABR
4类 Asbr ASBR的RID ABR,在经过下一台ABR时,修改为新的ABR
5类 ASE 域外路由的目标网络号 ASBR,在整个OSPF网络内传递不修改
7类

OSPF的LSA优化:–尽可能的减少LSA的更新量
1)汇总–减少骨干区域的LSA数量
前提条件:前期对OSPF整个网络的地址规划要合理

2)特殊区域–针对各个非骨干区域进行LSA优化,减少非骨干区域的LSA数量

1、【汇总】
(1)域间路由汇总–ABR将本地直连的某区域可以通过1/2类LSA进行计算所得的路由进行汇总,通过3类LSA共享到其他区域
ospf 1
area 1 //明细路由所在的区域
abr-summary 172.16.32.0 255.255.224.0
域间路由汇总 汇总后的网络号/掩码
(2)域外路由汇总–在ASBR上进行汇总,把汇总的域外路由以5/7类LSA在重发布时进行传递。

ospf 1
asbr-summary 172.16.128.0 255.255.224.0

注意:在华为设备上,进行汇总之后,并不是在汇总设备上自动产生空接口路由防环,需要管理员手工配置。

2、【特殊区域】–基本条件:不能是骨干区域,不能存在虚链路(不存在不规则区域)
{1}满足基本条件的同时,此区域还没有ASBR–即单独的非骨干区域
1)末梢区域(Stub区域)–该区域回拒绝4/5类LSA进入,该区域连接骨干区域的ABR会自动生成一条3类的缺省
下发到此区域
ospf 1
area 1
stub
注:该区域内所有设备均需要定义,否则无法建立邻居关系;

	2)完全末梢区域(Totally-stub)--在stub的基础上,进一步拒绝3类的LSA,仅保留一条3类缺省。
配置:先将整个区域定义为末梢区域,然后仅在ABR上定义完全即可。

ospf 1
area 1
stub no-summary

{2}满足基本条件的同时,此区域存在ASBR--即连接其他协议或者进程的非骨干区域
	1)NSSA--非完全的末梢区域--拒绝非本区域内产生的4/5类LSA,本区域的ASBR产生的5类LSA将通过7类传输,到达ABR时进入骨干区域,由7类转回5类

***在Cisco设备中,NSSA区域配置完成后,不会自动产生缺省路由,为了避免环路的产生。必须在管理员确定网络环境中没有环路,
自行手工配置缺省路由。
BUT:但是华为设备在配置完NSSA区域之后,由该区域的连接骨干的ABR自动产生一条7类的缺省。
在华为网络环境下,尤其注意环路
ospf 1
area 2
nssa

注:该区域内所有设备均需要定义,否则无法建立邻居关系;
2)完全NSSA区域–其安全的非完全末梢区域,在普通的NSSA区域的基础上,进一步拒绝3类LSA,ABR会自动产生一条3类的缺省
配置:先将整个区域定义为NSSA,然后仅在ABR上定义完全NSSA即可。
ospf 1
area 2
nssa no-summary

特别注意:
由于所有的特殊区域均会产生缺省路由,指向骨干区域,故ISP的位置尤为重要,若ISP在非骨干区域或者其他协议中,则所有的OSPF
网络均需要缺省路由访问互联网,此缺省路由会和特殊区域产生的缺省方向相对,必然出环;
结论:要求拥有ISP的OSPF区域不允许设置为特殊区域。
OSPF的扩展配置:

1)认证–邻居间的身份核实,分为明文认证和密文认证
认证方式:①接口认证 ②区域认证(在整个区域内的接口上全部开始接口认证)
interface Serial 1/0/1 //在直连邻居的接口上配置
ospf authentication-mode simple 123
ospf authentication-mode simple cipher 123
cipher的作用:让设备在显示密码时(display命令查看时)显示为乱码。。

interface Serial 1/0/0 //在直连邻居的接口上配置
ospf authentication-mode md5 1 cipher 123
KEY编号所有的认证邻居之间必须一致。
2)静默接口–若路由器的某接口配置成被动接口后,此接口将只接收不发送所有OSPF数据包,其他数据包正常传输。
只能配置域连接用户的接口,禁止用于OSPF邻居之间的接口。
ospf 1
silent-interface GigabitEthernet 0/0/1 //此接口为连接用户的接口
3)加快收敛–修改OSPF中计时器
在OSPF中,hello time10s 或者30s(p2mp),dead time为hello的4倍
修改邻居间的计时器可以加快收敛速度,但是会增大网络资源占用,所以不建议修改。
interface Serial 1/0/1 //在直连邻居的接口上配置
ospf timer hello 5 //修改hello时间,dead time自动4倍关系
注意:邻居间的hello time和dead time必须保持一致
4)缺省路由
1)3类缺省—配置完特殊区域之后,自动产生—Stub,T-Stub,完全NSSA。
2)5类缺省—本地路由表中通过其他协议或者其他OSPF进程生成缺省路由之后使用重发布技术产生的路由。
ospf 1
default-route-advertise //本地路由表中存在缺省路由才可下发成功
默认,此命令引入的路由为类型2(Type2),默认COST值为1
类型2的路由不会叠加整条路经上的COST值
类型1的路由会叠加整条路径上的COST值
ospf 1
default-route-advertise type 1 cost 10 //修改为类型1和起始度量值
若本地路由表中没有缺省路由,可以让设备强制下发
ospf 1
default-route-advertise always
3)7类缺省–普通的NSSA区域将自动产生7类缺省的LSA,也可以在NSSA区域内ABR上手动生成。
ospf 1
area 3
nssa default-route-advertise //默认类型为2,cost为1
OSPF扩展知识点:
【1】LSA新旧比较问题
所有类别的LSA均携带以下信息:
Type : Router 类别名,此处为1类(Router)
Ls id : 2.2.2.2 link-id,在目录中的编号
Adv rtr : 2.2.2.2 通告者,此条LSA的发起者的RID
Ls age : 161 LSA老化时间,1800s周期刷新为0,触发归0.最大老化时间3609s
Len : 72 长度
Options : E 类型
seq# : 80000007 序号
chksum : 0x748 校验和
OSPF的LSA是1800s会更新一次更新一次序列号会加一
LSA的新旧比较
1、会先比较序列号,序列号越大越优,
2、如果序列号相同,会比较校验值(checksum)越大越优
3、如果校验值也相同,会比较LSA Age时间,是否等于MAX-age时间(3600)
–如果age时间不等于max-age时间,会比较他们的差值,如果差值大15分钟(900秒),小的优
–如果age时间不等于max-age时间,会比较他们的差值,如果差值小于15分钟,说明是同一条LSA,忽略其中一条
什么情况下LSA会更新:
1、1800到期会周期更新
2、触发更新(接口地址变化(增加,或删除),修改接口开销值,删除接口,或者删除通告)

【2】附录E–link-id 相同的问题

若一台 ABR 将两条 3 类 LSA 导入其他区域;同时这两条 LSA 的 link-id 会相同;
假设:短掩码网段先进入, link-id 正常显示;长掩码进入时 link-id 加反掩码
20.1.0.0/16–link-id 20.1.0.0
20.1.0.0/24–link-id 20.1.0.255
若长掩码先进入,再短掩码进入时,长掩码的信息被刷新为反掩码
【3】OSPF选路规则
1、AD(管理距离)/优先级无关的一种情况:—域内路由
r2(config)#router ospf 1
r2(config-router)#distance 9 1.1.1.1 0.0.0.0
本地从 RID 为 1.1.1.1 的设备处学习到路由条目,管理距离/优先级修改 9;
一台路由器从两个 OSPF 邻居处学习到了两条相同的路由时,仅比较度量值,不关注管理距离/优先级;因为仅针
对一台邻居进行管理距离修改的结果是要么两台都被改,要么修改失败; -关注 IOS 版本—有时修改 RID
大路由器管理距离生效,有时需要修改 RID 小的设备;

重发布、重分发、重分布:
一台路由器,工作在两种路由协议中,由于协议本身互相不兼容,所以此多个协议之间路由信息不会互相共享
可以让此台设备成为ASBR,使用重发布技术将不同协议的路由进行共享,实现全网可达

重发布条件:
1、必须存在ASBR(自治系统边界路由器/协议边界路由器)
2、必须考虑种子度量/起始度量:A协议往B协议发布时,由于两种协议度量的计算方法不同,所以不会带入原度量值
而是ASBR将路由进行重发布共享时,添加一个起始数字作为B协议的种子(起始)度量

重发布分类:
1、单点单向重发布
2、单点双向重发布
3、多点单向重发布
4、多点双向重发布

重发布技术永远都是两种协议之间的互相导入,所以不会存在多向

重发布规则:
1、将A协议发布到B协议(A协议的路由共享到B协议),在ASBR上的B协议中配置
2、将A协议发布到B协议时,是将ASBR上所有通过A协议学习到的路由条目,以及ASBR上直连工作在A协议的路由全部共享到
B协议

重发布配置:
三种配置:
1)A—>B 一个动态发布到另一种动态
2)静态—>B 静态发布到一种动态
3)直连—>B 直连发布到一种动态

当B==RIP时:
【1】A—>B

[r2]rip 1
[r2-rip-1]import-route ospf 1 //默认导入时起始度量为1;可以人为添加度量值
[r2-rip-1]import-route ospf 1 cost 3 //此处添加的3为在原始的基础上增加的度量

【2】静态—>B

[r2]rip 1
[r2-rip-1]import-route static //默认导入时起始度量为1;可以人为添加度量值
[r2-rip-1]import-route static cost 3 //此处添加的3为在原始的基础上增加的度量
导入静态路由时,默认缺省路由不会被导入

【3】直连—>B
[r2]rip 1
[r2-rip-1]import-route direct //默认导入时起始度量为1;可以人为添加度量值

若多种重发布配置进行完后,均导入了相同的路由,则直连会覆盖所有动态。

当B==OSPF时:
【1】A—>B
[r2]ospf 1
[r2-ospf-1]import-route rip //默认导入时起始度量为1;可以人为添加度量值
[r2-ospf-1]import-route rip cost 3 //此处添加的3为总度量
**默认导入的路由类型为2
类型2仅显示起始度量,类型1显示整段路径的总度量

【2】静态—>B
[r2]ospf 1
[r2-ospf-1]import-route static //默认导入时起始度量为1;可以人为添加度量值
[r2-ospf-1]import-route static cost 7 //此处添加的7为总度量
导入静态路由时,默认缺省路由不会被导入

【3】直连—>B
[r2]ospf 1
[r2-ospf-1]import-route direct //默认导入时起始度量为1;可以人为添加度量值
[r2-ospf-1]import-route direct cost 9 //此处添加的9为总度量

若多种重发布配置进行完后,均导入了相同的路由,则直连会覆盖所有动态。
<二>多点双向重发布
1、在多点双向重发布种,若A协议的优先级大于(次)B协议,此时若将A协议通过一台ASBR引入到B协议时,那此优先级会降低(变优),
会导致另一台ASBR路由表的生成,此时另一台ASBR再次将B往A协议重发布时,原先A协议的路由会再次回到A协议中–路由回馈
解决方案:将重发布进来的路由优先级改高–Cisco提出,在Cisco的EIGRP协议中,内部路由优先级90,外部170
所以,华为设备因为不支持EIGRP,仅支持OSPF,所以借鉴了Cisco的做法–在华为中,OSPF内部优先级10,外部150

2、OSPF协议学习OSPF网络内的所有环回接口网段时,学习到的都是32为的主机路由,但是将本设备工作在OSPF的直连接口重发布时时原本的掩码,
所以可能会导致在重发布时同一条路由条目变成不同的掩码发布到另一协议
解决方案:1)修改环回接口掩码直接为32位 2)修改环回接口的OSPF工作的网络类型
3、在进行多点双向重发布时,由于协议之间不兼容,因此原路由的度量值进入新协议时,会被起始度量代替,所以存在选路不佳的问题
解决方案:需要人为的干涉选路—路由策略技术

<三>路由策略
控制层面:路由信息传递的层面(路由条目来的方向)
数据层面:基于本地的路由表发送的数据方向(数据去的方向)

路由策略:在控制层面对部分流量进行抓取之后,使用策略对其进行修改,最终影响路由条目的选择和路由表的生成
—核心作用就是为了干涉路由器的选路

【1】抓取流量
1)ACL–访问控制列表
作用:1、访问控制–在路由器的接口上对数据层面流量的进出进行限制—本职工作
2、抓取感兴趣流量–可以用于路由策略,但是是兼职作用。

因为ACL在配置的时候使用通配符匹配的是一个范围内的地址,从不关心数据包中的网络掩码,所以可能在一些特定
条件下不能精确匹配某一个网络号,ACL专职是为了对数据层面的流量进行控制的

2)前缀列表 —专用于抓取控制层面的网络号,供路由策略使用
[1]抓取单网段
[r1]ip ip-prefix hcip permit 1.1.1.0 24
[r1]ip ip-prefix hcip permit 2.2.2.0 23

[r1]dis ip ip-prefix
Prefix-list hcip
Permitted 0
Denied 0
index: 10 permit 1.1.1.0/24
index: 20 permit 2.2.2.0/23
默认会生成10+的序号,方便插入
[r1]ip ip-prefix hcip index 15 permit 3.3.3.0 25

[2]抓取一个范围的网段
[r1]ip ip-prefix hcip permit 5.5.5.0 24 less-equal 32 //掩码长度为24-32
[r1]ip ip-prefix hcip permit 6.6.6.0 24 greater-equal 30 //掩码长度为30-32
[r1]ip ip-prefix hcip permit 7.7.7.0 24 greater-equal 26 less-equal 30 //掩码长度为26-30

规则:
mask length<=ge<=le.
定义的掩码长度

[r1]ip ip-prefix hcip permit 172.16.4.0 22 greater-equal 24 less-equal 24 //匹配172.16.4.0–7.0/24

前缀列表的匹配规则:
至上而下逐一匹配,上条命中即执行,不再查看下一条,末尾隐含拒绝所有

【2】路由策略–修改控制层面流量参数
1)Cisco中偏移列表–在距离矢量协议中专用,可以修改度量–修改只能加大。
在华为设备中没有专用的策略名称,直接在设备上操作即可。

[r1]ip ip-prefix aa permit 2.2.2.0 24 //使用前缀列表抓取;ACL也可

[r1]interface GigabitEthernet 0/0/1 //控制层面流量传输的接口
[r1-GigabitEthernet0/0/1]rip metricin ip-prefix aa 2 流量入,匹配前缀列表aa,度量加2
metricout 2000 2 流量出,匹配acl 2000,度量由原本经过路由器加1变成2
该策略可以在整条控制层面的路径上操作,效果可以叠加。

2)过滤策略–在控制层面限制路由条目的传递---->对应Cisco的分发列表
[r3]ip ip-prefix bb deny 1.1.1.0 24
[r3]ip ip-prefix bb permit 0.0.0.0 0 less-equal 32 //允许所有
[r3]rip 1
[r3-rip-1]filter-policy ip-prefix bb import GigabitEthernet 0/0/0

[r3-rip-1]filter-policy 2000 import GigabitEthernet 0/0/0
ACL

注意:若在过滤策略中使用ACL抓取流量,虽然华为默认ACL末尾隐含允许所有,但是在过滤策略中结尾必须添加允许所有的指令,否则
会过滤掉所有条目

***注意:当在OSPF中使用过滤策略时,因为OSPF使用的是拓扑更新,在同一个区域内过滤策略并不能够限制拓扑的传递,不会影响LSDB的生成,
仅仅是不将过滤的LSA计算加载到路由表。且在OSPF中正常无法在出方向调用的。
若想在出口调用,可以在ABR/ASBR上针对3/4/5/7类LSA进行。

3)路由策略(route-policy)---->对应Cisco中的Route-map
题目要求:
12网段–不动
lo1:1.1.1.1/24–禁止传递
lo2:1.1.2.1/24–度量值改为5
lo3:1.1.3.1/24–类型改为1
lo4:1.1.4.1/24-类型位1,度量为10
策略制定:
【1】抓取流量
[r2]acl 2000
[r2-acl-basic-2000]rule permit source 1.1.1.0 0

[r2]acl 2001
[r2-acl-basic-2001]ru permit source 1.1.2.0 0

[r2]ip ip-prefix aa permit 1.1.3.0 24
[r2]ip ip-prefix bb permit 1.1.4.0 24
【2】配置策略
[r2]route-policy hcip deny node 10 //创建名为hcip的路由策略,大动作为拒绝,序号为10
[r2-route-policy]if-match acl 2000
[r2-route-policy]qu

[r2]route-policy hcip permit node 20
[r2-route-policy]if-match acl 2001
[r2-route-policy]apply cost ?
INTEGER<0-4294967295> Specify metric value

  •                  Add metric
    
  •                  Subtract metric
    

[r2-route-policy]apply cost 5
[r2-route-policy]qu

[r2]route-policy hcip permit node 30
[r2-route-policy]if-match ip-prefix aa
[r2-route-policy]apply cost-type type-1
[r2-route-policy]qu

[r2]route-policy hcip permit node 40
[r2-route-policy]if-match ip-prefix bb
[r2-route-policy]apply cost-type type-1
[r2-route-policy]apply cost 10
[r2-route-policy]qu

[r2]route-policy hcip permit node 50 //配置空表,表示允许所有。因为route-policy末尾隐含拒绝所有
[r2-route-policy]qu

【3】重发布时调用
[r2]ospf 1
[r2-ospf-1]import-route rip 1 route-policy hcip

配置指南:
1、 即便要拒绝一个流量,在抓取时也必须使用允许,之后在路由策略来拒绝;
2、 至上而下逐一匹配,上条匹配按上条执行,不再查看下条,末尾隐含拒绝所有
3、 在一条规则中,若没有进行流量匹配那就是匹配所有;若没有应用那么仅对匹配流量进行当前大动作;
因此大动作为允许的空表代表允许所有;
总结:不match即match any,不apply即apply nothing
4、 或 与 关系
或关系为每个站点(每个序号)间为或关系;
序号10没匹配到流量,再序号20;

[r3]ip ip-prefix a permit 1.1.1.0 24
[r3]acl 2000
[r3-acl-basic-2000]rule permit sou 12.1.1.2 0.0.0.0
route-policy huawei permit node 10
if-match ip-prefix a -----若再匹配相同条件,会被覆盖
if-match ip next-hop acl 2000 与关系—被匹配流量必须同时满足这两个条件;
apply cost 10
apply cost-type type-1 与关系,同时执行两种操作 ----若再次修改为类型2,会覆盖类型1
以上为路由条目目标网络号1.1.1.0/24 同时该条目的下一跳为12.1.1.2;

总结或与关系:
条目基于站点号(序号)至上而下逐一匹配,上条匹配按上条执行,不查看下条—或关系
在每一个序号中,同时匹配所有流量,同时执行所有小动作—与关系

BGP:边界网关协议,无类别的路径矢量EGP协议
EGP—用于AS与AS之间的路由协议
AS:自治系统,标准编号0-6635,其中0-64511公有AS号,64512-65535私有AS号
扩展编号-32位二进制构建的编号
http://www.cidr-report.org/as2.0/

IGP协议追求:1、收敛速度快 2、选路佳 3、占用资源少–全网可达 hop-by-hop
EGP协议追求:1、可靠性 2、可控性 AS-by-AS

设计特点:
1、可控性:BGP协议自身不会产生任何路由,仅仅是路由的搬运者;且AS之间往往存在大量的线路来保证稳定性,所以BGP
在搬运路由条目时很难选择出最佳路径—需要管理员对路由进行大量的策略来干涉选路

2、可靠性:基于TCP协议进行路由共享,BGP协议需要共享不同AS之间的路由,所以更新量很大,为了避免对设备资源的占用,
选用了仅触发更新、无周期更新的工作方式,所以需要保障所有的路由更新能够到位–必须可靠–TCP
TCP是单播工作的,所以BGP的邻居建立需要手工指定,同时BGP可以非直连建邻
BGP协议需要基于IGP之上,先使用IGP协议实现设备之间IP可达,然后BGP基于TCP建立邻居关系

一、BGP协议的特点
1、无类别的路径矢量协议—距离矢量协议的升级版–AS BY AS
**2、使用单播的方式更新发送所有信息,基于TCP 179端口工作
3、增量更新—仅触发,无周期
**4、具有丰富的属性代替IGP中的度量进行选路—多个参数控制
5、可以在进向和出向实施强大的策略—可控性
**6、默认不被用于负载均衡—通过各种各样的规则仅仅产生一条最佳路径
7、BGP支持认证和聚合(汇总)

二、BGP数据包–基于TCP179端口工作,所以BGP协议中的所有数据包均需要在TCP三次握手建立会话之后,再基于TCP对的
会话进行传输以及可靠性的保障。

首先通过TCP三次握手来寻找邻居关系:
Open:仅负责邻居关系的建立,正常仅收发一次即可。携带Router-ID,
Keepalive:保活,周期1min查询邻居关系是否存在,hold time 3分钟;实际保活的是TCP会话
Update:携带路由条目的数据包—目标网络号+各种属性
**Notification:正常不会出现,只有出现错误的时候才收到此报文。

三、BGP的工作过程
首先保证到达要建邻的邻居处IP可达,然后管理员手工指定邻居的IP地址
启动BGP协议之后,基于TCP 179端口进行TCP的三次握手来建立TCP的会话
会话建立成功后,收发open报文建立BGP的邻居关系,生成/邻居表/;
邻居关系建立之后,邻居间使用Update数据包共享路由条目,在学习完路由信息之后,本地生成/BGP表/,表中包含本地发出的
和所有接收到的路由条目。
之后路由器将BGP表中去往目标的最优路径(不一定是去往目标的最佳路径,仅BGP认为最佳)加载到/路由表中/
整个收敛完成,仅使用Keepalive数据包周期保活TCP会话即可。

网络结构发生突变:
1、新增:BGP更新源设备将使用Update数据包来告知本地的所有邻居
2、断开:BGP更新源设备将使用Update数据包来告知本地的所有邻居
3、设备无法通信:3 min holdtime,计时结束后断开邻居关系和TCP会话,删除所有学习到的路由条目

BGP更新源设备并不一定是直连断开或者新增的设备,而是第一台将此路由条目发布到BGP协议中的路由器。

四、专业名词
EBGP:外部BGP邻居关系—两台处于不同的AS的BGP路由器之间建立的邻居关系
IBGP:内部BGP邻居关系—两台处于同一个AS之内的BGP路由器之间建立的邻居关系

五、BGP的路由黑洞
由于BGP协议可以非直连建立邻居关系,所以两台BGP邻居间如果存在未运行BGP协议的路由器时,可能出现路由条目在
控制层面可达,但是数据层面的流量经过未运行BGP协议的设备时,无法通信—控制层面可达,数据层面不可达

解决方案:
1、物理或者逻辑链路全连
2、BGP邻居关系全连–所有的设备均运行BGP协议
3、将BGP路由条目重发布进IGP协议中(LAB)
4、最佳方案—MPLS:多协议标签交换

六、BGP的防环机制—水平分割
1、EBGP水平分割—防止EBGP邻居间的环路
利用BGP路由条目中的AS-PATH属性解决,该属性会记录所有经过的AS编号,接收到的路由条目中若AS-PATH属性中
存在本地的AS号,则拒绝接收。

2、IBGP水平分割—防止IBGP邻居间的环路
基于AS-BY-AS特性,BGP的路由条目在同一个AS内部传递时,属性是不会发生变化的。

IBGP水平分割:从一个IBGP邻居处学到的路由条目不再会传递给本地其他的IBGP邻居;
因为BGP协议可以非直连建立邻居关系,所以在一个AS内部只要设备运行BGP协议,那么必然存在EBGP邻居关系,即一定接了
其他的AS;IBGP水平分割规则将导致在一个AS内部所有运行了BGP协议的路由器之间,均需要建立IBGP老邻居关系,才可以
正常传递路由条目,那么建立邻居关系的配置成指数上升。
可以使用反射器或者联邦解决!

七、BGP基本配置
建立邻居关系–BGP基于单播进行邻居建立和沟通,所以需要管理员手工指定邻居的IP地址
[1]使用直连接口的IP地址建立EBGP邻居关系

[r1]bgp 1 //启动BGP协议,需要定义真实的AS号,并没有多进程的概念
[r1-bgp]router-id 1.1.1.1 //指定RID,如果不指定,则环回接口IP最大>物理接口IP最大
[r1-bgp]peer 12.1.1.2 as-number 2
对端的IP地址 对端所在的AS号

[2]实际网络环境中,在一个AS内一般情况下会具有比较夫咋的拓扑结构,设备之间存在大量的备份和负载的路径,因此,
此时在建立IBGP邻居关系的时候,为了实现IBGP邻居关系有备份路径可达,建议使用双方的环回接口作为源/目IP地址

[r2]bgp 2
[r2-bgp]peer 3.3.3.3 as-number 2

若使用环回接口作为源/目IP地址建立IBGP邻居关系,必须修改本地环回接口为源
[r2-bgp]peer 3.3.3.3 connect-interface LoopBack 1 //修改本地环回接口为源

[3]若EBGP邻居间存在多条链路时,也建议使用环回接口建立邻居关系。
1)先实现IP可达
[r4]ip route-static 5.5.5.0 24 45.1.1.2
[r4]ip route-static 5.5.5.0 24 54.1.1.2
2)指定BGP邻居
[r4-bgp]peer 5.5.5.5 as-number 3
[r4-bgp]peer 5.5.5.5 connect-interface LoopBack 1
3)BGP规定EBGP邻居间默认所有的BGP数据包TTL为1,导致使用环回建立邻居关系时不正常,TTL不可达
[r4-bgp]peer 5.5.5.5 ebgp-max-hop 2 //修改EBGP邻居间的TTL值

查询邻居关系的状态:
[r1]display tcp status //查看TCP会话连接状态

[r1]display tcp status
TCPCB Tid/Soid Local Add:port Foreign Add:port VPNID State
b4aeb8f4 164/8 12.1.1.1:179 12.1.1.2:50824 0 Established

display bgp peer //查看BGP邻居表

BGP local router ID : 1.1.1.1
Local AS number : 1
Total number of peers : 1 Peers in established state : 1

邻居 版本 邻居的AS号 收到的路由数量
Peer V AS MsgRcvd MsgSent OutQ Up/Down State PrefRcv

12.1.1.2 4 2 38 39 0 00:36:42 Established 0

八、BGP的路由宣告
BGP协议本身不会自己计算路由,只是负责转发从其他BGP邻居传递过来的路由条目,
同时可以将本地路由表中任意的路由宣告到BGP协议中,
BGP协议配置时,只能宣告本地路由表中的任意条目,且宣告配置中网络号和掩码必须和路由表中一致。

[r1]bgp 1
[r1-bgp]network 1.1.1.0 24 //宣告路由

当完成BGP的宣告配置之后,本地会生成BGP表,此表装在着本地发出的以及接收到的所有BGP路由

[r1]display bgp routing-table //查看BGP表

BGP Local router ID is 1.1.1.1
Status codes: * - valid, > - best, d - damped,
h - history, i - internal, s - suppressed, S - Stale
Origin : i - IGP, e - EGP, ? - incomplete

Total Number of Routes: 1
Network NextHop MED LocPrf PrefVal Path/Ogn

*> 1.1.1.0/24 0.0.0.0 0 0 i
网络号/掩码 属性

BGP表中的*号表示,此路由条目可用。
BGP表中的>号表示,此路由条目优秀–可以加载到路由表,可以传递给其他BGP邻居
BGP表中的i表示,此路由条目是从IBGP邻居处学习到的
路由条目不优秀的原因:
1、下一跳不可达–若BGP表中的条目信息下一跳本地不可达,则此条目不优秀(因为AS by AS)

[r2]bgp 2
[r2-bgp]peer 3.3.3.3 next-hop-local //修改下一跳属性为本地-2.2.2.2
注意:路由条目传递给本地的EBGP邻居时,自动修改属性,包括下一跳修改为本地。
若本地路由表中有去往目标网段更好的路由,则在华为设备中BGP途径过来的路由不优秀,可以修改一下。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

狂阿弥20457

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

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

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

打赏作者

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

抵扣说明:

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

余额充值