Upload
tevin
View
171
Download
1
Embed Size (px)
DESCRIPTION
实验四 BGP 协议实验. 2008 年 3 月. 主要内容. 实验原理 BGP 协议概述 BGP 报文种类 BGP 路由属性 BGP 路由聚合 BGP 路由策略和路由过滤 实验内容 注意事项. BGP协议概述. Internet 层次化路由体系结构 自治系统 BGP 协议基本概念 BGP工作机制 BGP 两种邻居- IBGP 和 EBGP BGP路由通告原则 BGP同步 成为BGP路由的途径. Internet 层次化路由体系结构. 网络业务供应商. 网络业务供应商. 区域业务供应商. 区域业务供应商. 区域业务供应商. - PowerPoint PPT Presentation
Citation preview
北航计算机网络实验
实验四 BGP 协议实验2008 年 3月
北航计算机网络实验
2
主要内容实验原理
BGP 协议概述BGP 报文种类BGP 路由属性BGP 路由聚合BGP 路由策略和路由过滤
实验内容注意事项
北航计算机网络实验
3
BGP协议概述
Internet 层次化路由体系结构自治系统BGP 协议基本概念BGP工作机制BGP 两种邻居- IBGP 和 EBGPBGP路由通告原则BGP同步成为 BGP路由的途径
北航计算机网络实验
4
Internet 层次化路由体系结构网络业务供应商 网络业务供应商
区域业务供应商 区域业务供应商 区域业务供应商 区域业务供应商
ISP ISP ISP ISP ISP ISP ISP ISP
用户 用户 用户 用户 用户 用户 用户 用户
北航计算机网络实验
5
自治系统什么是自治系统( AS )为什么要引入自治系统?自治系统内部的路由协议自治系统之间的路由协议 —— BGP
北航计算机网络实验
6
BGP协议BGP 是外部路由协议,用来在 AS 之间传递路由信息BGP 是一种距离矢量路由协议,从设计上避免了环路的发生传送协议: TCP ,端口号 179支持 CIDR (无类别域间选路),控制路由表的扩展路由更新:只发送增量路由为路由附带属性信息丰富的路由过滤和路由策略
北航计算机网络实验
7
BGP工作机制AS1
AS7
AS6
AS5
AS4
AS3
AS2
北航计算机网络实验
8
BGP 两种邻居- IBGP 和 EBGP
EBGPEBGP
RTB
RTC
IBGP
RTA
RTD
RTE
AS100 AS300
AS200
BGP Speaker
北航计算机网络实验
9
BGP路由通告原则 多条路径时, BGP Speaker 只选最优的给自己使用 BGP Speaker只把自己使用的路由通告给相邻体 BGP Speaker 从 EBGP 获得的路由会向它所有 BG
P 相邻体通告(包括 EBGP 和 IBGP ) BGP Speaker从 IBGP获得的路由不向它的 IBGP相邻体通告
BGP Speaker 从 IBGP 获得的路由是否通告给它的 EBGP 相邻体要依 IGP 和 BGP 同步的情况来决定 连接一建立, BGP Speaker 将把自己所有 BGP 路由通告给新相邻体
北航计算机网络实验
10
BGP同步
EBGP EBGP
RTB
RTC
IBGP
RTA
RTD
RTE
RTF
S0:1.1.1.2/24
E0:10.1.1.1/24
S0:1.1.1.1/24
S1:2.1.1.2/24S0:2.1.1.1/24
AS100
AS200
AS300
目的地址 NEXT-HOP 来源1.1.1.1 RTB BGP1.1.1.1 RTD IGP
北航计算机网络实验
11
成为 BGP路由的途径
BGP 的路由信息需要通过配置命令的方式注入到 BGP 中•纯动态注入 将 IGP 发现的路由全部注入•半动态注入 有选择的注入 IGP 发现的路由•静态注入 注入静态配置的路由
北航计算机网络实验
12
成为 BGP路由的途径之一:纯动态注入
OSPF
RTB
AS200
把 OSPF ( IGP )发现的路由 18.0.0.1/8 、 18.0.1.1/8 全部动态地注入到 RTB 的 BGP 路由表中。
18.0.1.1/8
18.0.0.1/8
北航计算机网络实验
13
成为 BGP 路由的途径之一:半动态注入
18.0.0.1/8
RTB
AS200
OSPF
对 OSPF ( IGP )发现的路由进行过滤,只选择 18.0.0.1/8 动态地注入到 RTB 的 BGP 路由表中。
18.0.1.1/8
北航计算机网络实验
14
成为 BGP 路由的途径之三:静态注入
18.0.0.1/8
AS200
人为配置静态路由 18.0.0.1/8 注入到 RTB 的 BGP 路由表中。
RTB18.0.1.1/8
北航计算机网络实验
15
主要内容实验原理
BGP 协议概述BGP 报文种类BGP 路由属性BGP 路由聚合BGP 路由策略和路由过滤
实验内容注意事项
北航计算机网络实验
16
BGP 报文种类BGP 报文有四种类型 :
Open “ ”:打招呼 你好,跟我交个朋友吧! KeepAlive :我还活着呢,别不理我 Update :有新闻 ...... Notification :我不跟你玩了 !
北航计算机网络实验
17
BGP 报文头BGP 报文的格式是一样的:都是“报文头 + 报文体”的格式。下面给出的是 BGP 报文头 :
Marker (16 byte )
Length (2 byte) Type ( 1 byte )
北航计算机网络实验
18
Open 报文
Version
1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70
My Autonomous System
Hold Time
BGP Identifier
Optional Parameters Len
Optional Parameters
Open 报文是由报文头加如下结构构成的。Marker (16 byte )
Length (2 byte) Type ( 1 byte )
交换和协商各自的版本、自治系统号、保持时间、 BGP 标识符等信息。
北航计算机网络实验
19
KeepAlive 报文
Marker (16 byte )
Length (2 byte) Type ( 1 byte )
KeepAlive 报文只有报文头。
在 BGP 对等体间周期地发送,以确保连接保持有效。
北航计算机网络实验
20
Update 报文
Unfeasible Routes Length
1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70
Withdrawn Routes
Path Attribute Length
Path Attributes
Network Layer Reachability Information
Update 报文由报文头加如下结构构成。Marker (16 byte )
Length (2 byte) Type ( 1 byte )
携带路由更新信息,包括撤销路由信息和可达路由信息及其路径属性。
北航计算机网络实验
21
Notification报文
Notification 报文由报文头加如下结构构成。Error Code
1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70 1 2 3 4 5 6 70
Error Subcode
Data
61 2 3 4 5错误代码
错误类型 消息头错 OPEN消息错
UPDATE消息错
保持时间超时 状态机错 退出
当 BGP 检测到差错(连接中断、协商出错、报文差错等)时,发送 NOTIFICATION 报文,关闭同对等体的连接。
北航计算机网络实验
22
BGP协议的状态机
Active
Open-sent
Open-confirm Established
Idle
Connect
Connect-Retrytimer expiry
TCP connection fails
Connect-Retrytimer expiry
Start
Others
TCP connection fails
Error
Error Error
KeepAlivetimer expiry
KeepAlive packet received
1. KeepAlive timer expiry2. Update received3. KeepAlive received
Correct OPENpacket received
TCP connection setup
TCP connection setupOthers
北航计算机网络实验
23
BGP 协议中消息的应用通过 TCP 建立 BGP 连接时,发送 open 消息连接建立后,如果有路由需要发送或路由变化时,发送 UPDATE 消息通告对端路由信息稳定后此时要定时发送 KEEPALIVE 消息以保持 BGP 连接的有效性当本地 BGP 在运行中发现错误时,要发送 NOTIFICATION 消息通告 BGP 对端
北航计算机网络实验
24
主要内容实验原理
BGP 协议概述BGP 报文种类BGP 路由属性BGP 路由聚合BGP 路由策略和路由过滤
实验内容注意事项
北航计算机网络实验
25
BGP的路由属性
表达了路由的特征过渡和非过渡的必遵和可选的便于扩展截至目前共 16 种属性
BGPÐ Ò éµ ÄÖص ã
北航计算机网络实验
26
常见 BGP 路由属性1 、 Origin2 、 AS-Path3 、 Next hop4 、 MED5 、 Local-Preference6 、 Atomic-Aggregate7 、 Aggregator8 、 Community
9 、 Originator-ID10 、 Cluster-List11 、 Destination Pref (MCI)12 、 Advertiser (Baynet)13 、 Rcid-Path (Baynet)14 、 MP_Reach_NLRI15 、 MP_Unreach_NLRI16 、 Extended_Communitie
s
北航计算机网络实验
27
起点 (Origin)属性
一般的,具体的实现按如下方式决定一条路由的 Origin 属性某条路由是直接而具体的注入到 BGP 路由表中的,则 origin 属性为 IGP路由是通过 EGP 得到的,则 origin 属性为
EGP其他情形下, Origin 属性都为 Incomplet
e
北航计算机网络实验
28
AS路径 (AS-Path)属性D(18.0.0.0/8)
AS200AS300
AS400
AS100 AS500
RTA
RTB
30.0.0.1
30.0.0.2D,dl 400 300 200
D,d2 500 200
D,d1 400 300 200>D,d2 500 200
北航计算机网络实验
29
下一跳 (Next Hop)属性
18.0.0.0/8
20.0.0.0/8
RTARTC
RTB
RTD19.0.0.0/8
21.0.0.2
21.0.0.1
10.0.0.2
10.0.0.3
10.0.0.1AS100
AS200
IBGPIBGP
EBGP
RTB可经下一跳 10.0.0.2 到达 18.0.0.0/8可经下一跳 10.0.0.3 到达 20.0.0.0/8
RTA可经下一跳 10.0.0.2 到达 18.0.0.0/8可经下一跳 10.0.0.3 到达 20.0.0.0/8可经下一跳 21.0.0.1 到达 19.0.0.0/8
RTC 可经下一跳 10.0.0.1 到达 19.0.0.0/8可经下一跳 10.0.0.3 到达 20.0.0.0/8
北航计算机网络实验
30
本地优先属性AS400
AS100
AS300AS200
RTA
RTB RTC
RTD RTE
RTF
D (18.0.0.0/8)
30.0.0.1
30.0.0.2
20.0.0.1
20.0.0.2
D , local-pref1 100 D, local-pref2 200
D , local-pref1 100 >D , local-pref2 200RTA 就会优先选择本地优先级高的 local-pref2
北航计算机网络实验
31
MED(Multi-Exit-DISC)属性
D(18.0.0.0/8)
RTA
RTB RTC
30.0.0.1
30.0.0.2
20.0.0.1
20.0.0.2
AS100
AS200
>D,metric1 10 D,metric2 20
D,metric1 10 D,metric2 20
RTA 会选择 metric 值较小的 metric1
IBGP
北航计算机网络实验
32
团体 (Community)属性团体是一组有相同性质的目的地的路由 , 一个团体不限于一个网络或一个自治系统,它没有物理边界。公认的团体 : no-export
不通告给联盟 /AS 外的 BGP 相邻体 no-advertise
不通告给任何 BGP 相邻体 local-AS
不通告给 EBGP 相邻体 Internet
通告给所有其他路由器
北航计算机网络实验
33
主要内容实验原理
BGP 协议概述BGP 报文种类BGP 路由属性BGP 路由聚合BGP 路由策略和路由过滤
实验内容注意事项
北航计算机网络实验
34
BGP 聚合——只通告聚合路由AS100 AS200
172.16.0.0/24172.16.1.0/24172.16.2.0/24......172.16.15.0/24
RTB
EBGP
172.16.0.0/20
172.16.0.0/20
RTA
[RTA-bgp] aggregate 172.16.0.0 255.255.240.0 detail-suppressed
北航计算机网络实验
35
BGP 聚合——通告聚合路由和具体路由AS100 AS200
172.16.0.0/24172.16.1.0/24172.16.2.0/24......172.16.15.0/24
RTB
EBGP
172.16.0.0/20
172.16.0.0/20
RTA
[RTA-bgp] aggregate 172.16.0.0 255.255.240.0[RTB-bgp] aggregate 172.16.0.0 255.255.240.0
172.16.0.0/24172.16.1.0/24172.16.2.0/24......172.16.15.0/24
172.16.0.0/20
北航计算机网络实验
36
主要内容实验原理
BGP 协议概述BGP 报文种类BGP 路由属性BGP 路由聚合BGP 路由策略和路由过滤
实验内容注意事项
北航计算机网络实验
37
路由过滤——基于 ACL
RTA:[Quidway] acl number 1[Quidway-acl-1] rule deny 18.0.0.0 0.255.255.255[Quidway-acl-1] rule permit 0.0.0.0 255.255.255.255[RTA-bgp]peer 10.0.0.1 filter-policy 1 export
30.0.0.1 30.0.0.2
10.0.0.2
10.0.0.120.0.0.1
20.0.0.2
18.0.0.0/8AS200
RTA
AS100
RTD
RTB
RTC
18.0.0.0/8
18.0.0.0/8
19.0.0.0/8
AS300
北航计算机网络实验
38
路由过滤——基于 AS-Path
RTA: [RTA] ip as-path-acl 1 permit ^$[RTA-bgp] peer 10.0.0.1 as-path-acl 1 1 export
30.0.0.1 30.0.0.2
10.0.0.2
10.0.0.120.0.0.1
20.0.0.2
AS200
RTA
AS100
RTD
RTB
RTC
仅发送本 AS 的路由 仅接受从 AS100 始发的 路由
AS300
RTD: [RTD] ip as-path-acl 1 permit \b100$[RTD-bgp]peer 20.0.0.2 as-path-acl 1 import
^ 表示路径字符串的开始, $表示结束, \b是 AS 号码之间的分割符。^$匹配本地路由; \b100$ 匹配从 AS100 始发的路由。
北航计算机网络实验
39
路由过滤-基于 Route Policy
1.1.1.1
1.1.1.2
RTA
RTC
AS200
AS100
18.0.0.0/8
19.0.0.0/8
OSPF
RTB
不允许 RTB 向 AS 外通告路由18.0.0.0/8 ;且所有通告出去的路由的 metric 值必须为 888
[RTB]acl 1[RTB-acl-1] rule deny 18.0.0.0 0.255.255.255[RTB-acl-1] rule permit any[RTB]route-policy deny18 permit 10[RTB-route-policy] if-match ip address 1[RTB-route-policy] apply cost 888[RTB-bgp] peer 1.1.1.2 route-policy deny18 export
北航计算机网络实验
40
一个 BGP 路由器对路由的处理过程从对等体接受路由
输入策略机
发送路由给对等体
决策过程 加入路由表 输出策略机
根据属性过滤和设置属性
路由聚合
合并具体路由
路由表
输入策略机IGP 路由
BGP路由
安装路由选择最佳路由
北航计算机网络实验
41
BGP路由选择过程
综合起来,本地 BGP 路由选择的过程为:(1) 如果此路由的下一跳不可达,忽略此路由(2) 选择本地优先级较大的路由(3) 选择本地路由器始发的路由 ( 本地优先级相同 )(4) 选择 AS 路径较短的路由(5) 依次选择起点类型为 IGP,EGP,Incomplete 类型的路由(6) 选择 MED 较小的路由(7) 选择 RouterID 较小的路由
北航计算机网络实验
42
BGP典型组网图
RTA
RTB
RTC
RTD
RTE
RTF
RTG
RTH
AS100
IBGP 逻辑全连接
RIP
AS200 AS300
AS400
AS500
OSPF
OSPF
RIP
EBGPEBGP
EBGP
EBGP
EBGP
北航计算机网络实验
43
主要内容实验原理实验内容
BGP 协议分析实验BGP 同步机制实验BGP状态转换实验BGP 路由聚合实验BGP 路由属性实验BGP 路由策略实验设计实验
注意事项
北航计算机网络实验
44
8.1 BGP 协议分析( P172)
E0/1VLAN2:1.1.1.2/16
E0/2
Vlan2:2.1.1.1/16
E0/2Vlan3:3.1.1.2/16Vlan3:3.1.1.1/16
E0/1
Loopback1:4.4.4.4/8Loopback1:5.5.5.5/8
AS100 AS200
AS300
E0:1.1.1.1/16E0:2.1.1.2/16
S1S2
R1R2
PCA
[R1] bgp 100 // 启动 BGP ,自治系统号为 100 [R1-bgp] group r1s1 external // 配置对等体组[R1-bgp] peer r1s1 as-number 300 // 指定对等体组的自治系统号[R1-bgp] peer 1.1.1.2 group r1s1 // 向对等体组中加入组员
8.1.6 实验步骤1、步骤 2略去,端口镜像一律用 HUB 替代。2、修改图 8- 5如右图3、步骤 3 中路由器R1、 R2 的配置一律如下面所示:
北航计算机网络实验
45
BGP 同步机制验证( P174)
E0/1VLAN2:1.1.1.2/16
E0/2Vlan3:3.1.1.1/16
Loopback1:4.4.4.4/8
Loopback1:5.5.5.5/8
AS100
AS300
E0:1.1.1.1/16
E0:2.1.1.2/16Vlan3:2.1.1.1/16
E0/2E0/1Vlan2:3.1.1.2/16
S1
R1
R2
S2
PCA
修改图 8- 6如右图
北航计算机网络实验
46
BGP 同步机制验证( P174)续( 1 )在上一实验的基础上,如组网图 -6进行组网和配置,注意 S1 的 BGP 邻居改为 1.1.1.1 和 2.1.1.2 , R2 的 BGP 邻居改为 3.1.1.1 , R1 的 BGP 邻居不变。注入 5.0.0.0 网段和 4.
0.0.0 网段的路由信息。查看 R1 和 R2 的路由表,是否有对方loopback 的路由信息?为什么?在 R1 和 R2 上以本身的 loo
pback 为源地址 ping 对方的 loopback。能否 ping 通?
北航计算机网络实验
47
BGP 同步机制验证( P174)续( 2 )在自治系统 300 内配置 ospf 协议,注意不要将 R2 的 Loopback1配置在 ospf范围内。观察 R1 、 S1 、 S2 、 R2 的路由表信息,找出与在R1 上以 5.5.5.5 为源地址 ping 4.4.4.4 相关的路由信息,分析在哪台设备上缺少相关路由信息,试在该设备上进行适当的静态路由配置,使得在 R1 上以 5.5.5.5 为源地址能 ping 通 4.4.4.4。( 3 )试分析 BGP 不同步引起的问题。
北航计算机网络实验
48
8.2 BGP状态转换分析将组网图和配置恢复为 8.1.6节步骤 5按照 8.2.6 的实验步骤分析 BGP 的状态变化。
北航计算机网络实验
49
8.3 BGP 路由聚合 (P178)修改图 8 - 8 如右图在 8.2.6节基础上继续实验注:聚合路由只需要在 R1 上配置
E0/1VLAN2:1.1.1.2/16
E0/2
Vlan2:2.1.1.1/16
E0/2Vlan3:3.1.1.2/16Vlan3:3.1.1.1/16
E0/1
Loopback1:4.4.4.4/8Loopback1:5.5.5.5/8
AS100
AS200
AS300
E0:1.1.1.1/16E0:2.1.1.2/16
Loopback3:192.168.1.1/24
Loopback2:192.168.0.1/24
S1 S2
R1R2
图 8- 8错误更正( P179 ): 1 、将 [R1]bgp 一律改为 [R1]bgp 1002 、将 [R2]bgp 一律改为 [R2]bgp 200
北航计算机网络实验
50
8.4 BGP 的路由属性( P183)修改图 8 -10 如右图在 8.3.6节基础上继续实验
E0/1VLAN1:1.1.1.2/16
E0/2
Vlan1:2.1.1.1/16
E0/2Vlan2:3.1.1.2/16Vlan2:3.1.1.1/16
E0/1
Loopback1:4.4.4.4/8Loopback1:5.5.5.5/8
AS100
AS200
AS300
E0:1.1.1.1/16E0:2.1.1.2/16
Loopback3:192.168.1.1/24
Loopback2:192.168.0.1/24
Loopback1:6.6.6.6/8
S1
R1
S2
R2
8 - 10错误更正: 1、 P184 步骤 2中,将 [R2-bgp]dis bgp 改为 [R2-bgp]dis bgp routing-table2 、 P185 第 6行 将 [S2-bgp] 改为 [S1-bgp]dis bgp routing-table
北航计算机网络实验
51
8.5 BGP 的路由策略错误更正
将 dis bgp 改为 dis bgp routing-table将 ACL 1 改为 ACL Number 2001步骤 3 中,应先配置 acl Number 2001和 route-policy ,再在 BGP 中应用 ro
ute-policy 。
北航计算机网络实验
52
设计实验 1如图 8-9 ,按照图上要求,实现配置,并进行 BGP 协议下一跳属性分析。
18.0.0.0/8
20.0.0.0/8
S1S2
R1
R219.0.0.0/8
21.0.0.2
21.0.0.1
10.0.0.2
10.0.0.3
10.0.0.1AS100
AS200
IBGPIBGP
EBGP
R1可经下一跳 10.0.0.2 到达 18.0.0.0/8可经下一跳 10.0.0.3 到达 20.0.0.0/8
S1可经下一跳 10.0.0.2 到达 18.0.0.0/8可经下一跳 10.0.0.3 到达 20.0.0.0/8可经下一跳 21.0.0.1 到达 19.0.0.0/8
S2 可经下一跳 10.0.0.1 到达 19.0.0.0/8可经下一跳 10.0.0.3 到达 20.0.0.0/8
北航计算机网络实验
53
设计实验 2 基于 AS_PATH 的路由策略
Loop1:1.1.1.1/8
Loop2:10.1.1.1/8
R1 E0:11.2.1.1/16
AS100VALN1:11.2.1.2/16
Loop1:3.3.3.3/8
Loop1:2.2.2.2/8
E0:11.3.1.1/16
VLAN1:11.3.1.2/16
VLAN2:11.4.1.1/16
VLAN2:11.4.1.2/16
Loop1:4.4.4.4/8
Loop2:11.4.2.1/24AS200
S1
S2AS300
AS400
E0/24
E0/1
R2
E0/1 E0/24
要求:利用 AS-path 实现路由策略, S1不向 R1 通告 AS300内的任何路由。
北航计算机网络实验
54
设计实验 3 基于 local preference 的路由选择
AS100S1 R2
R1
LOOP1: 18.0.0.1/8
VLAN2 : 10.0.0.2/24 E0/1: 40.0.0.1/24
AS200
要求:配置合适的 Local-preference 属性,实现 S2到 18.0.0.0/8 的路由,优先选择 S2->R2->R1 。注: local-preference 默认值为 100.配置命令: [R1-bgp]default local-preference 10
S2VLAN3 : 20.0.0.1/24
VLAN3 : 20.0.0.2/24 VLAN2 : 30.0.0.1/24
E0/0 : 30.0.0.2/24
E0/1: 40.0.0.2/24E0/0: 10.0.0.1/24
D : 18.0.0.0/8 30.0.0.2
北航计算机网络实验
55
设计实验 4 基于med 属性的路由选择
AS100
S1 R2
R1
LOOP1: 18.0.0.0/8VLAN2 : 10.0.0.2/24
E0/1: 30.0.0.2/24AS200
VLAN3 : 20.0.0.1/24
E0/1 : 30.0.0.1/24
E0/1: 10.0.0.1/24
E0/0: 20.0.0.2/24
要求:配置合适的 Med 属性实现 R1 到 18.0.0.0/8 的路由优先选择 R1->S1 。注: med 默认值为 0.配置命令: [S1-bgp]default med 10
北航计算机网络实验
56
主要内容实验原理实验内容
BGP 协议分析实验BGP 同步机制实验BGP状态转换实验BGP 路由聚合实验BGP 路由属性实验BGP 路由策略实验设计实验
注意事项
北航计算机网络实验
57
注意事项实验配置相对简单,请着重分析和理解协议。设计实验一、二为必做设计实验三、四为选做
北航计算机网络实验
58
讲解结束
下一个实验 -- 网络管理