1,抓取流量
[r1] ip ip - prefix aa permit 172.16.1.024
2,配置路由策略
[r1] route - policy aa deny node 10
Info : New Sequence of this List .
[r1-route- policy ] if - match ip - prefix aa
[r1] route - policy aa permit node 20
Info : New Sequence of this List .[r1-route- policy ]
[r1-route- policy]q
3,在 BGP 进程中进行调用
[r1-bgpJpeer12.0.0.2 route - policy aa export
1,配置前缀列表
[r1Jip ip - prefix bb deny 172.16.2.024
[r1] ip ip - prefix bb permit 0.0.0.00 less - equal 32
2,在 BGP 进程中进行调用
[r1-bgpJpeer12.0.0.2 ip - prefix bb export
1,配置 ACL 列表----在 BGP 中调用过滤策略时,他只能调用 ACL 列表,所以我们必须使用 ACL 列表来抓取流量
[r2-acl- basic -2000] rule deny source 172.16.3.00---- ACL 列表在抓取流量时,因为过滤策略本身没有拒绝动作,所以,动作必须选择拒绝
[r2-acl- basic -2000] rule permit source any
2,在 BGP 进程中调用
[r2-bgpJpeer12.0.0.1 filter - policy 2000 import
BGP 的社团属性就类似于路由的一个标记,本质上由32位二进制构成----1,直接使用十进制来标志;2,十六位二进制:十六位二进制-----一条 BGP 路由当中不一定只打一个社团属性,可以打多个。
在 BGP 当中,定义了几个公有的社团属性。
1,0x00000000----" Internet "----默认情况下,所有的 BGP 路由缺省属于这个社团当中,即抓取社团属性为0的路由将会抓到所有的 BGP 路由。
2,oXFFFFFF02----" no - advertise ”----如果将某条 BGP 路由打上这个社团属性,则这条路由将不会被通告给自己的任何 BGP 对等体。
3,oXFFFFFF01----" no - export ”----如果将某条 BGP 路由打上这个社团属性,则这条路由将不会被通告给自己的任何 EBGP 对等体。(这个不通告不包括联邦的 EBGP 对等体)
4,0xFFFFFFO3----" no - export - subconfed "----如果将某条 BGP 路由打上这个社
团属性,则这条路由将不会被通告给自己的任何 EBGP 对等体,包含联邦的 EBGP 对等体
[r1] route - policy com permit node 10
[r1-route- policyJapply community ?
INTEGER <0-4294967295> Specify community number STRING < 3-11>
Specify aa <0-65535>: nn <0-65535>
nternet
Internet ( wel - known community attributes )
no - advertise
Do not advertise to any peer ( wel - known community
attributes )
Do not export to external peers ( well - known community
attributes )
no - export
no - export - subconfed Do not send outside a sub - confederation ( well - known
community attributes )
none
No community attribute
[r1-route- policy ] apply community no - advertise
[r1-bgplpeer12.0.0.2 route - policy com export ----在 BGP 进程中调用
[r1-bgpJpeer12.0.0.2 advertise - community ----在进程中开启社团属性的传递性,华为默认关闭了其传递性。
1,做路由策略
[r1] route - policy com1 permit node 10 Info : New Sequence of this List .
[r1-route- policylapply community ?
INTEGER <0-4294967295> Specify community number
STRING < 3-11>
Specify aa <0-65535>: nn <0-65535>
nternet
Internet ( wel - known community attributes )
no - advertise
Do not advertise to any peer ( wel - known community
attributes )
no - export
Do not export to external peers ( wel - known community attributes )
no - export - subconfed Do not send outside a sub - confederation ( wel - known
community attributes )
none
No community attribute
[r1-route- policyJapply community 1:11
2,在发布路由时调用路由策略
[r1-bgp] network 172.16.4.024 route - policy com2
3,根据社团属性抓取流量
使用社团属性过滤器来抓取---- community - filter
[r1] ip community - filter 1 permit 1:11
4,根据抓取到的流量配置策略
[r1] route - policy aaa deny node 10
Info : New Sequence of this Lit .
[r1-route- policy ] if - match community -filter1
[r1-route- policylq
[r1] route - policy aaa permit node 20 Info : New Sequence of this List .
[r1-route- policy ] if - match community - filter 2[r1-route- policyJap
[r1-route- policy ] if - match community - filter 1[r1-route- policylq
[r1] route - policy aaa permit node 20 Info : New Sequence of this List .
[r1-route- policy ] if - match community - filter 2
[r1-route- policylap
[r1-route- policyJapply community no - export ?
INTEGER <0-4294967295> Specify community number STRING < 3-11>
Specify aa <0-65535>: nn <0-65535>
additive
Add to the existing community
internet
Internet ( wel - known community attributes )
no - advertise
Do not advertise to any peer ( wel - known community attributes )
Do not export to external peers ( well - known community
attributes )
no - export
no - export - subconfed Do not send outside a sub - confederation ( wel - known
community attributes )
Please press ENTER to execute command
< cr >
[r1-route- policyJapply community no - export additive ----在原有社团属性的基础上増加社团属性
[r1-route- policy]q
[r1] route - policy aaa permit node 30 Info : New Sequence of this List .
r1-Г oute - policy]q
5,在 BGP 进程中调用路由策略
[r1-bgpJpeer12.0.0.2 route - policy aaa export
包交换----数据组成数据包,之后,在各个网络节点中不断传递,最终到达目标。
包交换转发效率不高的问题所在:
1,在整个包交换的过程中,需要先查询路由表之后在査看 ARP 缓存表两张表来完成转发过程,导致效率较低;
2,路由表的匹配原则----最长匹配原则导致路由表的査询效率不会太高
3,路由表存在递归查找的过程
4, IP 头部是可变长头部,导致我们对 IP 头部进行读取时需要使用软件进行处理,
无法基于硬件进行快速的查找。
标签交换在二层和三层封装之间,添加一个和路由条目存在映射关系的标签,之后维护一张记录对应关系及转发接口的表,携带标签的数据来到设备上,先看标签,之后基于维护的标签转发表进行转发,而不再需要査看三层的内容。因为标签本身短小且定长,所以,其转发效率将高于包交换。
但是标签交换需要先给数据包中打上标签,之后在到达目标之前还需要将标签弹出,因此,标签交换只是在转发过程中提高了效率,整体上相包交换提升并不明显
包交换的变更1,进程交换---- process switching ----最早期的包交换----每一个数据包都需要先查看路由表,之后再看 ARP 缓存表来确定二层封装内容。
2,快速包交换( fast switching )----基于流的包交换----一次路由,多次交换----当一股数据流来到设备上,我们只针对第一个数据包执行路由过程,将路由的结果和数据包特征(五元组)记录在缓存当中。之后,数据流中的其他数据来到设备将直接对比缓存中的五元组,相同,则直接按照转发方式进行转发二不在进行路由过程。
3,思科的特快交换技术﹣-- Cisco Express Forwading ----简称 CEF 技术。主要是将路由表和 ARP 缓存表中的内容进行预读取(就是将该递归的进行递归运算,该查 ARP 缓存表的提前查好),之后将结果记录在 CEF 表中,而 CEF 表是支持硬件转发的,所以,可以极大的提升路由的转发效率。虽然 CEF 技术是思科的私有技术,但是各大厂商也基于其思路设计出了属于自己特快交换技术。华为设备在进行路由转发时就基于 FIB (转发信息表),这个表是支持硬件转发的。
虽然标签交换无法替代包交换成为主流的转发技术,但是,依然和包交换在共同的发展, MPLS 就是包交换和标签交换共同发展的产物,主要因为在一些领域下,标签交换可以做到更好:
1,用于解决 BGP 的路由黑洞
2, MPLS VPN
3, MPLS TE --﹣流量工程----简单理解流量工程就是控制流量转发的路径。
所有运行标签交换的路由器组成的转发网络,我们可以看作是一个 MPLS 网络,我们将他称为 MPLS 域。我们将这些运行了 MPLs 的设备称为 LSR ----标签交换路由器
基于标签交换前提首先得有标签,标签是每台 LSR 基于本地的路由表中的路由条目来生成的。我们将所有具有相同特征(所有匹配到同一条路由条目的数据包)的数据包称为 FEC --﹣等价转发类。同一个 FEC 需要配置同一个标签。
每台 LSR 将自己的标签和 FEC 的映射信息记录在本地的一张表中,这张表被称为
---- LIB (标签信息表)。之后,将和 FIB 表进行结合,生成 LFIB 表----标签转发信息表。
在整个过程中, LSR 设备除了需要自己分配标签以外还需要知道其他 LSR 设备针对同一个 FEC 分配的标签,所以,标签交换和包交换一样也分为两个层面----控制层面,数据层面
包交换控制层面----路由协议的数据流方向,目的是为了获取未知网段的路由信息,生成
路由表。
数据层面----设备基于已经完善的路由表( FIB )来转发具体的数据信息,其方向正好和控制层流量相反。
控制层面----基于 FEC 分配标签,并获取其他 LSR 对同一个 FEC 分配的标签,之
后,记录生成 LIB 表,之后结合 FIB 生成 LFIB 表。----这个过程可以基于静态来完
正好和控制层流量相反。
数据层面----设备基于 LFIB 表,根据标签进行转发。
入站 LSR ----( ingress ) MPLS 域的边界,当没有标签的数据包来到入站 LSR 上,他需要在数据包中压入标签。
中转 LSR ----( transit )完成标签置换动作的 LSR 设备。
出站 LSR ----( egress )–﹣也是 MPLS 域的边界,完成标签的弹出动作。
整个过程中,数据层流量流动的路径为R1-R2-R3-R4,这条路径我们们称为 LSP----标签交换路径。需要注意的是, LSP 是单向的,如果想让数据双向来回,则还需要构建一条R4-R3-R2-R1的路径。
Label —20位----0-2的20次方----我们将标签号的取值范围称为标签空间,每台 LSR 设备的标签空间都是独立的。
其中:
0-15----特殊标签值----我们分配的时候不能直接分配,因为每个特殊标签都拥有其特殊的含义
16-1023----一般应用于静态 LSP 搭建
1024-2的20次方----应用于 LDP 等动态标签交换协议来分配时使用
EXP ----占3位----做策略使用的----一般000,可以理解为优先级,优先级高则可以优先转发。
S ----占1位----栈底位----标签不止可以打一个,可以打多个,我们将多个标签的有序集合称为标签栈。如果存在多个标签,需要使用这个标记位进行标识。如果是最后一个标签,则该位置1,如果不是,则置0。
TTL ----生存时间----和三层的 TTL 值一样,主要目的是为了防止数据包在环路中无限循环下去。数据来到入站 LSR 时,将把三层的 TTL 值复制到标签中,在MPLS 域中没经过一次转发, TTL 减1,之后,在出站 LSR 上弹出标签,再将标签中的TTL 值复制到三层包头中。
构建静态 LSP :
1,保证路由条件----静态只需要边界设备拥有来回路由信息即可
2,配置 LSR
入站 LSR
1,给 LSR 配置 LSR - lD ----32位二进制构成,都是按照 IP 地址格式来写,但是,只能手动配置
[r1] mpls Isr - id 1.1.1.1---- LSR - ID 建议使用环回接口的 IP 地址
设备的标签空间都是独立的。
其中:
0-15----特殊标签值----我们分配的时候不能直接分配,因为每个特殊标签都拥有其特殊的含义
16-1023----一般应用于静态 LSP 搭建
1024-2的20次方----应用于 LDP 等动态标签交换协议来分配时使用
EXP ----占3位----做策略使用的----一般000,可以理解为优先级,优先级高则可以优先转发。
S ----占1位----栈底位----标签不止可以打一个,可以打多个,我们将多个标签的有序集合称为标签栈。如果存在多个标签,需要使用这个标记位进行标识。如果是最后一个标签,则该位置1,如果不是,则置0。
TTL ----生存时间----和三层的 TTL 值一样,主要目的是为了防止数据包在环路中无限循环下去。数据来到入站 LSR 时,将把三层的 TTL 值复制到标签中,在 MPLS 域中没经过一次转发, TTL 减1,之后,在出站 LSR 上弹出标签,再将标签中的 TTL 值复制到三层包头中。
构建静态 LSP :1,保证路由条件----静态只需要边界设备拥有来回路由信息即可
2,配置 LSR
入站 LSR
1,给 LSR 配置 LSR - ID ----32位二进制构成,都是按照 IP 地址格式来写,但是,只于动配置
[r1] mpls Isr - id 1.1.1.1---- LSR - ID 建议使用环回接口的 IP 地址
2,激活 MPLS
1,全局激活 MPLS
[r1] mpls
2,接口激活 MPLS ----所有需要参与 MPLS 数据收发的接口都需要激活
[r1-GigabitEthernet0/0/0] mpls
3,构建静态的 LSP
[r1] static - Isp ingress 1to4 destination 4.4.4.024 nexthop 12.0.0.2 out - label 1000
1,下一跳----必须和路由表中的下一跳相同
2, out - label ----出站标签----下一跳设备接受后需要根据这个标签判断数据到达那个网段。
配置中转 LSR :
[r2] static - lsp transit 1to4 incoming - interface GigabitEthernet 0/0/0 in - label 1000 nexthop 23.0.0.2 out - label 1001
1, in - label ----入站标签----入站标签必须和上一跳配置的出战标签相同
配置出战 LSR :
[r4] static - Isp egress 1to4 incoming - interface GigabitEthernet 0/0/0 in - label 1002
[r1] display mpls static - Isp ----查看静态 LSP



