又一部前期JUSTECH(南京捷式泰)工程师职业发展系列丛书完整拷贝。
MPLS(Multi-Protocol Label Switching)
目录
1:MPLS 基础实验
1.1实验拓扑
1.2实验需求:
a.要求取消PC1 PC2 设备路由功能,并且在PC1 PC2 按如下需求完成网关设置:
PC1 网关:172.16.1.1
PC2 网关:192.168.1.1
b.要求R2 R3 R4 启用EIGRP,AS 为1,R2 R4 将除172.16.1.0/24 及192.168.1.0/24网络都宣告进EIGRP
c.要求R2 R4 利用loopback 0 接口创建位于BGP 24 中的IBGP PEER 关系
d.要求R2 R4 将172.16.1.0/24 及192.168.1.0/24网络宣告进BGP进程
e.要求适当的设备参与MPLS
1.3实验步骤
步骤1:完成基础配置
例如:接口的IP 地址,底层协议
此时管理员应该注意R2 与R4 是否通过BGP 学习到对方172及192路由,利用如下命令行查看:
R2#show ip bgp
BGP table version is 3, local router ID is 2.2.2.2
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
Origin codes: i - IGP, e - EGP, ? - incomplete
*> 172.16.1.0/24
*>i192.168.1.0
R2#show ip route bgp
B
R4#show ip bgp
BGP table version is 3, local router ID is 4.4.4.4
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal,
Origin codes: i - IGP, e - EGP, ? - incomplete
*>i172.16.1.0/24
*> 192.168.1.0
R4#show ip route bgp
B
此时管理员是无法使得PC1 和PC2 通讯的,理由上R3 没有参与BGP 进程,所以当数据包丢给R3 时会出现丢包。
步骤2:配置MPLS
R2
Ip cef
Mpls label protocol ldp //设置标签分配分发协议为LDP
Mpls ldp router-id loopback 0 //设置当前LDP ROUTE-ID 为loopback 0 接口IP
Mpls label range 200 299 //设置当前LDP 标签分配时的取值范围
Interface e0/1
Mpls ip
R3
Ip cef
Mpls label protocol ldp //设置标签分配分发协议为LDP
Mpls ldp router-id loopback 0 //设置当前LDP ROUTE-ID 为loopback 0 接口IP
Mpls label range 300 399 //设置当前LDP 标签分配时的取值范围
Interface range e0/0 - 1
Mpls ip
R4
Ip cef
Mpls label protocol ldp //设置标签分配分发协议为LDP
Mpls ldp router-id loopback 0 //设置当前LDP ROUTE-ID 为loopback 0 接口IP
Mpls label range 400 499 //设置当前LDP 标签分配时的取值范围
Interface range e0/0
Mpls ip
假设管理员做完如上配置,应该看到控制台由如下信息提示管理员LDP 邻接关系建立完毕:
R3#
*Mar
R3#
*Mar
1.4校验
(1) 查看LDP 邻接关系发现
R3#show mpls ldp discovery //该命令行用于查看当前LSR是否通过LDP hello 消息发现LDP PEER
注意:
邻居发现时,LDP PEER ID 后面如果跟着上no host route ,是说当前LDP 设备没有抵达对端LDP ID 的主机路由。此时PEER 的ID 还是可达的。但是如果看到是no route ,那么基本意味着当前LDP 设备既没有抵达PEER ID 的网络路由也没有主机路由。
(2) 查看LDP 的邻接关系是否建立
R3#show mpls ldp neighbor //查看当前设备与LDP PEER 是否形成了LDP 邻接关系
//state输出字段如果上oper那么是意味着邻接关系确认建立
(3) 查看MPLS 标签信息库(LIB)
R2#show mpls ldp binding
R3#show mpls ldp bindings
R4#show mpls ldp bindings
(4)查看MPLS的标签转发信息库(lfib)
R4#show mpls forwarding-table
Local
tag
400
401
402
local 字段:该字段表明特定网络的本地标签信息
Outgoing字段:该字段表明特定网络的关联的出站标签信息
prefix 字段:该字段表明目标网络
Bytes tagged switched 字段:表明有多少流量利用当前条目被转发
Outgoing interface
Next-hop 字段:表明下一跳
R3#show mpls forwarding-table
Local
tag
300
301
R2#show mpls forwarding-table
Local
tag
200
201
202
(2) PC2 为源PING 172.16.1.2
PC2#ping 172.16.1.2
Type escape sequence to abort.
Sending 5, 100-byte ICMP Echos to 172.16.1.2, timeout is 2 seconds:
!!!!!
1.5 思考题
(1)MPLS LDP 邻接关系发现利用的是什么消息,什么方法?
(2)mpls ldp 邻接关系的建立用的是TCP 还是UDP,如何建立?
(3)请描述标签分配、分发、关联过程?
(4)请描述POP tag untag的作用?
(5)请描述被限制地址的作用?
(6)请描述在该拓扑中数据传递的整个过程?
2:MPLS 转发地址实验
2.1 实验拓扑
2.2 实验需求
a.要求管理员根据拓扑图需求完成R1 R2的接口配置,这里不允许启用任何动态路由协议或静态路由。
b.要求R1 与 R2 将本地的loopback 0配置为ldp 的ROUTER-ID,最终形成R1 与R2 间的LDP邻接关系。
2.3 实验步骤
步骤1:完成基础配置
例如:接口IP地址
步骤2:完成R1 与R2上的MPLS 配置
R1 R2
Ip cef
Mpls label protocol ldp
Mpls label range x y
Mpls ldp router-id loopback 0
Int e0/0
Mpls ip
此时管理员可以再R1 或R2 上利用如下命令来观察MPLS LDP 的邻接发现信息,现象如下:
R1#show mpls ldp discovery detail
//这里的transport ip address 可以说明确实默认情况下LDP 的传输地址就是LDP 的ROUTER-ID
//该部分显示当前设备根本没有抵达对等体传输地址的路由路径信息
R2#show mpls ldp discovery detail
步骤3:在接口下修改当前LDP 进程的传输地址信息
R1
Interface e0/0
mpls ldp discovery transport-address 31.31.12.1
//该命令行用于修改当前LDP 进程所发送的消息的源地址,当然也是修改传输地址
R2
Interface e0/0
mpls ldp discovery transport-address 31.31.12.2
此时管理员应该再次通过 “show mpls ldp discovery detail”来查看传输地址是否变化,现象如下:
R1#show mpls ldp discovery detail
R2#show mpls ldp discovery detail
2.4 校验
(1)确认R1 与R2 建立了LDP 邻接关系
2.5 思考题
(1)请解释传输地址的意义?
3:MPLS MTU 实验
3.1 配置方法:
Interface
Mpls
实验1要求将R2 的FA 0/0 及FA 0/1 接口MPLS MTU 改为100,并观察现象。
4:MPLS TTL 实验
4.1 实验拓扑
4.2 实验需求
a. 按拓扑要求完成基础配置
b. 在开启和关闭TTL 传播功能的环境下查看traceroute 命令的输出画面
4.3 配置步骤
步骤1:完成基础配置
例如:接口IP
步骤2:在路由器运行MPLS 默认开启TTL 传播功能的情况下,在R1上利用如下命令探测路径:
R1#traceroute
Protocol [ip]:
Target IP address: 31.31.56.6
Source address: 31.31.12.1
Numeric display [n]:
Timeout in seconds [3]:
Probe count [3]:
Minimum Time to Live [1]:
Maximum Time to Live [30]:
Port Number [33434]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Type escape sequence to abort.
Tracing the route to 31.31.56.6
此时管理员通过如上信息可以发现,实际上数据包经过的每台设备的下一跳都被显示。
步骤3:在R2 上关闭TTL-传播功能
R2
no mpls ip propagate-ttl forwarded
步骤4:在关闭TTL-传播功能的情况下,在R1上做路径探测
R1#traceroute
Protocol [ip]:
Target IP address: 31.31.56.6
Source address: 31.31.12.1
Numeric display [n]:
Timeout in seconds [3]:
Probe count [3]:
Minimum Time to Live [1]:
Maximum Time to Live [30]:
Port Number [33434]:
Loose, Strict, Record, Timestamp, Verbose[none]:
Type escape sequence to abort.
Tracing the route to 31.31.56.6
那么此时如上现象告诉我们只有接收IP包的路由器被路径探测发现,而那些运行MPLS 的路由器却都被隐藏。
5:MPLS 出方向标签通告过滤实验
5.1 实验拓扑
5.2 实验需求
a. R1 R2 R3 启用EIGRP 当做底层路由协议
b.R1 R2 R3 将所有loopback 接口及物理接口网络宣告进EIGRP
c.R1 R2 R3 参与MPLS,用LDP 当做标签分配、分发协议
d.要求R2 不将1.1.1.0/24网络的本地标签信息发送给R3
5.3 实验步骤
步骤1:完成基础配置
例如:接口IP底层协议
完成如上配置管理员需要确认R1 R2 R3 形成了EIGRP 邻接关系,并且学习了对方loopback 接口网络。
步骤2:完成MPLS 配置
R1
No mpls ldp advertise-label //关闭R1标签通告功能
Ip cef
Mpls label protocol ldp
Mpls label range 100 199
Mpls ldp router-id lo 0
Int e0/0
Mpls
R2
No mpls ldp advertise-label //关闭R2标签通告功能
Ip cef
Mpls label protocol ldp
Mpls label range 200 299
Mpls ldp router-id lo 0
Int e0/0 -1
Mpls
R3
No mpls ldp advertise-label
Ip cef
Mpls label protocol ldp
Mpls label range 300 399
Mpls ldp router-id lo 0
Int e0/1
Mpls
此时由于标签通告功能被关闭,我们查看R1 R2 R3 的LIB(标签信息库)应该只能看到当前LSR对本地网络分配的本地标签,而看不到任何LSR 对等体发送过来的远程标签信息,现象如下:
R1#show mpls ldp bindings
R2#show mpls ldp bindings
R3#show mpls ldp bindings
步骤3:在R2 上针对R3 这个LDP 对等体,过滤掉1.1.1.0/24网络的标签公告信息
R1 R3
Mpls ldp advertise-label //开启MPLS 标签通告功能
R2
Access-list 1 permit 31.31.12.0 0.0.0.255 //利用该ACL 方形被允许当做标签通告内容的网络
Ip access-list standard ACL2
Permit 3.3.3.3 0.0.0.0 //用该ACL匹配远端LDP 邻居的传输地址
Mpls ldp advertise-label for 1 to ACL2
5.4 校验
(1) 此时我们在R3上利用”show mpls ldp binding”命令,应该看到如下输出画面:
R3#show mpls ldp bindings
6:MPLS 入方向标签通告过滤
6.1 实验拓扑
6.2 实验需求
a. R1 R2 R3 启用EIGRP 当做底层路由协议
b.R1 R2 R3 将所有loopback 接口及物理接口网络宣告进EIGRP
c.R1 R2 R3 参与MPLS,用LDP 当做标签分配、分发协议
d.要求R3 不希望接收到1.1.1.0 的远程标签
6.3 配置步骤
步骤1:完成基础配置
例如:IP地址
步骤2:在R3 上完成入方向标签通告过滤配置,并且开启R2的标签通告功能:
R2
Mpls ldp advertise-label
R3
Access-list 1 permit 31.31.12.0 0.0.0.255
access-list 1 permit 2.2.2.0 0.0.0.255
Mpls ldp neighbor 2.2.2.2 labels accept 1
6.4 校验
(1) 在R3 上利用”show mpls ldp binding”查看是否只学习了31.31.12.0对应的远程标签,现象如下:
R3#show mpls ldp bindings
7:MPLS 的LDP 认证实验
7.1 实验拓扑
7.2 实验需求
a.所有接口参与EIGRP AS 1
b.要求R1 R2 形成LDP 邻接关系,并且启用LDP 认证,密码为PASSCCIE
7.3 实验步骤
步骤1:完成基础配置
例如:所有接口配置IP
步骤2:完成R1 R2 上的MD5密文认证
R1
Mpls ldp neighbor 2.2.2.2 password justech
R2
Mpls ldp neighbor 1.1.1.1 password justech
7.4 校验
(1) 确认LDP 的邻接关系建立