java 单机接口限流处理方案
751
2022-09-19
思科路由交换CCIE(思科路由交换技术)
2021.12.27 第一节
BGP基础
AS指的是在同一个组织管理下,使用统一选路策略的设备集合。
BGP的邻居分两种:
IBGP AS号相同
EBGP AS号不同
EBGP默认的BGP数据包中IP TTL值=1(EBGP默认要求直连链路之间建立EBGP邻居)
如果要在非直连链路上建立EBGP邻居的话,并助使用环回口来做为源地址的话
必须1.配置EBGP的多跳 2.需要指定更新源地址(默认情况下使用出接口地址作为BGP的更新源) 3默认路由需要改成明细。
2021.12.29 第二节
R5(config-router)#timers bgp 70 100//调整BGP的计时器。保活时间(手工不调整的话。默认以超时时间1/3)如果调整了计时器的超时参数。两端协凋holdtime以小为准.如果调整了计时器的保活参数,如果该值>holdtime/3的话。以自动计算为准。 如果该值 BGP报文 2021.12.31 第三节 R4#clear ip bgp 34.1.1.3 soft out R4#clear ip bgp * soft //针对所有邻居。入方向和出方向发新路由刷新,或者路由更新触发BGP的路由策略在模拟器中可以使用*来针对所有邻居。在现实工作的中的遇见到BGP。只能针对某个邻居来软新如果不加关键字in或者out.默认刷新进出两个方向 BGP状态机 BGP路由产生方式 BGP产生路由有三种方式----------------BGP我们不生产路由,我们只是路由的搬运工 1.通告network network产生的路由起源代码是i IGP 2.重分布 重分布进来BGP的路由起源为? incomplete不完全 3.路由聚合(手工和自动) Origin起源也是i 2022.1.5 第四节 BGP通告原则 BGP同步默认不开启,可以不用使用。 2022.01.07 第五节 Local_Preference AS_Path 在做路由汇总后,抑制本地明细参数后,在加上AS_SET无序参数后,带上原始的AS号,防止环路。 Origin 2022.01.10 第六节 MED MED与Local_Preference区别 Community 2022.01.12 第七节 路由反射器 RR 反射器防环 2022.01.14 第八节 联邦 联邦Nexte-hop 联邦Med 联邦Localpreference 联邦AS-PATH 路径属性 RR路由放射器与联邦比较 2022.01.17 第九节 路由汇总 路由拆分 //设置exist-mapip prefix-list huizong seq 5 permit 172.16.0.0/16//匹配原始的汇总的路由access-list 1 permit 12.1.1.1//匹配BGP路由的更新源route-map huizong permit 10match ip address prefix-list huizongmatch ip route-source 1//配置路由策略,条件为BGP路由更新源以及汇总路由//设置inject-mapip prefix-list mingxi seq 5 permit 172.16.1.0/24//配置明细的前缀列表route-map mingxi permit 10set ip address prefix-list mingxi//配置路由策略。设置拆分后的明细路由//应用策略router bgp 200bgp inject-map mingxi exist-map huizong copy-attributes//BGP插入策略-明细(172.16.1.0/24) 12.1.1.1的BGP邻居通告172.16.0.0/16,继承原始的汇总路由属性 2022.01.21 第十节 选路规则常用13条 2022.01.24 第十一节 ORF邻居按需发布路由 1、R2上配置基于1.1.1.1/32的路由过滤策略,并使能ORF功能,发送ORF报文。 \\配置路由过滤策略R2#show running-config | section prefixip prefix-list ORF seq 5 permit 1.1.1.1/32ip prefix-list ORF seq 10 deny 0.0.0.0/0\\对邻居使能R2#show running-config | section bgprouter bgp 200 neighbor 12.1.1.1 capability orf prefix-list send neighbor 12.1.1.1 prefix-list ORF in R3上配置基于3.3.3.3/32的路由过滤策略,并使能ORF功能,发送ORF报文。 R3#show running-config | section prefixip prefix-list ORF seq 5 deny 3.3.3.3/32ip prefix-list ORF seq 10 permit 0.0.0.0/0 le 32 R3#show running-config | section bgprouter bgp 300 neighbor 12.1.1.1 capability orf prefix-list send neighbor 12.1.1.1 prefix-list ORF in 2、R1上使能ORF功能,接收ORF报文。 R1#show running-config | section bgprouter bgp 100 neighbor 12.1.1.2 capability orf prefix-list receive neighbor 12.1.1.3 capability orf prefix-list receive 对等体组、动态邻居 BGP产生默认路由的方式有三种 1.network通告IGP中的默认路由 R1(config)#ip route 0.0.0.0 0.0.0.0 202.100.1.1//R1配置一条静态默认路由R1 R1#show running-config | section bgprouter bgp 100network 0.0.0.0//R1在BGP中将RIB中的这条0. 0. 0. 0通告进BGP即可 2. default-information originate产生默认路由 默认情况其他协议往BGP重分布时,不允许重分布进默认路由,除非在BGP进程中 default-information originate给所有对等体产生默认路由 R1#show running-config | section bgprouter bgp 100 redistribute static //重分布静态路由进BGP,但是默认路由0.0.0.0没有进入 default-information originate//增加此条命了,默认路由即可重分布进BGP 3.针对邻居产生默认路由default-originate BGP 进程中向特定的邻居传递默认路由此配置无需路由表中存在默认路由。类似OSPF的 default-originatealways,只不过是针对邻居. 注意:该方法R1本地始发出的这条默认路由的weight值为0.这点和平时的规则不同(通常本地始发为32768) router bgp 100 neighbor 12.1.1.2 default-originate 也可以和接口联动,只要上行端口down,停止向邻居发送默认路由。 R1#show running-config | section access-listaccess-list 1 permit 200.100.1.0 0.0.0.3\\注意access-list1的写法,实验的结果是,acl必须匹配接口的IP和掩码route-map test permit 10 match ip address 1router bgp 100s neighbor 12.1.1.2 default-originate route-map test BGP重分布路由 BGP与IGP在互重分布时的注意事项 1.BGP默认情况下不会将IBGP的路由重分布进IGP中,因为通常下。IBGP的路由很多都是从IGP重发进进BGP的,如果再把BGP里的IBGP路由重发布IGP,很可能造成路由环路的问题。 R2(config)#router bgp 65001R2(config-router)#bgp redistribute-internal 在BGP进程开启重分布时充许IBGP的路由重分布进IGP中(危险,不建议) 2.OSPF重分布进BGP时,默认只重分OSPF域内或者域间路由(O,OIA),不重分布域外路由(OE1,OE2,ON1,ON2) router bgp 65001 redistribute ospf 110 match internal external 1 external 2 nssa-external 1 nssa-external 2//默认重分布OSPF时只重分布域内。可加关键字,最好全加。防止考试扣分 3、Cisco在BGP重分布进IGP时的小特性(OSPF和EIGRP有效,ISIS和RIP试了没成功)BGP的路由标记如果从EBGP邻居学习到的路由重分布进OSPF或者EIGRP时、会自动将AS-PATH转成Tag路由标记 路由协议的Tag路由标记.由于还原AS-PATH,但是默认还原时路由标记tag并不会自动还原成as-pathR3(config)#route-map tag permit 10R3(config-route-map)#set as-path tag//配置路由策略使用路由标记tag来设置as-pathR3(config)#router bgp 200R3(config-router)#redistribute eigrp 90 route-map tag//将IGP重分布回BGP时。调用路由策略,将tag还原成as-path,那么就可以防止IGP丢失AS-PATH属性造成的环路风险 2022.01.25 第十二节 BGP路由加表过程 Filter-list用来过滤来自某个AS的路由(正则表达式) r2(config)#ip as-path access-list 1 deny 400//严格拒绝AS-PATH400的路由r2(config)#ip as-path access-list 1 deny _400_//拒绝包含 AS-PATH400的路由r2(config)#ip as-path access-list 1 permit .*//放行其他所有的AS-PATH的路由router bgp 200 neighbor 23.1.1.3 filter-list 1 out//在BGP进程调用过滤列表 BGP路由惩罚 主要用来解决EBGP的路由震荡 当EBGP路由出现震荡(不断失效、恢复),就给它分配一个惩罚值,摆动越多,惩罚值越大并且不停地积累。 而同时惩罚值又以一定的速率降低,每一个半衰期结束,惩罚值变成原来的一半(如果路由不再翻动的话) 如果惩罚值超出了预先设置的门限--抑制界限:惩罚值达到这个门限,路由被抑制,即不发布,直到 N 个半衰期 以后,惩罚值降低到另一个门限:重新使用门限(解除抑制的门限)时,才解除对路由的抑制 bgp dampening // 启动 bgp dampening,默认对全部 EBGP 路由有效,也可加 route-mapbgp dampening 3 500 1000 10// 修改默认参数 半衰期 重新使用界限 抑制界限 最大抑制时间show ip bgp//如果路由标记 d,则表示该路由被抑制,如果是 h,则表示路由有翻动的迹象show ip bgp flap // 查看路由翻动情况Show ip bgp dampening // 查看哪些路由被抑制了 BFD与BGP联动 interface Ethernet0/1 bfd interval 100 min_rx 100 multiplier 3//配置BFD的发送间隔接收间隔和倍数router bgp 200 neighbor 23.1.1.3 fall-over bfd//在BGP进程下针对邻居联动BFD BGP对IPv6的支持 MP-BGP中引入了两个新的路径属性: MP_REACH_NLRI:多协议可达NLRI。用于发布可达IPv6路由前缀及IPv6下一跳信息。 MP_UNREACH_NLRI:多协议不可达NLRI。用于撤销不可达IPv6路由前缀 这两种属性都是可选非传递的,因此,不提供多协议能力的BGP Speaker将忽略这两个属性的信息,不把它们传递给其它邻居 BGP的使用IPv6地址。建立IPv6对等体,传递IPv6路由 1.要开启IPv6单播路由 2.在动态路由下配置Routerid,Rid选举规则与IPv4 3.地址簇address family下去进对应的操作 R1(config)#ipv6 unicast-routing R1(config-router)#bgp router-id 1.1.1.1R1(config-router)#neighbor 2012::2 remote-as 100//配置IPv6的BGP对等体R2(config-router)#address-family ipv6R2(config-router-af)#neighbor 2012::1 activate //BGP的ipv6地址簇中的对等体默认不激活,需要手工激活。IPv4是默认激活的R1(config-router-af)#network 1111::1111/128R1(config-router-af)#redistribute ospf//需要在正确的地址簇下去产生路由R2#show bgp ipv6 unicast summary //验证BGP ipv6对等体R2#show bgp ipv6 unicast //验证BGP ipv6路由表 如果在BGP下配置了IPv6,默认就开启了MP-BGP多协议BGP。因此所有的操作应该在正确的地址簇下进行操作 router bgp 100 bgp router-id 1.1.1.1 address-family ipv4 network 11.11.11.11 mask 255.255.255.255 IPv4地址建议IPv6邻居 为了节约设备性能带宽和网络资源。思科支持使用IPv4地址,建立IPv6的对等体。传递IPv6的路由前 当然其实也可以支持使用IPv6的地址。传递IPv4的路由 router bgp 100 bgp router-id 1.1.1.1 bgp log-neighbor-changes neighbor 12.1.1.2 remote-as 100 ! address-family ipv4 network 1.1.1.1 mask 255.255.255.255 neighbor 12.1.1.2 activate exit-address-family //使用IPv4地址建立IPv4邻居,传递IPv4路由 address-family ipv6 network 1111::1111/128 neighbor 12.1.1.2 activate //使用IPv4地址建立IPv6邻居,传递IPv6路由 但是这存在下一跳不可达的问题 route-map ipv6nh permit 10 set ipv6 next-hop 2012::1//配置路由策略修改下一跳为IPv6的下一跳 router bgp 100 address-family ipv6 neighbor 12.1.1.1 route-map ipv6nh in //最后在地址簇下调用就好 关闭IPv4默认激活邻居router bgp 100 bgp router-id 1.1.1.1 bgp log-neighbor-changes no bgp default ipv4-unicast//关闭IPv4默认激活邻居 neighbor 12.1.1.2 remote-as 100 address-family ipv6 neighbor 12.1.1.2 activate exit-address-family BGP的Local AS(伪造AS) 用于在运营商割切不同的AS时使用的伪造AS去对接 router bgp 100 neighbor 13.1.1.3 remote-as 300 neighbor 13.1.1.3 local-as 400 ////配置了Local AS之后,随即带来AS-PATH会变成 400 300 2022.02.17 第十三节 思科的常见三种三层的转发模式 1.进程转发 路由器收到每一个数据包。都进行一次遍历查询,再根据最长匹配原则,往相应接口转发。收到数据包再多。也是按照流程进行(最笨的方法的) 2.快速转发 路由器不再笨笨的了,对于收到的第一个数据包。正常的进行进程转发,但是建立缓存,而后续如果有相同的目标的地址更多的数据包。则根据缓存。直接转发(速度相比就做了提升) 3.CEF思科快速转发 默认模式,自动开启,思科CEF 是一种高效的协议,不但将三层信息进行缓存。还会将二层信息进行缓存(用于快速重写二信息)。因此这是最高效的转发方式 能够为分配标签的协议 1.Label DP标签分发协议(公有的标准,所有厂商都支持,实陆是主流) 2.Tag DP标记分发协议(思科私有的,自己玩) 仅仅能够为IGP路由分发标签!(OSPF ,RIP ,EIGRP)--非常重要 3.RSVP资源预留协议(MPLS Traffic Enginer流量工程上的,CCIE ISP方向上) 4.BGP协议,为VRF私网路由分配标签 为什么LDP协议?OSPF自己不能分配标签?EIGRP自己不能分配标签吗? 因为不同的IGP协议之间互相分配标签并不合适。所以需要额外的公有协议LDP来分配标签 而在AS之间一般都是运行BGP。因此BGP自己分配的标签更加可靠。而不是再额外借助其他协议分发标签 MPLS的控制层面 2022.02.19 第十四节 MPLS术语 1、MPLS域(MPLS Domain):一系列连续的运行MPLS的网络设备构成了一个MPLS域。 2、LSR(Label Switching Router,标签交换路由器):支持MPLS的路由器(实际上也指支持MPLS的交换机或其他网络设备)。位于MPLS域边缘、连接其它网络的LSR称为边沿路由器LER(Label Edge Router),区域内部的LSR称为核心LSR(Core LSR)。 3、除了根据LSR在MPLS域中的位置进行分类之外,还可以根据对数据处理方式的不同进行分类: 4、入站LSR(Ingress LSR):通常是向IP报文中压入MPLS头部并生成MPLS报文的LSR。 5、中转LSR(Transit LSR):通常是将MPLS报文进行例如标签置换操作,并将报文继续在MPLS域中转发的LSR。 6、出站LSR(Egress LSR):通常是将MPLS报文中MPLS头部移除,还原为IP报文的LSR。 7、LSP需要在数据转发开始前建立完成,只有这样报文才能顺利穿越MPLS域 8、需要注意的是,LSP是一个从“起点”到“终点”的单向路径,若需要双向数据互通,则需要在双方之间建立双向的LSP。 9、LSP断裂在MPLS VPN场景中会导致业务中断。考试时排错会出现 Pop弹出顶层标签,如果下面还有标签,继续按标签转发 No Label弹出顶层标签,如果下面还有一层标签,直接丢弃 MPLS标签的报文结构 MPLS的标签处理动作:一般情况下是三种 Push压入标签-把没有标签的IP数据包。压入标签 Swap交换标签-根据LFIB标签转发信息库,去交换顶层标签 Pop弹出标签-根据LIFB表移除顶层标签,再根据对应表项转发 LDP协议概述 MPLS的最大的特点,是依靠标签转发的,标签根据LDP协议而来 不IGP内部让不同的协议之间去分配标签并不合适,需要借处一个额外的协议,LDP协议 而AS之间。则依靠BGP自身来发布标签更为可靠 在保留的标签有两个特殊的值 (标签0,explicit null显示空标签)------------如果抓包是可以观察到的 (标签3,隐示implicit null空标签)------------绝对不可能出现在报文里的--PHP次末弹出服务的 2022.02.22 第十五节 不同的IGP之间为路由分配标签并不合适。所以需要借助额外的协议。能和IGP协议一起工作。并且分发标签。这个协议就是LDP协议(需要特别注意的是.LDP协议不会为BGP路由分发标签) MPLS LDP的基本配置 ip cef//开启IP CEFR2(config)#mpls ip//全局下开启mpls的总开关,只要全局开启.接口下的开启才有意义R1(config)#mpls ldp router-id loopback0 //配置MPLS的rid.使用某个接口的ip地址做为rid.一般情况下是环回接口R1(config)#mpls ldp router-id loopback1 force//关键字FORCE强制立刻改变rid,mpls的rid和ospf eigrp的rid,因为该地址是用来建立ldp的源地址R1(config)#mpls label range 100 199//配置MPLS的标签范围用于观察标签由哪一台LSR分配MPLS的标签一旦分配不可改变。需要重启,起始值(16开始,本地具有意义。不共享)R1(config)#int e0/0R1(config-if)#mpls ip//MPLS IP开启只需要在沿途LSP的接口开启即可连接PC终端的接口则不需要 R1#show ip cef//验证 cef是否开启R1#show mpls label range //查看mpls的标签范围R1#show mpls ldp neighbor //查看MPLS LDP的邻居(会话建立)R1#show mpls ldp discovery //查看MPLS LDP的发现(在MPLS中发现和邻居是两回事,一定要保证LDP的ID宣告进IGP中。否则可能出现这种光有邻居发现,但是没有邻居建立的情况)R1#show mpls ldp bindings//查看LDP邻居之间的LIB标签信息库,彼此为FEC捆绑标签R1#show mpls forwarding-table //查看MPLS的标签转信息库LFIB。指导标签包如何交互标签。或者压入弹出标签R1#ping mpls ipv4 3.3.3.3/32 source 1.1.1.1R3#ping mpls ipv4 1.1.1.0/24 source 3.3.3.3//再次申请、为了验证LSP的完整性。最好使用ping mpls来进行测试,要测试来回,LSP是单向的 LDP会话建立过程 MPLS的LDP邻居发现和会话建立是两个过程 1.LDP的邻居发现是通过(UDP消息实现的 224.0.0.2 UDP646,源地址使用直连接口) 2.LDP的会话建立是通过(TCP单播实现的,目标地址是LDP的RID 端口也是646) 当LDP进行会话建立时,大的IP使用一个高位的随机端口向小的一方的IP TCP 646发起会话建立 2022.02.24 第十六节 MPLS网络的回切-可以配置MPLS LDP的会话保护 LDP会话保护-就是基于目标地址来建立LDP会话 R2(config)#mpls ldp session protection//在需要开启的LSR开启LDP会话保护,实际是基于目标地址的LDP会话R2#show mpls ldp bindings 4.4.4.4 32 lib entry: 4.4.4.4/32, rev 8 local binding: label: 18 remote binding: lsr: 5.5.5.5:0, label: 19 remote binding: lsr: 1.1.1.1:0, label: 18 remote binding: lsr: 3.3.3.3:0, label: 18//就算直连链路断开,LDP会话仍会保留 ,LDP标签也就得以保留。从而保证 了MPLS的回切网络收敛 MPLS TTL繁衍 IP数据包进入MPLS域后,减1,将TTL往MPLS头里复制在MPLS域中,仅仅减少MPLS头部的TTL要弹出MPLS标签时,再将TTL-1,重新复制回IP数据包的TTL TTL繁衍会导致SP内部的网络结构被暴露 R1(config)#no mpls ip propagate-ttl ?//关闭TTL繁衍,默认情况不加任何关键字,本地始发与转发的流量都关闭掉TTL繁衍,只需要在LER标签边缘路由器上配置即可 forwarded Propagate IP TTL for forwarded traffic local Propagate IP TTL for locally originated traffic 2022.02.24 第十七节 LDP标签通告方式 有序: LSR只有这条FEC下一跳先给了自己分配标签,才把再把自己的标签再分给上游(慢,LSP是完整) LSR不管自己的下游是否为一条FEC分配标签,都把自己的标签给上游 (快,可能LSP不完整) LDP的标签保留方式 保守:只保留下一跳给的标签。不是下一跳给的标签删除.优点就是节省内存。缺点:切换慢 LDP的标签保留方式 自由:不管下一跳是谁,所有LDP邻居传的标签都保留:优点就是切换快 缺点。浪费点内存资源 保守:只保留下一跳给的标签。不是下一跳给的标签删除.优点就是节省内存。缺点:切换慢 思科MPLS标签组合 路由汇总对MPLS的影响 对于MPLS来说。路由汇总是需要非常谨慎,因为稍有些问题。就会导致MPLS的LSP断裂 就算要进行路由汇总也只能在始发路由器上进行汇总 MPLS VPN CE客户边界路由器。与PE直连相连。运行动态协议交互路由信息 PE运营商边路由器,与CE直连相同,负责收集CE的路由并且通过IBGP传递给其他PE P设备:不与CE相连。本身并不维护路由,在数据层面仅仅做基于标签的转发 2022.02.28 第十八节 MPLS VPN有两层标签 外层标签由LDP协议分配。一般情况是为PE的loopback接口分配标签。构建公网的LSP隧道内层标签由MP-BGP多协议BGP分配,作用是用标明标签属于哪一个VRF在MPLS VPN的环境中。交互的都只是顶层标签(LDP标签)而内层不改变 实验 R1和R7正常配置OSPF MPLS域内IGP正常配置 路由需要双向,同理配置。 PE1(config)#ip vrf A //创建基于IPv4的VRFPE1(config)#int e0/0PE1(config-if)#ip vrf forwarding A //进入某个接口将该接口划分进VRFPE1(config-if)#ip address 192.168.1.1 255.255.255.0PE1(config-if)#no sh //配置IPPE1#show ip route vrf A //查看VRF的路由表PE1#ping vrf A 192.168.1.2 //ping VRF里的设备PE1#show ip cef vrf A //查看VRF的CEF表router ospf 10 vrf A //配置基于VRF的OSPF router-id 1.1.1.1 //配置RID network 192.168.1.0 0.0.0.255 area 0 //通告路由VRF的OSPF进程号和RID不可以和全局的一致PE1(config)#router bgp 100PE1(config-router)#no bgp default ipv4//这条很重要,因为PE和PE之意他传递并不是全局的IPv4路由。而是VPNV4路由PE1(config-router)#neighbor 4.4.4.4 remote-as 100PE1(config-router)#neighbor 4.4.4.4 update-source lo0//创建IBGP对等体,配置更新源为环回口1.1.1.1PE1(config-router)#address-family vpnv4 //进入VPNv4地址簇PE1(config-router-af)#neighbor 4.4.4.4 activate //激活VPNV4邻居PE2#show bgp vpnv4 unicast all summary //查看VPNv4邻居PE1(config)#ip vrf APE1(config-vrf)#rd 100:1 //配置RD,使用是产生全局唯一的VPNv4路由router bgp 100 address-family ipv4 vrf A network 11.11.11.11 mask 255.255.255.255//在VRF下通告IGP的路由进BGP(前提需要配置RD),或是重分布客户站点路由 ip vrf A route-target export 100:1//在入口节点的VRF下。配置RT导出值--会变成VPNV4这条的路由一条路径属性扩展团体属性-BGP路径属性router bgp 100 address-family vpnv4 neighbor 4.4.4.4 send-community extended//默认情况下BGP会自动在VPNv4邻居之间默认发送扩展团属性,因为VPNv4携带了大量的扩展团体属性用于在MPLS VPN网络中PE2(config)#ip vrf APE2(config-vrf)#rd 100:3PE2(config-vrf)#route-target import 100:1//配置RD和RT导入值R7(config)#router ospf 10 vrf A redistribute bgp 100 subnets//在VRF的IGP进程下。把BGP的路由重分布进IGPMPLS域内的所有接口开启mpls ip //和客户接口不用开启。 2022.03.03 第十九节 VPNv4地址下一跳 当从IPv4地址簇传路由到VPNv4地址簇时,下一跳会自动改变本地,不需要人为修改 但是在在某些特殊场景。如跨域MPLS VPN中,需要手动修改。 PE1(config-router)#address-family vpnv4PE1(config-router-af)#neighbor 4.4.4.4 next-hop-self 创建VRF支持IPv4和IPv6 PE1(config)#vrf definition B//创建自定义的VRF,考试用这种PE1(config-vrf)#rd 100:2PE1(config-vrf)#address-family ipv4PE1(config-vrf-af)#route-target export 100:2//在IPv4地址簇下配置rt值PE1(config-if)#vrf forwarding BPE1(config-if)#ip address 192.168.1.1 255.255.255.0//使用定义的vrf方式创建的VRF,接口划分时命令也有变化PE1(config-if)#ipv6 address 2001::1/64%Ethernet0/1 is linked to a VRF. Enable IPv6 on that VRF first.//如果要有接口配置ipv6地址,需要先在vrf中启用ipv6地址簇PE1(config)#vrf definition BPE1(config-vrf)#address-family ipv6 不移除原有命令的基础上,使用最少的命令。传递VPNV4路由。可以使用一个额外的RT值10000:3681 vrf definition B route-target 10000:3681//定义的VRF在全局下配置RT值 把导入和导出定义为同一个值 MPLS多协议BGP的标签的优化 默认情况下每一个VRF,每一条路由前缀,MP-BGP都会为其分发不同的标签 PE2(config)#mpls label mode all-vrfs protocol all-afs per-vrf\\所有地址簇共用一个标签,节省标签资源PE2#show bgp vpnv4 unicast vrf A labels PE2#show mpls forwarding-table 2022.03.05 第二十节 CE和PE之前的路由协议静态 PE2(config)#ip route vrf A 33.33.33.33 255.255.255.255 e0/0 192.168.2.2//静态路由的配置,关键是vrf和具体的接口PE2(config)#router bgp 100PE2(config-router)#address-family ipv4 vrf APE2(config-router-af)#redistribute static //最后在BGP中重分布静态路由即可 CE和PE之前的路由协议EIGRP CE正常配置PE配置:vrf definition C rd 200:2 route-target export 100:1 route-target import 100:1 address-family ipv4 //开启地址簇interface Ethernet0/1 vrf forwarding C ip address 192.168.1.1 255.255.255.0router eigrp 90 address-family ipv4 vrf B autonomous-system 10 //此进程号和CE保持一致 network 192.168.1.0 0.0.0.255//通告路由 redistribute bgp 100 metric 10000 10 255 1 1500 //重发布路由进入eigrprouter bgp 100 address-family ipv4 vrf C //把CE路由引入全局 redistribute eigrp 10 CE和PE之前的路由协议BGP CE正常配置CE3(config)#router bgp 200CE3(config-router)#neighbor 192.168.2.1 remote-as 100CE3(config-router)#network 33.33.33.33 mask 255.255.255.255 PE配置:PE2(config)#router bgp 100PE2(config-router)#address-family ipv4 vrf APE2(config-router-af)#neighbor 192.168.2.2 remote-as 200//PE需要在VRF下配置EBGP邻居,默认激活,//VRF下的IPv4 BGP路由,会自动转换成VPNv4路由在PE和PE之间传递。其实PE-CE之间运行BGP是最简单的 CE和PE之前的路由协议OSPF 当OSPF接入到MPLS VPN中时出现了超级骨干区域的概念。超级骨干区域是一个比区域0还要大的区域0=而且开销值=0 此时的PE即是ABR,又是ASBR。 当一台PE配置了VRF后。又配置OSPF进程,那么不管是否接入到MPLS VPN中,OSPF都会认为默认接入进了超级骨干区域,此是它就是一个ABR BGP以扩展团属性的形式,在OSPF重分布路由进BGP后,扩展团属性随着VPNv4路由携带,用于到达对端PE进行OSPF的LSA的重建和还原 Domain ID就是VRF的OSPF进程号,这完全是可以改的 OSPF的属性BGP通过扩展团体携带了。尽可能的还原原始的OSPF的LSA类型 进程号相同1,2,3类LSA都当3类LSA处理 进程号相同5,7还是当5.7类处理 pe1(config-router)#domain-id 0.0.0.20 //可以修Domian id来控制OSPF的路由类型 防止3类LSA环路 OSPF多实例进程使用LSA Options域中一个原先未使用的比特作为标志位,称为DN位,OSPF LSA报头的选项字段中引入了downbit位。 PE路由器在将路由从MP-BGP重新分配到OSPF时设置downbit位 PE路由器的OSPF VRF进程在进行SPF计算时,忽略DN置位的Type3 LSA。因此也不将设置了downbit位OSPF路由重分布进MP-BGP OSPF的5 7类防环 tag就是根据bgp的as号来的 VPNv4 RR路由反射器 router bgp 100 bgp log-neighbor-changes no bgp default ipv4-unicast neighbor 3.3.3.3 remote-as 100 neighbor 3.3.3.3 update-source Loopback0 neighbor 4.4.4.4 remote-as 100 neighbor 4.4.4.4 update-source Loopback0 neighbor 6.6.6.6 remote-as 100 neighbor 6.6.6.6 update-source Loopback0 ! address-family vpnv4 neighbor 3.3.3.3 activate neighbor 3.3.3.3 send-community extended neighbor 3.3.3.3 route-reflector-client neighbor 4.4.4.4 activate neighbor 4.4.4.4 send-community extended neighbor 4.4.4.4 route-reflector-client neighbor 6.6.6.6 activate neighbor 6.6.6.6 send-community extended neighbor 6.6.6.6 route-reflector-client exit-address-family VPNV4路由反射器并不会遵守Auto route filter自动路由过滤的特性,做为RR,它会接受所受有的VPNv4路由并进行反射,至于VRF下是否接受路由,则是看具体的vpnv4路由的RT值是否一致 VRF-lite(MCE) PE和MCE之间如果只有一条链路,可以配置子接口interface Ethernet0/1.1 encapsulation dot1Q 20 vrf forwarding A ip address 69.1.1.9 255.255.255.0 ip ospf 10 area 0MCE需要配置:router ospf 10 vrf A capability vrf-literouter ospf 20 vrf B capability vrf-lite//由于默认VRF的OSPF进程不计算DN置位的LSA。所以需要在MCE(运行了多个VRF)设备上。配置vrf-lite能力-忽略DN位的检测 shamlink伪链路 interface Loopback33 //PE上创建属于VRF的还回口,必须是32位。 vrf forwarding A ip address 33.3.3.3 255.255.255.255address-family ipv4 vrf A network 33.3.3.3 mask 255.255.255.255//在BPG中通告路由,才可以建立sham-link PE1#show running-config | section ospfrouter ospf 10 vrf A area 0 sham-link 33.3.3.3 66.6.6.6 //建立sham-link 坚决不可再VRF的OSPF中通告还回口,否则会造成sham-link震荡 VRF HDCP ip dhcp pool ceshiA vrf A//配置DHCP是属于某个VRF的 network 192.168.1.0 255.255.255.0 default-router 192.168.1.1 ip dhcp use vrf remote//该DHCP用来给远端的VRF使用 VRF NAT Router(config)#ip route vrf A 0.0.0.0 0.0.0.0 ethernet0/2 202.100.1.2 global//VRF的默认路由下一跳去全局路由表中查找interface Ethernet0/1 ip nat insideinterface Ethernet0/2 ip nat outside//定义内NAT外出口access-list 1 permit 192.168.1.0 0.0.0.255//定义需要NAT转换的流量ip nat inside source list NAT interface Ethernet0/2 vrf A overload//为vrf的源地址流量做NATR1#show ip nat translations vrf A //查看vrf的nat表项 2022.03.06 第二十一节 BGP防止环路 BGP的SoO配置router bgp 100 address-family ipv4 vrf A neighbor 192.168.1.2 soo 100:55 neighbor 192.168.2.2 soo 100:55 EIGRP防止环路 EIGRP的SoO配置route-map soo permit 10 set extcommunity soo 55:55//正常配置路由策略设置SoO值interface Ethernet0/2 ip vrf sitemap soo//在接口调用vrf的站点策略,避免本属于该站点的内部的路由,经过MPLS VPN后,又重分发回本站点 Spoke-CE1#show running-config | section bgprouter bgp 64512 bgp log-neighbor-changes network 11.11.11.11 mask 255.255.255.255 neighbor 192.168.1.1 remote-as 100 neighbor 192.168.1.1 allowas-in 1 //允许重复的AS号进入一次 Spoke-CE2需要相同操作PE1#show running-config | section bgprouter bgp 100 bgp log-neighbor-changes no bgp default ipv4-unicast neighbor 3.3.3.3 remote-as 100 neighbor 3.3.3.3 update-source Loopback0 ! address-family vpnv4 neighbor 3.3.3.3 activate neighbor 3.3.3.3 send-community extended exit-address-family ! address-family ipv4 vrf Spoke1 neighbor 192.168.1.2 remote-as 64512 neighbor 192.168.1.2 activate exit-address-family ! address-family ipv4 vrf Spoke2 neighbor 192.168.2.2 remote-as 64512 neighbor 192.168.2.2 activate exit-address-family PE2#show running-config | section bgprouter bgp 100 bgp log-neighbor-changes no bgp default ipv4-unicast neighbor 1.1.1.1 remote-as 100 neighbor 1.1.1.1 update-source Loopback0 ! address-family ipv4 exit-address-family ! address-family vpnv4 neighbor 1.1.1.1 activate neighbor 1.1.1.1 send-community extended exit-address-family ! address-family ipv4 vrf in neighbor 192.168.1.2 remote-as 64513 neighbor 192.168.1.2 activate exit-address-family ! address-family ipv4 vrf out neighbor 192.168.1.6 remote-as 64513 neighbor 192.168.1.6 activate neighbor 192.168.1.6 allowas-in 1 //允许出Hub出方向进入一次 exit-address-family 验证: Spoke-CE2#traceroute 11.11.11.11 source 22.22.22.22Type escape sequence to abort.Tracing the route to 11.11.11.11VRF info: (vrf in name/id, vrf out name/id) 1 192.168.2.1 1 msec 1 msec 1 msec 2 12.1.1.2 [MPLS: Labels 17/21 Exp 0] 2 msec 2 msec 1 msec 3 192.168.1.5 [MPLS: Label 21 Exp 0] 1 msec 4 msec 1 msec 4 192.168.1.6 1 msec 3 msec 1 msec 5 192.168.1.1 2 msec 2 msec 2 msec 6 23.1.1.2 [MPLS: Labels 16/19 Exp 0] 3 msec 3 msec 3 msec 7 192.168.1.1 [MPLS: Label 19 Exp 0] 3 msec 3 msec 3 msec 8 192.168.1.2 3 msec 4 msec * 方法二简单: Hub(config-router)#neighbor 192.168.1.5 default-originate //HubCE直接针对邻居下放默认路由,也不用通告总部的路由那么PE2、Spoke-CE1、Spoke-CE2 不在需要allowas-in 1允许进入了,因为过来的是一条默认路由。
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。
发表评论
暂时没有评论,来抢沙发吧~