14-NAT-URPF-VPLS操作
本章节下载 (868.19 KB)
目 录
3.4.3 PE(Provider Edge Router)
3.4.4 VSI(Virtual Switch Instance)
& 说明:
本章中提到的业务处理板主要指LSB1NATB0板。
如RFC3022所描述,NAT(Network Address Translation网络地址转换)是将IP数据报报头中的IP地址转换为另一个IP地址的过程。在实际应用中,NAT通过使用少量的公网IP地址来替换大量的私网IP地址,实现了私网访问公网的功能,减缓了可用IP地址空间枯竭的速度。
& 说明:
私网IP地址是指内部网络里的主机地址,公网IP地址是指在因特网上全球唯一的IP地址。
RFC1918为私网预留出了三个IP地址块,如下:
l A类:10.0.0.0~10.255.255.255
l B类:172.16.0.0~172.31.255.255
l C类:192.168.0.0~192.168.255.255
上述三个范围内的IP地址不会被分配到因特网上,因此使用者不必向ISP或注册中心申请而可以在公司或企业内部自由使用。
下面的图1-1描述了一个基本的NAT应用。
如图1-1所示,作为NAT设备的交换机处于企业内部网络和外部网络的连接处。当内部PC(IP地址为192.168.1.3)向外部服务器(IP地址为202.120.10.2)发送的数据报1通过NAT设备时,NAT进程查看报头内容,发现该数据报是发往外网的,且符合NAT转换规则,那么它将数据报1的源地址字段的私网IP地址192.168.1.3转换成公网IP地址202.169.10.1,然后将数据报1按要求转发出去,同时在网络地址转换表中记录这一映射;当外部服务器(IP地址为202.120.10.2)给内部PC(初始的目的IP地址为202.169.10.1)发送的应答报文2到达NAT设备后,NAT进程再次查看报头内容,并查找当前网络地址转换表的记录,用原来的内部PC私网IP地址192.168.1.3替换初始的目的IP地址。
上述的NAT过程对终端(如图1-1中的内部PC和外部服务器)来说是透明的。对外部服务器而言,它认为内部PC的IP地址就是202.169.10.1,并不知道有192.168.1.3这个地址。因此,NAT“隐藏”了企业的内部网络。
NAT的优点在于:在“隐私”(Privacy)保护的前提下,为内部主机提供了访问外部网络资源的功能。但它也有一些缺点:如果报文里有IP地址或端口需要进行转换,则报文不能被加密。例如,不能使用加密的FTP连接,否则FTP的port命令不能被正确转换。
从图1-1的网络地址转换过程中可以发现,当内部网络访问外部网络时,NAT将会选择一个合适的公有地址来替换内部网络数据报的源地址。在图1-1中选择的是NAT设备出接口上定义的IP地址。这样所有的内部网络主机访问外部网络时,只拥有这一个公网IP地址。在这种情况下,某一时刻只允许最多一台内部主机访问外部网络,这种情况称为“一对一网络地址转换”。在内部网络的多台主机并发地请求访问外部网络时,“一对一网络地址转换”仅能够实现其中一台主机的访问请求。
NAT的一种变形实现了对并发请求的响应。允许NAT设备拥有多个公网IP地址,当第一台内部主机访问外部网络时,NAT进程选择一个公有地址IP1,并在网络地址转换表中添加记录;当另一台内部主机访问网络时,NAT进程选择另一个公有地址IP2。以此类推,从而满足了多台内部主机并发访问外部网络的请求。这称为“多对多网络地址转换”。
这两种地址转换方式的特点可以参见下面的表1-1。
形式 |
特点 |
一对一网络地址转换 |
NAT设备只拥有一个公网IP地址 某一时刻只允许最多一台内部主机访问外部网络 |
多对多网络地址转换 |
NAT设备拥有多个公网IP地址 可以满足多台内部主机并发访问外部网络的请求 |
& 说明:
NAT设备拥有的公网IP地址数目要远少于内部网络的主机数目,因为所有的内部主机并不会同时访问外网。公网IP地址的数目,应根据网络高峰期可能访问外网的内部主机数目的统计值来确定。
在实际应用中,我们可能希望只有某些特定的内部主机才具有访问Internet的权利,也即是当NAT进程查看数据报的报头内容时,如果发现源IP地址不在允许访问Internet的地址范围内,它将不会进行网络地址转换。这就是一个对NAT进程实行控制的问题。
交换机可以通过定义地址池来实现“多对多网络地址转换”,同时可以利用访问控制列表来对网络地址转换进行控制。
地址池:用于网络地址转换的一些公网IP地址的集合。用户应根据自己拥有的合法IP地址数目、内部网络主机数目以及实际的应用情况,来配置恰当的地址池。在网络地址转换的过程中,NAT进程将会从地址池中挑选出一个地址作为转换后的源地址。
利用访问控制列表控制网络地址转换。只有满足访问控制列表条件的数据报才可以进行网络地址转换。这可以有效地控制网络地址转换的使用范围,使某些特定的主机才有权利访问Internet。
按照普通的NAT方式,把一个内部主机的地址和一个外部地址一一映射后,在这条映射表项被清除之前,其它内部主机就不能映射到这个外部地址上。NAPT(Network Address Port Translation ,网络地址端口转换)方式提供了一对多或多对多的地址映射方法,使有效节省外部地址成为可能。NAPT有时也被称为PAT或Address Overloading。
NAPT在映射IP地址的同时还对4层端口进行映射,也就是把不同源地址的多条会话通过映射到某一外部地址的不同端口加以区分,使多个内部地址可以同时复用一个或多个外部地址。
下面的图1-2描述了NAPT的基本原理。
如图1-2所示,四个带有内部地址的数据报到达了作为NAT设备的交换机:
l 数据报1和数据报2来自同一个内部地址但具有不同的源端口号;
l 数据报3和数据报4来自不同的内部地址但具有相同的源端口号。
通过NAPT映射,四个数据报都被转换成同一个公有地址,但每个数据报被赋予了不同的源端口号,因而仍保留了各报文之间的区别。当回应报文到达NAT设备时,NAT进程仍然能够根据回应报文的目的地址和端口号来区分该报文应转发到的内部主机。
配置NAT outbound时,允许直接使用与外部网络相连接的VLAN接口地址作为NAT转换后的源地址,这种特性称之为Easy IP。在ISP只提供一个公网接口地址或内部主机地址数量不多等情况下,可以使用Easy IP方式来方便的配置NAT。
NAT隐藏了内部网络的结构,具有“屏蔽”内部主机的作用。但是在实际应用中,可能需要给外部主机提供一些访问内部主机的机会,比如让外部主机能够访问内部网络中的WWW服务器或者FTP服务器。使用NAT可以灵活地添加内部服务器,例如,可以使用202.169.10.10作为内部WWW服务器的公有地址;使用202.110.10.11作为内部FTP服务器的公有地址;甚至还可以使用202.110.10.12:8080作为内部WWW服务器的外部地址。
非标准FTP内部服务器,不同与一般的FTP内部服务器,它的私网端口可以使用FTP的默认端口21以外的其他端口。在标准的FTP内部服务器的配置中,公网端口可以使用0~12287以内的任意端口,私网端口必须使用21端口,才被识别为FTP内部服务器;在非标准FTP内部服务器的配置中,公网端口的仍然是0~12287,私网端口范围扩充到0~65535。需要注意的是除FTP的默认端口21以外的其他知名端口不能被使用
NAT可支持的特殊协议包括:ICMP(Internet Control Message Protocol,Internet控制报文协议)、DNS(Domain Name System,域名系统)、ILS(Internet Locator Service,Internet定位服务)、H.323、FTP(File Transfer Protocol,文件传输协议)。
如表1-2所示,NAT的配置包括以下命令:
配置项 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
配置地址池 |
nat address-group group-number start-addr end-addr |
必选 |
进入VLAN接口视图 |
interfacevlan-interface vlan-id |
- |
配置网络地址转换 |
nat outbound acl-number [ address-group group-number [ no-pat ] ] slot slotno |
必选:通过配置不同参数,实现不同方式的网络地址转换 |
配置内部服务器 |
nat server protocol pro-type global global-addr [global-port1 ] [ global-port2 ] inside host-addr1 [ host-addr2 ] [ host-port ] slot slotno 或者 nat server protocol pro-type global global-addr [ global-port ] inside host-addr [ host-port ] slot slotno |
可选 |
配置非标准FTP内部服务器 |
nat ftp server global global-addr global-port inside host-addr host-port slot slotno |
可选 |
配置NAT的黑名单属性 |
nat blacklist start |
可选 |
配置地址转换表项的老化时间 |
nat aging-time { alg time-value | np slow } |
可选 |
清除内存和NP中地址转换的映射表 |
reset nat session slot slotno |
可选 |
& 说明:
在配置标准的FTP内部服务器后,自然支持公网FTP客户端采用passive方式访问私网内FTP服务器;对于公网FTP客户端采用port方式访问私网FTP服务器的情况,只支持数据端口为20的FTP服务器,如果FTP服务器的数据端口非20,为了保证业务的畅通、以及数据连接和控制连接采用同一个公网地址进行转换,那么必须配置同标准FTP内部服务器相对应的NAT规则,即NAT规则绑定的地址池地址个数为1个,并且地址池地址与标准FTP内部服务器的公网地址重叠。
地址池是一些连续的公网IP地址集合。如果地址池的开始IP地址和地址池的结束IP地址相同,则表示只有一个地址。
在网络地址转换的过程中,NAT设备会从地址池当中选择某个IP地址作为转换后的源地址。地址池的配置是由nat address-group命令完成的。
请在系统视图下进行下列配置。
操作 |
命令 |
配置地址池 |
nat address-group group-number start-addr end-addr |
删除地址池 |
undo nat address-group group-number |
注意:
l 地址池长度(地址池中包含的所有公有地址个数)不能超过256。
l 网段地址和广播地址不允许配置为地址池地址.
l NAT地址池中配置的IP地址与内部网络中的IP地址不能重合。
l 当某个地址池和某个访问控制列表进行了关联后,这个地址池是不允许删除的。
l 当启用NAPT方式转换时,地址池中的地址个数不能超过3个。
通过配置访问控制列表和NAT地址池(或接口地址)的关联,可以将匹配访问控制列表规则的数据报的源地址进行地址转换。当内部网络有数据报要发往外部网络时,首先根据访问控制列表判定是否为允许的数据报,然后再根据转换关联找到与之对应的地址池(或接口地址)进行转换。
将访问控制列表和地址池(或接口地址)进行关联是由nat outbound命令配置的。不同形式的网络地址转换,配置方法稍有不同。
注意:
在取消网络地址转换或NAPT转换后,若需要重新配置网络地址转换或NAPT转换,建议执行reset nat session slot命令。
使用下面的命令将访问控制列表和地址池进行关联,同时指定处理NAT业务的LSB1NATB0板,实现网络地址转换。
请在VLAN接口视图下进行下列配置。
操作 |
命令 |
配置一对一网络地址转换 |
nat outbound acl-number address-group group-number no-pat slot slotno |
取消一对一网络地址转换 |
undo nat outbound acl-number address-group group-number no-pat slot slotno |
& 说明:
NAT引用的ACL只有源IP地址和目的IP地址生效,判断两条规则是否冲突也是以这两个域作为判断的标准。
关键字no-pat表示只转换数据包的IP地址而不使用TCP/UDP协议中的端口信息,即只实现内部IP地址和外部IP地址一一对应的NAT转换。
使用下面的命令将访问控制列表和地址池进行关联,可实现NAPT转换。
请在VLAN接口视图下进行下列配置。
操作 |
命令 |
配置NAPT转换 |
nat outbound acl-number address-group group-number slot slotno |
取消NAPT转换 |
undo nat outbound acl-number address-group group-number slot slotno |
l 选择了no-pat关键字:只转换数据报的IP地址而不使用端口信息,即只实现一一对应的网络地址转换。
l 不选择no-pat关键字:启用了NAPT功能,可实现多对一的网络地址转换。
注意:
当启用NAPT方式转换时,地址池中的地址个数不能超过3个。
如果网络地址转换命令中不带address-group关键字,则实现了Easy IP的特性,即进行网络地址转换时,直接使用NAT设备VLAN出接口上的IP地址作为转换后的源地址。利用访问控制列表可以控制能够实现NAT的内部网络地址。
请在VLAN接口视图下进行下列配置。
操作 |
命令 |
配置地址转换的Easy IP特性 |
nat outbound acl-number slot slotno |
取消地址转换的Easy IP特性 |
undo nat outbound acl-number slot slotno |
注意:
l 目前NAT只支持ACL的源IP地址和目的IP地址的过滤项,其它项不起作用。
l 在接口上配置了nat outbound命令之后,ACL中新增的rule规则不会生效,只有那些在配置nat outbound命令之前的配置的rule规则才会起作用,因此需要先配置rule规则,再配置nat outbound命令。
l 同一个VLAN下只能绑定到同一块LSB1NATB0板。
l 当同一个VLAN接口下配置了多个NAT规则时,设备将按照NAT规则绑定的ACL Number号的大小顺序来确定优先级,ACL的Number号大的NAT规则先进行匹配。对于同一个ACL,其内部的rule子规则按序号顺序决定优先级:序号小的优先级高。
通过配置标准内部服务器,可以将相应的外部地址、端口等映射到内部服务器上,实现外部网络的主机访问内部服务器的功能。内部服务器与外部网络主机的映射表是由nat server命令配置的。用户需要输入的信息包括:外部地址、外部端口、内部服务器地址、内部服务器端口以及服务协议类型。
请在VLAN接口视图下进行下列配置。
操作 |
命令 |
配置一组连续的内部服务器 |
nat server protocol pro-type global global-addr [ global-port1 ] [ global-port2 ] inside host-addr1 [ host-addr2 ] [ host-port ] slot slotno |
配置一个内部服务器 |
nat server protocol pro-type global global-addr [ global-port ] inside host-addr [ host-port ] slot slotno |
删除一组连续的内部服务器 |
undo nat server protocol pro-type global global-addr [ global-port1 ] [ global-port2 ] inside host-addr1 [ host-addr2 ] [ host-port ] slot slotno |
删除一个内部服务器 |
undo nat server protocol pro-type global global-addr [ global-port ] inside host-addr [ host-port ] slot slotno |
注意:
l 在一个VLAN接口下最多可以配置256条内部服务器转换命令;
l 一个VLAN接口下最多可以配置4096个内部服务器;
l 同一个VLAN下只能配置到同一块LSB1NATB0板。
l 系统一共可以最多配置1024个内部服务器转换命令。
在以上的命令当中,参数global-addr和global-port分别表示提供给外部访问的IP地址和服务端口号,参数host-addr和host-port分别表示服务器在内部网络中的IP地址和提供的服务端口号。
需要注意的是,参数host-port的取值范围为0~65535,常用的端口号可以用关键字代替。如:WWW服务的端口号为80,可以使用www代替;FTP服务的端口号为21,同时可以使用ftp代替。
& 说明:
如果配置了ICMP内部服务器,并且公网IP地址是VLAN接口IP地址,在NAT设备上ping将无法ping通外部的公网IP地址。其他协议的内部服务器不存在此问题的。
注意:
在进行配置改变时,先执行reset nat session命令,清除所有已建立的连接。
请在VLAN接口视图下进行下列配置。
操作 |
命令 |
配置非标准FTP内部服务器 |
nat ftp server global global-addr global-port inside host-addr host-port slot slotno |
删除配置非标准FTP内部服务器 |
undo nat ftp server global global-addr global-port inside host-addr host-port slot slotno |
注意:
nat ftp server global非标准内部服务器配置命令可以和nat server普通的内部服务器配置命令结合使用:
l nat server 命令可以删除nat ftp server global命令配置的内部服务器;
l nat ftp server global命令可以删除nat server命令配置的FTP内部服务器;
l nat server命令只可以配置私网端口为21的FTP内部服务器。
通过配置NAT的黑名单相关属性,可以控制用户的连接数和建链速率,设置连接数量和建链速率的控制阈值。NAT的黑名单相关属性是由nat blacklist命令配置的。
请在系统视图下进行下列配置。
操作 |
命令 |
启动相应单板的NAT黑名单功能 |
nat blacklist start |
取消相应单板的NAT黑名单功能 |
undo nat blacklist start |
缺省情况下,不启动黑名单功能。
操作 |
命令 |
设置对用户的连接数量和建链速率进行控制 |
nat blacklist mode { all | amount | rate } |
取消对用户的连接数量和建链速率进行控制 |
undo nat blacklist mode { all | amount | rate } |
缺省情况下,不对用户的连接数量和建链速率进行控制。
操作 |
命令 |
设置连接数量控制阈值 |
nat blacklist limit amount [ source user-ip ] amount-value |
恢复连接数量控制阈值的缺省值 |
undo nat blacklist limit amount [ source user-ip ] |
缺省情况下,连接数量控制阈值为500 sessions。
操作 |
命令 |
设置建链速率控制阈值 |
nat blacklist limit rate { limit-rate } |
恢复建链速率控制阈值的缺省值 |
undo nat blacklist limit rate [ source { ip | ip-address } ] |
缺省情况下,建链速率控制阈值为250 session/s。
当NAT映射表项的老化定时器到时后,该条映射表项就会被从NAT映射表中删除。可以通过nat aging-time命令对通过NP处理的NAT映射表项和CPU处理的ALG(应用层网关)NAT映射表项分别设定老化时间。下列命令设置地址转换连接的有效时间,针对软件和NP设定不同的时间,单位为秒。
请在系统视图下进行下列配置。
操作 |
命令 |
配置地址转换连接的老化时间 |
nat aging-time { alg time-value | np slow } |
恢复地址转换连接的缺省老化时间 |
undo nat aging-time [ alg time-value | np slow ] |
缺省情况下,软件中转换表项ALG的老化时间为120秒,FTP的老化时间为7200秒,H.323和ILS的老化时间是600秒,NP FAST的值为 300秒, SLOW的值为660秒。
安全日志用于记录NAT进程中详细的过程信息。
安全日志记录下的内容包括:
l 地址转换前的源IP地址、源端口号
l 地址转换前的目的IP地址、目的端口号
l 地址转换后的源IP地址、源端口号
l NAT进程的起止时间
启动NAT日志功能的命令是ip userlog nat。
请在系统视图下进行下列配置。
操作 |
命令 |
启动NAT日志功能 |
ip userlog nat acl acl-number |
关闭NAT日志功能 |
undo ip userlog nat |
缺省情况下,各业务处理板均不启动NAT日志功能。
如果某个连接活跃的时间超过了设定的时长,NAT进程将对该连接进行日志记录。设置记录NAT活跃流日志的时长的命令是ip userlog nat active-time。
请在系统视图下进行下列配置。
操作 |
命令 |
设置记录NAT活跃流日志的时长 |
ip userlog nat active-time minutes |
设置不启动记录NAT连接时长的功能 |
undo ip userlog nat active-time |
如果仅仅在删除NAT连接时进行日志记录,可能有些连接长时间处于激活状态,一直不能记录日志,对于这种长时间不下线的连接需要定时进行日志记录。主控板利用相应的命令对这个定时器的时间进行设置。
参数minutes表示活跃的NAT连接时长,单位为分钟,缺省值为0。
缺省情况下,不启动该功能。
设置日志输出报文的目的服务器地址和端口号的命令是ip userlog nat export。
请在系统视图下进行下列配置。
操作 |
命令 |
设置日志输出报文的目的服务器地址和端口号 |
ip userlog nat export host ip-address udp-port |
恢复日志输出报文的目的服务器地址和端口号的缺省值 |
undo ip userlog nat export host |
参数ip-address表示日志服务器的IP地址。
参数udp-port表示日志服务器的UDP端口号,即日志报文的目的端口号,取值范围为0~65535。
设置日志输出报文的源IP地址的命令是ip userlog nat export source-ip src-address。
请在系统视图下进行下列配置。
操作 |
命令 |
设置日志输出报文的源IP地址 |
ip userlog nat export source-ip src-address |
恢复日志输出报文的源IP地址和端口号的缺省值 |
undo ip userlog nat export source-ip |
参数src-address表示日志报文中的源IP地址。
缺省情况下,日志报文中的源IP地址为0.0.0.0。
命令ip userlog nat export version version-number用来设置输出的日志报文的版本。
请在系统视图下进行下列配置。
操作 |
命令 |
设置输出的日志报文的版本 |
ip userlog nat export version version-number |
恢复输出的日志报文的版本的缺省值 |
undo ip userlog nat export version |
参数version-number用来设置输出的日志报文的版本。
缺省情况下,输出的日志报文的版本为1。
用户可以选择的进行日志记录的方式有两种:
l 仅在NAT连接删除时进行日志记录;
l 在NAT连接建立和删除时都进行日志记录。
命令ip userlog nat mode flow-begin用来设置在创建连接时就开始记录NAT日志。
请在系统视图下进行下列配置。
操作 |
命令 |
设置在创建连接时开始记录日志 |
ip userlog nat mode flow-begin |
恢复日志记录的方式的缺省值 |
undo ip userlog nat mode flow-begin |
缺省情况下,日志记录方式为仅在NAT连接删除时进行记录。
在完成上述配置后,在任意视图下执行display命令可以显示网络地址转换配置后的运行情况,通过查看显示信息可以验证配置的效果。
在用户视图下执行reset nat session命令可以清除地址转换的映射表。
操作 |
命令 |
显示地址集的配置信息 |
display nat address-group |
显示各种协议的NAT表项老化时间 |
display nat aging-time |
显示黑名单的相关配置和运行信息 |
display nat blacklist { all | ip ip-address slot slot-no } |
显示所有的NAT关联表项的配置 |
|
显示所有内部服务器信息 |
display nat server |
显示当前的地址转换记录统计数据 |
display nat statistics |
显示系统日志功能的相关配置和统计信息 |
display ip userlog export slot slotno |
清除内存和NP中地址转换的映射表 |
reset nat session slot slotno |
如图1-3所示:
l 某公司的一个内部网络在H3C S3528的连接下,要求通过H3C S9500的地址转换功能连接到广域网,访问Internet;
l 内部网络VLAN2中两台PC的私有地址为192.168.1.2和192.168.1.3;
l 在S9500中,实现NAT功能的单板插在交换机的第三槽位;
l VLAN10接口的IP地址为200.18.2.8;
l NAT地址池里有200.18.2.3~200.18.2.5三个合法的公网IP地址。
(1) 进行H3C S3528的配置。
# 在连接内部网络用户的一端,创建VLAN2和接口,配置IP地址。
[H3C] vlan 2
[H3C-vlan2] port ethernet0/1 to ethernet0/2
[H3C-vlan2] quit
[H3C] interface vlan-interface 2
[H3C-vlan-interface2] ip address 192.168.1.1 255.255.255.0
# 在连接H3C S9500的一端,创建VLAN3和接口,配置IP地址。
[H3C] vlan 3
[H3C-vlan3] port ethernet0/24
[H3C-vlan3] quit
[H3C] interface vlan-interface 3
[H3C-vlan-interface3] ip address 192.168.2.1 255.255.255.0
(2) 进行H3C S9500的配置。
# 在连接H3C S3528的一端,创建VLAN3和接口,配置IP地址。
[H3C] vlan 3
[H3C-vlan3] port ethernet1/1/1
[H3C-vlan3] quit
[H3C] interface vlan-interface 3
[H3C-vlan-interface3] ip address 192.168.2.2 255.255.255.0
# 在连接到Internet的一端,创建VLAN10和接口,配置IP地址。
[H3C] vlan 10
[H3C-vlan10] port ethernet3/1/1
[H3C-vlan10] quit
[H3C] interface vlan-interface 10
[H3C-vlan-interface10] ip address 200.18.2.8 255.255.255.0
# 配置ACL规则。
[H3C] acl number 2000
[H3C-acl-basic-2000] rule 0 permit any
# 配置标识为0的NAT地址池。
[H3C] nat address-group 0 200.18.2.3 200.18.2.5
# 将访问控制列表和地址池关联起来。
[H3C] interface vlan-interface 10
[H3C-vlan-interface10] nat outbound 2000 address-group 0 slot 3
& 说明:
本章中提到的业务处理板主要指LSB1NATB0板。
URPF是单播反向路径查找(Unicast Reverse Path Forwarding)是用来防止基于源地址欺骗的网络攻击行为的特性。其主要功能是防止基于源地址欺骗的网络攻击行为。
一般情况下,路由交换机针对目的地址查找路由,如果找到了就转发报文,否则丢弃该报文。
在URPF功能启动后,通过获取报文的源地址和入接口,交换机以源地址为目的地址在转发表中查找路由,如果查到的路由出接口和接收该报文的入接口不匹配,交换机认为该报文的源地址是伪装的,丢弃该报文。
通过URPF特性,交换机就能有效地防范网络中通过修改源地址而进行的恶意攻击为。例如一种常见的攻击模型如下:
在SwitchA上伪造源地址为2.1.1.1的报文,向服务器SwitchB发起请求,SwitchB如果不进行URPF检查,SwitchB响应请求时将向真正的“2.1.1.1”发送报文。这种非法报文对SwitchB和SwitchC都造成了攻击。
URPF配置包括:
l 报文重定向配置
l 配置接口使能URPF功能
l 显示接口配置信息
l 将URPF统计计数器置零
urpf enable命令为设置某个VLAN接口下使能URPF功能,并指定相应的业务处理板完成处理。至于将数据流引向业务处理板,是通过在端口视图下配置重定向到业务处理板实现。报文重定向就是用户改变转发的报文的输出方向,将其输出到CPU、其他端口或者其他IP地址或网段。
注意:
URPF功能和VPLS功能互相排斥,因此在同一VLAN接口视图下,不能同时使能URPF功能和VPLS功能。
上述配置完成后,可以通过display urpf命令查询当前VLAN接口使能URPF的情况,如果使能且指定的NAT业务处理板在位,可以查询到相应的统计数据。
VLAN接口使能URPF时,长时间运行,计数器不断增大,因此有必要清除该接口下URPF相关的统计数据,可以通过 reset urpf statistic命令清除接口接收数据包数和丢弃数据包数的统计记录,将URPF统计计数器置零。
URPF的配置过程如表2-1:
表2-1 配置接口使能URPF,并指定相应的业务处理板完成处理
配置项 |
命令 |
说明 |
进入系统视图 |
system-view |
- |
进入以太网端口视图 |
interface EthernetX/1/X |
- |
报文重定向配置 |
traffic-redirect inbound ip-group { acl-number | acl-name } [ rule rule [ system-index index ] ] { cpu | interface interface-type interface-number destination-vlan { l2-vpn | l3-vpn } | next-hop ip-addr1 [ ip-addr2 ] | slot slotid vlan vlanid } |
必选,指定自定义流模板时,建议用户使用DMAC+VLAN+IP的方式定义 |
退回到系统视图 |
quit |
- |
进入VLAN接口视图 |
interface vlan-interface vlan-id |
- |
配置接口使能URPF功能 |
urpf enable to slot slotid |
必选,在VLAN接口视图下使能URPF功能,并指定相应的业务处理板槽位进行URPF检查操作。 缺省情况下,不启动URPF功能。 |
显示配置的信息 |
display urpf |
- |
将URPF统计计数器清零 |
reset urpf statistic |
- |
& 说明:
l 重定向配置仅对访问列表中动作为permit的规则有效。
l 当报文被重定向到CPU后,将不再正常转发。
l 用户可以使用重定向命令中的next-hop参数实现策略路由。相关信息可相关信息请参见“QACL”中的报文重定向部分。
同路由器不一样的是,交换机是在VLAN接口上使能URPF功能,在各个端口上只是配置重定向功能,将特定要进行检查的报文送到业务处理板,业务处理板完成URPF检查后,转发或者丢弃。
在SwitchB上5槽为业务处理板,6槽和3槽为普通接口板。
# 配置VLAN1000。
[H3C] vlan 1000
[H3C-vlan1000] port Ethernet 3/1/30
[H3C-vlan1000] port GigabitEthernet6/1/2
[H3C] int vlan 1000
[H3C-Vlan-interface1000] ip address 10.10.10.1 24
# 配置流模板,6槽和3槽接入板流模板关心报文目的MAC和以太网协议字段。
[H3C] flow-template user-defined slot 3 dmac 00-00-00 ethernet-protocol
[H3C] flow-template user-defined slot 6 dmac 00-00-00 ethernet-protocol
# 配置二层的ACL规则。
[H3C]acl number 4000
# 配置具体的Rule 允许IP报文通过,并且DMAC必须是虚接口MAC01-02-03。
[H3C-acl-link-4000] rule 0 permit ip egress 01-02-03 00-00-00
# 在以太网端口下配置报文重定向。
[H3C] interface ethernet 3/1/30
[H3C] flow-template user-defined
[H3C-Ethernet3/1/30] traffic-redirect inbound link-group 4000 slot 5 vlan 1000
[H3C-Ethernet3/1/30] quit
[H3C] interface GigabitEthernet 6/1/2
[H3C-GigabitEthernet6/1/2] flow-template user-defined
[H3C-GigabitEthernet6/1/2] traffic-redirect inbound link-group 4000 slot 5 vlan 1000
[H3C-GigabitEthernet6/1/2] quit
# 在VLAN 1000下使能URPF功能。
[H3C] interface vlan 1000
[H3C-Vlan-Interface1000] urpf enable to slot 5
NAT业务处理板在5号槽,配置了vlan-interface 1000和vlan-interface 1001,两接口均使能URPF(指定5槽位),端口Ethernet6/1/1为Trunk 口,允许VLAN 1000和VLAN 1001的报文通过。
要求端口Ethernet6/1/1能够分别对VLAN1000和VLAN 1001的报文进行URPF检查。
# 配置VLAN信息。
[H3C] vlan 1000
[H3C-vlan1000] vlan 1001
[H3C-vlan1001] quit
[H3C] interface ethernet 6/1/1
[H3C-Ethernet6/1/1]quit
[H3C] vlan 1001
[H3C-vlan1001] quit
[H3C] interface vlan-interface 1000
[H3C-Vlan-interface1000] ip address 10.10.10.1 24
[H3C-Vlan-interface1000] interface vlan-interface 1001
[H3C-Vlan-interface1001] ip address 11.11.11.1 24
# 在VLAN接口下使能URPF。
[H3C-Vlan-interface1000] urpf enable to slot 5
[H3C-Vlan-interface1000] interface vlan 1001
[H3C-Vlan-interface1001]urpf enable to slot 5
# 配置二层的ACL规则。
<H3C> system-view
[H3C] acl number 4000
# 允许入VLAN为1000的IP报文允许通过,并且DMAC必须是虚接口MAC00e0-fc39-a9b8。
[H3C-acl-link-4000] rule 0 permit ip ingress 1000 egress 00e0-fc39-a9b8 0000-0000-0000
# 允许入VLAN为1001的IP报文允许通过。
[H3C-acl-link-4000] rule 1 permit ip ingress 1001 egress 00e0-fc39-a9b8 0000-0000-0000
# 配置用户自定义流模板。
[H3C] flow-template user-defined slot 6 vlanid ethernet-protocol dmac 00-00-00
# 在端口下使用该流模板,并配置重定向。
[H3C-Ethernet6/1/1] flow-template user-defined
[H3C-Ethernet6/2/1]traffic-redirect inbound link-group 4000 rule 0 slot 5 1000
[H3C-Ethernet6/1/1] traffic-redirect inbound link-group 4000 rule 1 slot 5 1001
需要注意的是:acl number 4000中配置的rule 规则的入VLAN ID 必须和 配置重定向指定的VLAN ID一致,Trunk口根据VLAN进行URPF检查。
& 说明:
本章中提到的业务处理板主要指LSB1VPNB0板。
当今IP网络已经遍布全球,利用现有IP网络为企业提供低成本专网逐渐成为各大运营商的关注点。因此,一种在IP网上提供VPN服务、配置简单的技术应运而生,这种技术即MPLS VPN业务。基于MPLS的VPN业务有两种,分别是MPLS L3VPN和MPLS L2VPN,L2 MPLS VPN包括VPLS和VLL,VLL仅适用于点到点的组网应用模式,而VPLS可以实现多点到多点的VPN组网,VPLS为许多原来使用点到点L2VPN业务的运营商提供了一种更完备的解决方案,还可以避免像L3VPN那样介入用户的内部路由层次。这样,运营商就可以只管理、运行一个网络,并在一个网络上同时提供Best-effort IP服务、三层VPN、二层VPN、流量工程等许多服务,从而减少运营商大量的建设、维护、运行费用。
通过VPLS服务,地域上隔离的用户站点能通过MAN/WAN相连,并且两地连接效果像在一个LAN中一样。S9500系列交换机提供了使用MPLS的虚链路作为以太网桥链路的VPLS解决方案,通过MPLS网络提供一种透传的LAN服务(TLS)。
本文用到的缩略语和术语如下:
缩略语和术语 |
英文全称 |
说明 |
AC |
Attachment Circuit |
接入链路 |
CE |
Custom Edge |
直接与服务提供商相连的用户设备 |
FEC |
Forwarding Equivalence Class |
转发等价类 |
FR |
Frame Relay |
帧中继 |
NPE |
Network Provider Edge |
网络核心PE设备 |
PE |
Provider Edge Router |
骨干网上的边缘路由器 |
PW |
Pseudo wires |
虚链路 |
PHP |
Penultimate Hop Popping |
倒数第二跳弹出 |
UPE |
User facing-Provider Edge |
靠近用户侧的PE设备 |
VLL |
Virtual Leased Line |
虚拟租用线路 |
VPLS |
Virtual Private LAN Service |
虚拟专用局域网服务 |
VSI |
Virtual Switch Instance |
虚拟交换实例 |
LSP |
Label Switch Path |
标签交换通道 |
VPLS提供了两种VPLS网络架构:PW逻辑全连接的VPLS网络架构、分层的VPLS架构。图3-1描述了一个基本的PW逻辑全连接的VPLS网络架构图。
图3-1中,VPLS可以像L3VPN一样提供点到多点的连接服务,它能在多点之间进行MAC地址学习以及报文交换,并且,各个VPN之间的转发表相互独立,可以实现VPN间的MAC地址重叠。
图3-2描述了一个分层的VPLS架构图。
图3-2所示,分层的VPLS网络可以层次化网络拓扑和扩展接入范围。在核心网中的核心设备(NPE)性能好,VPN业务流量集中;边缘设备(UPE)性能要求比较低,主要用于VPN的业务接入。同时,边缘接入设备与核心设备之间可以链路备份,增强了网络的健壮性。UPE与NPE之间的接入网络可以是MPLS边缘网络(通过LSP连接),也可以是简单的以太交换网(VLAN-VPN接入)。
整个VPLS网络就像一个巨大的交换机,它通过MPLS隧道在每个VPN的各个SITE之间建立虚链接(PW),并通过PW将用户二层报文在站点间透传。对于PE设备,它会在转发报文的同时学习源MAC并建立MAC转发表项,完成MAC地址与用户接入接口(AC)和虚链路(PW)的映射关系。对于P(Provider Router)设备,即骨干网上的核心交换机,只需要完成依据MPLS标签进行MPLS转发,不关心MPLS报文内部封装的二层用户报文。
VPLS网络的基本传输构件及作用如下:
接入链路(Attachment Circuit,AC),CE到PE之间的连接链路或虚链路。AC上的所有用户报文一般都要求原封不动的转发到对端SITE去,包括用户的二三层协议报文。
虚链路(Pseudo wires,PW),虚链路在一个VPN的两个VSI之间的一条双向的虚拟连接,它由一对单向的MPLS VC构成,承载于LSP之上,并由PW信令协议创建。PW对于VPLS系统来说,就像是一条本地AC到对端AC之间的一条直连通道,完成用户的二层数据透传。
转发器(Forwarders),PE收到AC上送的数据帧,由转发器选定转发报文使用的PW,转发器事实上就是VPLS的转发表。
隧道(Tunnels),用于承载PW,一条隧道上可以承载多条PW,一般情况下为MPLS隧道。隧道是一条本地PE与对端PE之间的直连通道,完成PE之间的数据透传。
封装(Encapsulation),PW上传输的报文使用标准的PW封装格式和技术。PW上的VPLS报文封装有两种模式:Tagged 和Raw模式。
PW信令协议(Pseudo Wire Signaling),PW信令协议是VPLS的实现基础,用于创建和维护PW。PW信令协议还可用于自动发现VSI的对端PE设备。目前,PW信令协议主要有LDP和BGP。
服务质量(Service Quality),根据用户二层报文头的优先级信息和VSI实例的QoS信息,映射成在公用网络上传输的QoS优先级来转发,这个一般需要应用支持流量工程的MPLS网络。
如图3-3所示,CE3上送二层报文,通过AC接入PE1,PE1收到报文后,由转发器选定转发报文的PW,系统根据PW的转发表项给用户报文打上公网标签、私网标签和公网的Ethernet头(私网标签用于标识PW,公网标签用于穿越隧道到达PE2),经公网隧道到达PE2,系统弹出私网标签(公网标签在P设备上经PHP弹出),由PE2的转发器将选定转发报文的AC将CE3上送的二层报文转发给CE1。
MPLS L2VPN就是在MPLS网络上透明传递用户的二层数据。从用户的角度来看,这个MPLS网络就是一个二层的交换网络,通过这个网络,可以在不同站点之间建立二层的连接。MPLS L2VPN包括VLL和VPLS两种。
虚拟租用线路,在公用网络中提供的一种点到点的L2VPN业务。VLL可以让两个站点之间的连接效果像直接用线路连接一样,但它不能直接在服务提供者处进行多点间的交换。
虚拟专用局域网服务,在公用网络中提供的一种点到多点的L2VPN业务。VPLS使地域上隔离的用户站点能通过MAN/WAN相连,并且使各个站点间的连接效果像在一个LAN中一样。
CE,直接与服务提供商相连的用户设备。
指骨干网上的边缘路由器,与CE相连,主要负责VPN业务的接入。它完成了报文从私网到公网隧道、从公网隧道到私网的映射与转发。PE可以细分为UPE和NPE。
靠近用户侧的PE设备,提供给用户接入VPN的汇集设备。
网络核心PE设备,处于VPLS网络的核心域边缘,提供在核心网之间的VPLS透传服务。
虚拟交换实例。通过VSI,可以将VPLS的实际接入链路映射到各条虚链接上。
VPLS的配置请参见下表:
配置项 |
命令 |
说明 |
配置公网路由协议 |
参考“路由协议操作”相关章节 |
必选 |
配置MPLS基本功能 |
参考“MPLS操作”第二章 |
|
配置LDP扩展会话对端 |
mpls ldp remote-peer Index |
|
使能L2VPN |
mpls l2vpn |
|
配置VPLS实例 |
vsi vsi-name [ static ] |
|
配置对端PE的IP地址 |
peer peer-ip [ vc-id vc-id ] [ upe ] [ { backup-peer | primary-peer } alternatepeer-ip ] [ trans-mode { raw | tagged } ] |
|
配置静态MAC地址 |
mac-address { static H-H-H } vsi vsi-name { peer peer-ip | vlan-interface vlan-interface-number } |
可选 |
配置用户接入的VLAN并绑定VSI实例 |
l2 binding vsi vsi-name [ encapsulation { vlan | ethernet } ] |
必选 |
VPLS特性配置 |
bandwidth vpn-speed |
可选 |
启用端口的VLAN VPN功能 |
vlan-vpn enable |
|
配置用户自定义的流模板 |
flow-template user-defined slot slotnum template-info |
必选 |
配置ACL规则 |
rule rule-id permit mpls l2label-range ingress any egress any |
|
配置报文重定向 |
traffic-redirect inbound link-group { acl-number | acl-name } [ rule rule [ system-index index ] ] | slot slotid vlanid [ join-vlan ] } |
交换机需要做一些基本的路由配置,使之能够实现与其他P设备、PE设备进行路由信息的交换。目前可选择的路由协议有:静态路由、RIP、OSPF、EBGP等。具体配置方法请参见《H3C S9500系列路由交换机 操作手册》的“路由协议”部分。
配置MPLS的基本能力,用于创建公网的LSP隧道。具体配置方法请参见本手册的“MPLS”部分。
配置LDP远程对等体,用于建立远程LDP会话。
请在系统视图下进行下列配置。
操作 |
命令 |
进入Remote-peer模式 |
mpls ldp remote-peer index |
删除相应的Remote-peer |
undo mpls ldp remote-peer index |
无缺省的Remote-peer。
可以指定Remote-peer的任何一个使能了LDP的接口地址或发布了路由的LSR的Loopback地址,作为Remote-peer的地址。
请在Remote-peer视图下进行下列配置。
操作 |
命令 |
配置Remote-peer的地址 |
remote-ip remoteip |
remoteip:Remote-peer的IP地址,此地址一般是对端环回端口的地址。
无缺省的Remote-peer。
全局使能L2VPN,只有使能了L2VPN才允许进行VPLS、VLL相关配置。
请在系统视图下进行下列配置。
操作 |
命令 |
使能L2VPN |
mpls l2vpn |
禁止L2VPN功能 |
undo mpls l2vpn |
vsi命令用来创建一个VPLS实例或进入VSI视图,在创建实例时必须指定本地唯一VPLS实例名,并指明对端发现机制是自动发现或是手工配置,默认为手工静态配置(目前只支持手工配置)。
操作 |
命令 |
指定VPLS实例的名称 |
vsi vsi-name [ static ] |
取消创建一个VPLS实例或进入VSI视图 |
undo vsi vsi-name |
pwsignal命令用来指定VPLS使用的PW信令协议,并进入VPLS协议视图。
当指定VPLS连接方式为Martini方式时(采用Martini方式实现的MPLS L2VPN采用扩展的LDP等作为传递VC信息的信令),同时进入VSI-LDP视图。
请在VSI视图下进行下列配置。
操作 |
命令 |
指明VPLS使用martini方式 |
pwsignal [ ldp ] |
缺省情况下,VPLS使用Martini方式。
vsi-id 命令用来指定本VPLS实例的ID号,取值范围是1~1024。vsi-id取值本地唯一。
请在VSI-LDP视图下进行下列配置。
操作 |
命令 |
指定VPLS实例的ID号 |
vsi-id vsi-id |
peer命令用来创建一个实例中包含的VPLS对端PE,在创建VPLS对端PE时需要指定对端PE的IP地址以及对等体类型。缺省情况下,对等体类型为NPE;指定对等体类型为UPE时表示该对等体为分层VPLS模型中的用户汇聚节点UPE。用户也可以指定到该对等体VC的ID,该VC ID必须与远端保持一致。指定的多个远程对等体NPE间需要全连接,UPE与NPE之间无需全连接,UPE与其他NPE之间无需全连接。
请在VSI-LDP视图下进行下列配置。
操作 |
命令 |
指创建一个实例中包含的VPLS对端PE |
peer peer-ip [ vc-id vc-id ] [ upe ] [ { backup-peer | primary-peer } alternatepeer-ip ] [ trans-mode { raw | tagged } ] |
删除指定的VPLS对端PE |
undo peer peer-ip |
缺省情况下,VC-ID取VSI-ID的值。
可以指定VPLS用户的接入封装类型,默认接入封装类型为Ethernet接入。该VLAN接口下端口的配置按照用户接入方式的不同有所差别:在用户为Ethernet接入时,需要在该VLAN的接入端口下使能VLAN-VPN特性;在用户以VLAN方式或用户汇聚MTU以VLAN-VPN方式进行H-VPLS接入时,无需使能接入端口VLAN-VPN特性,需将其配置为Trunk,此时要求上行报文VLAN Tag(当前用户配置的VLAN ID)与接入绑定的VLAN保持一致;当用户汇聚UPE以LSP方式进行H-VPLS接入时,用户可以将其绑定到不包含端口的VLAN。
请在VLAN接口视图下进行下列配置。
操作 |
命令 |
绑定VPLS实例到VLAN接口 |
l2 binding vsi vsi-name [ encapsulation { vlan | ethernet } ] |
解除VLAN与VSI的绑定关系 |
undo l2 binding vsi vsi-name |
注意:
l 如果某端口的GVRP、STP或802.1x协议中的任一个已经启动,则不允许用户开启端口的VLAN VPN特性;
l 如果端口所属的VLAN已经使能了IGMP Snooping或者端口所属的VLAN接口下使能了IGMP,则不允许开启端口的VLAN VPN特性。反之亦然;
l 使能了VLAN VPN 的端口如果要加入VLAN,此VLAN上不能开启IGMP Snooping,其VLAN接口也不能开启IGMP;
l 绑定VPLS实例后的VLAN接口上不能配置IP地址,同样配置了IP地址后的VLAN接口不能绑定VPLS实例;
l 一个VPLS实例可以绑定多个VLAN,最多八个;
l 禁止在Vlan-interface1上绑定VSI实例。
mac-address命令用来配置VPLS实例的静态MAC地址。用户可以配置静态MAC地址为本地CE上的MAC,也可以指定远程CE对应的MAC地址。
操作 |
命令 |
配置VPLS实例的静态MAC地址 |
mac-address { static H-H-H } vsi vsi-name { peer peer-ip | vlan-interface vlan-interface-number } |
删除VPLS实例的静态MAC地址 |
undo mac-address { static H-H-H } vsi vsi-name |
注意:
是否启用端口的VLAN-VPN特性是由VSI的接入方式决定,用户是Ethernet接入,则需要使能接入端口VLAN-VPN特性,使能VLAN-VPN特性的原因是避免用户的私有VLAN Tag不能被正常传送;用户是VLAN接入,则需要配置接入端口为Trunk口。
请在以太网端口视图下进行下列配置。
操作 |
命令 |
开启端口VLAN VPN特性 |
vlan-vpn enable |
关闭端口VLAN VPN特性 |
undo vlan-vpn |
注意:
l 如果某端口的GVRP、STP或802.1x协议中的任一个已经启动,则不允许用户开启端口的VLAN VPN特性。
l 如果端口所属的VLAN已经使能了IGMP Snooping或者端口所属的VLAN接口下使能了IGMP,则不允许开启端口的VLAN VPN特性。反之亦然。
l 使能了VLAN VPN 的端口如果要加入VLAN,此VLAN上不能开启IGMP Snooping,其VLAN接口也不能开启IGMP。
缺省情况下,端口VLAN VPN特性是关闭的。
请在系统视图下进行下列配置。
操作 |
命令 |
定义流模板 |
flow-template user-defined slot slotnum template-info |
端口视图下定义用户流模板 |
flow-template user-defined |
删除流模板 |
undo flow-template user-defined |
在定义流模板时,模板中所有的元素大小之和要小于16个字节。
可以使用下面的命令来定义二层访问控制列表。
请在相应视图下进行下列配置。
操作 |
命令 |
从系统视图进入二层访问控制列表视图 |
acl { number acl-number | name acl-name advanced } [ match-order { config | auto } ] |
定义子规则(在二层访问控制列表视图下) |
rule [ rule-id ] { permit | deny } [ cos cos-value | c-tag-cos c-cos-value | exp exp-value | protocol-type | ingress { { source-vlan-id [ to source-vlan-id-end ] | source-mac-addr source-mac-wildcard | c-tag-vlan c-tag-vlanid }* | any } | egress { dest-mac-addr dest-mac-wildcard | any } | s-tag-vlan s-tag-vlanid | time-range name ]* |
删除访问控制列表的一个子规则(在二层访问控制列表视图下) |
undo rule rule-id |
删除二层访问控制列表(在系统视图下) |
undo acl { number acl-number | name acl-name | all } |
& 说明:
删除ACL的配置之前需要删除重定向的相关配置。
由于只有VPLS业务处理板才能处理VPLS业务,所以需要将公网侧回来的VPLS报文配置ACL规则重定向到VPLS业务处理板处理
请在以太网端口视图下进行下列配置。
操作 |
命令 |
配置报文重定向到VPLS业务处理板的特定端口 |
traffic-redirect inbound link-group acl-number [ rule rule [ system-index index ] ] slot slotid vlanid [ join-vlan ] } |
删除报文重定向 |
undo traffic-redirect inbound link-group acl-number [ rule rule ] |
& 说明:
公网端口在配置重定向时加入VLAN(指定join-vlan),重定向配置去除后,端口也相应的从VLAN中退出。
bandwidth命令用来配置VPN的速率限制,取值范围为64~4194303,单位:kbit/s,以64为单位,系统自动向下取整,即取最接近的小值,即如果配置VPN的速率限制为200,那么系统自动取值为64的三倍数192。实际能支持的速率限制范围为64~2097152,2097152以上(含2097152)将不进行速率抑制。该VSI下用户流量超过该带宽抑制部分将被系统丢弃。
请在VSI-LDP视图下进行下列配置。
操作 |
命令 |
配置VPN的速率限制 |
bandwidth vpn-speed |
缺省情况下,VPN的速率限制为102400Kbit/s。
broadcast-restrain命令用来配置VPN的广播抑制百分比,取值范围是1~100,不允许为0。该VSI下用户的广播流量(包括广播、组播、未知单播)超过带宽的广播抑制部分将被系统丢弃。
请在VSI-LDP视图下进行下列配置。
操作 |
命令 |
配置VPN的广播抑制百分比 |
broadcast-restrain restrain-number |
缺省情况下,广播抑制百分比为5%。
mtu命令用于指定本VPLS实例的用户接入报文的MTU值,取值范围是128~8192。同时,该MTU也是PW的MTU值。
请在VSI-LDP视图下进行下列配置。
操作 |
命令 |
指定VPLS实例的接入mtu值 |
mtu mtu |
缺省情况下,MTU为1500Bytes。
配置VSI的QoS级别,范围: 0~7,指定等级时,使用协议建议的QoS映射表。也可以使用用户指定的QoS表,直接由本命令配置p-p-p-p-p-p-p-p。
请在VSI-LDP视图下进行下列配置。
操作 |
命令 |
配置vsi的QoS级别 |
qos { 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | { user-define-table p p p p p p p p } } |
缺省情况下,Qos取值为0。
请在相应VSI-LDP视图下配置。
操作 |
命令 |
指定/删除本VPLS实例的描述 |
description TEXT undo description |
关闭/打开VPLS实例的VPN服务 |
shut undo shut |
配置VPN内MAC地址总数限制 |
mac-table limit |
VPLS提供了丰富的显示与调试命令,可以监控LDP会话状态、隧道配置情况、所有LSP及其状态等。
请在任意视图下进行下列查询。
操作 |
命令 |
显示VPLS的转发表 |
display mac-address vsi [ vsi-name ] [ peer peer-address | local | vlan-interface vlan-interface-number ] ] [ dynamic | static ] [ count ] |
显示基于MPLS的二层虚连接信息 |
display mpls l2vc [ verbose | interface interface-type interface-number | { [ vsi vsi-name ] [ peer peer-ip ] [ up | down | block ] } ] |
显示VPLS实例的信息 |
display vsi vsi-name |
执行debugging命令,可对LDP的各种消息进行调试。
请在用户视图下进行下列配置。
操作 |
命令 |
打开L2VPN的各种调试信息的开关 |
debugging mpls l2vpn { advertisement | all | connections | error | event } |
关闭L2VPN的各种调试信息的开关 |
undo debugging mpls l2vpn { advertisement | all | connections | error | event } |
缺省情况下,所有调试开关均不打开。
S9500系列交换机全线支持VPLS的各种架构和组网,我们以图3-4所示简单的背靠背组网介绍VPLS基本配置。图中,VPN1有两个站点,分别接入PE设备的端口E6/1/48,PE分配的接入VLAN都为100,公网VLAN为10,通过G4/1/1相连。要实现VPLS基本业务。
& 说明:
5号槽位为VPLS业务板所在槽位,4号槽位为普通接口板所在槽位。
(1) PE1的配置
# 配置Router ID,用于OSPF路由发布,一般情况下将MPLS LSI-ID、Loopback0的虚接口地址配成一样的IP地址。
[PE1] router id 5.6.7.8
# 配置MPLS LSI-ID,并全局使能MPLS LDP,全局使能MPLS。
[PE1] mpls lsr-id 5.6.7.8
[PE1] mpls
[PE1] mpls ldp
# 配置32位环回地址,LSP的创建都使用该地址。
[PE1] interface loopback0
[PE1 -LoopBack0] ip address 5.6.7.8 32
# 配置公网VLAN,加入一个端口,并配置虚接口IP地址,接口下使能MPLS 、MPLS LDP。
[PE1] vlan 10
[PE1-vlan10] port GigabitEthernet 4/1/1
[PE1-vlan10] interface vlan 10
[PE1-vlan-interface10] ip address 10.10.10.10 24
[PE1-vlan-interface10] mpls
[PE1-vlan-interface10] mpls ldp enable
# 配置OSPF协议,用于建立路由。
[PE1] ospf
[PE1-ospf-1] area 0
[PE1-ospf-1-area-0.0.0.0] network 5.6.7.8 0.0.0.0
[PE1-ospf-1-area-0.0.0.0] network 10.10.10.10 0.0.0.255
[PE1-ospf-1-area-0.0.0.0] quit
[PE1-ospf-1] import-route direct
[PE1-ospf-1] quit
# 配置LDP远程对等体,用于建立LDP会话。
[PE1] mpls ldp remote-peer 1
[PE1-mpls-remote1] remote-ip 1.2.3.4
# 全局使能L2VPN
[PE1] mpls l2vpn
# 配置VPLS实例,配置VSI-ID(VPN-ID),进VSI-LDP视图配置对端PE的IP地址。
[PE1] vsi test
[PE1-vsi-test] pwsignal ldp
[PE1-vsi-test-ldp] vsi-id 500
[PE1-vsi-test-ldp] peer 1.2.3.4
[PE1-vsi-test-ldp] quit
# 创建私网VLAN,加入一个端口,并绑定VSI实例。
[PE1] vlan 100
[PE1-vlan-100] port Ethernet 6/1/48
[PE1-vlan-100] interface vlan 100
[PE1-vlan-interface100] l2 binding vsi test encapsulation ethernet
# 使能私网侧端口的VLAN-VPN功能。
[PE1] interface Ethernet 6/1/48
[PE1-Ethernet6/1/48] vlan-vpn enable
# 配置用户定义流模板,并配置ACL重定向规则,配置规则为允许VPLS标签的MPLS报文。
[PE1] flow-template user-defined slot 4 ethernet-protocol vlanid
[PE1] acl number 4000
[PE1-acl-link-4000] rule 0 permit mpls l2label-range ingress any egress any
[PE1-acl-link-4000] quit
# 到端口视图下定义用户流模板,并配置重定向规则,将公网回来的VPLS报文重定向到VPLS业务板,同时指定重定向流的VLAN ID。
[PE1] interface GigabitEthernet4/1/1
[PE1-GigabitEthernet4/1/1] flow-template user-defined
[PE1-GigabitEthernet4/1/1] traffic-redirect inbound link-group 4000 rule 0 slot 5 10 join-vlan
(2) PE2的配置
# 配置Router ID,用于OSPF路由发布,一般情况下将MPLS LSI-ID、Loopback0的虚接口地址配成一样的IP地址。
[PE2] router id 1.2.3.4
# 配置mpls lsr-id,并全局使能MPLS LDP,全局使能MPLS。
[PE2] mpls lsr-id 1.2.3.4
[PE2] mpls
[PE2] mpls ldp
# 配置32位环回地址,LSP的创建都使用该地址。
[PE2] interface loopback0
[PE2 -LoopBack0] ip address 1.2.3.4 32
# 配置公网VLAN,加入一个端口,并配置虚接口IP地址,接口下使能MPLS LDP。
[PE2] vlan 10
[PE2-vlan10] port GigabitEthernet 4/1/1
[PE2-vlan10] interface vlan 10
[PE2-vlan-interface10] ip address 10.10.10.11 24
[PE2-vlan-interface10] mpls
[PE2-vlan-interface10] mpls ldp enable
# 配置OSPF协议,用于建立路由。
[PE2] ospf
[PE2-ospf-1] area 0
[PE2-ospf-1-area-0.0.0.0] network 1.2.3.4 0.0.0.0
[PE2-ospf-1-area-0.0.0.0] network 10.10.10.11 0.0.0.255
[PE2-ospf-1-area-0.0.0.0] quit
[PE2-ospf-1] import-route direct
[PE2-ospf-1] quit
# 配置LDP远程对等体,用于建立LDP会话。
[PE2] mpls ldp remote-peer 1
[PE2-mpls-remote2] remote-ip 5.6.7.8
# 全局使能L2VPN
[PE2] mpls l2vpn
# 配置VPLS实例,配置VSI-ID(VPN-ID),进VSI-LDP视图配置对端PE的IP地址。
[PE2] vsi test
[PE2-vsi-test] pwsignal ldp
[PE2-vsi-test-ldp] vsi-id 500
[PE2-vsi-test-ldp] peer 5.6.7.8
[PE2-vsi-test-ldp] quit
# 创建私网VLAN,加入一个端口,并绑定VSI实例。
[PE2] vlan 100
[PE2-vlan-100] port Ethernet 6/1/48
[PE2-vlan-100] interface vlan 100
[PE2-vlan-interface100] l2 binding vsi test
# 使能私网侧端口的VLAN-VPN功能。
[PE2] interface Ethernet 6/1/48
[PE2-Ethernet6/1/48] vlan-vpn enable
# 配置用户定义流模板,并配置ACL重定向规则,配置规则为允许VPLS标签的MPLS报文。
[PE2] flow-template user-defined slot 4 ethernet-protocol vlanid
[PE2] acl number 4000
[PE2-acl-link-4000] rule 0 permit mpls l2label-range ingress any egress any
[PE2-acl-link-4000] quit
# 到端口视图下定义用户流模板,并配置重定向规则,将公网回来的VPLS报文重定向到VPLS业务板,同时指定重定向流的VLAN ID。
[PE2] interface GigabitEthernet4/1/1
[PE2-GigabitEthernet4/1/1] flow-template user-defined
[PE2-GigabitEthernet4/1/1] traffic-redirect inbound link-group 4000 rule 0 slot 5 10 join-vlan
VPLS的链接PW的状态不是UP状态。
故障排除:
原因之一:公网LSP隧道没有建立(两端)。
解决方法:检查路由,两端路由是否都有,Ping对端环回端口是否可以Ping通,LDP会话是否正常。
原因之二:扩展会话是否正常。
解决方法:检查两端的扩展会话配置命令是否有遗漏,配置是否正确。
原因之三:私网VLAN接口是否绑定了对应的VPLS实例,状态是否Up。
解决方法:保证私网接口Up,或到UPE的PW Up。
原因之四:对等体Peer和VPLS实例的MTU配置参数是否一致。
解决方法:查看两端VPLS实例配置下的MTU值是否一致,Peer的VC-ID和传输模式是否一致。
原因之五:VPLS业务板没有处于Normal的状态。
解决方法:确保VPLS业务板状态正常。
转发不通。
原因之一:业务处理板是否在位。
解决方法:使用display device命令查看业务处理板状态是否Normal。
原因之二:业务处理板版本与主控板版本是否一致。
解决方法:确认业务处理板的版本。
原因之三:公网侧流模板和重定向配置是否正确。
解决方法:确认公网侧端口配置是否正确。
转发丢包。
原因之一:流量是否超过VPN带宽限制。
解决方法:查看VPN带宽和VPN内的流量,配置更大的带宽。
原因之二:广播/组播/未知单播的流量是否超过了广播抑制。
解决方法:查看VPN的广播抑制和VPN内的广播流量,重新配置合适的广播抑制百分比。
不同款型规格的资料略有差异, 详细信息请向具体销售和400咨询。H3C保留在没有任何通知或提示的情况下对资料内容进行修改的权利!