WOLF-LAB沃尔夫网络实验室中国网络精英的发源地!
24小时咨询热线:173-1636-2402

技术文档

Technical documentation

您当前位置: 首页 > 技术文档 > 详情

HCIE Datacom培训EVPN部署分布式网关-实验:让CE2和CE3充当分布式网关

发布日期:2024-01-29 浏览次数:212 来源:WOLF-LAB

HCIE Datacom培训EVPN部署分布式网关-实验:让CE2和CE3充当分布式网关


技术文档提供:WOLF-LAB网络技术实验室崔志鹏

华为认证HCIE Datacom培训咨询联系WOLF-LAB,课程循环开班,笔试、LAB考试稳定!

图片1(7).png

第一步:配置underlay网络可达

图片1(8).png

第二步:CE2和CE3建立EVPN的邻居关系

图片1(9).png

第三步:建立VXLAN的隧道

[CE2-Nve1]dis this 

#

interface Nve1

 source 2.2.2.2

 vni 10 head-end peer-list protocol bgp

 

[CE3-Nve1]dis this 

#

interface Nve1

 source 3.3.3.3

 vni 10 head-end peer-list protocol bgp

 

第四步:配置用户的接入

CE2:

bridge-domain 10

 vxlan vni 10

 evpn 

  route-distinguisher 100:1

  vpn-target 100:1 export-extcommunity

  vpn-target 100:1 import-extcommunity

#

bridge-domain 20

 vxlan vni 20

 evpn 

  route-distinguisher 100:2

  vpn-target 100:2 export-extcommunity

  vpn-target 100:2 import-extcommunity

#

interface GE1/0/2

 undo shutdown

#

interface GE1/0/2.10 mode l2

 encapsulation dot1q vid 10

 bridge-domain 10

#

interface GE1/0/2.20 mode l2

 encapsulation dot1q vid 20

 bridge-domain 20

 

CE3:

bridge-domain 10

 vxlan vni 10

 evpn 

  route-distinguisher 100:1

  vpn-target 100:1 export-extcommunity

  vpn-target 100:1 import-extcommunity

#

interface GE1/0/2

 undo shutdown

#

interface GE1/0/2.10 mode l2

 encapsulation dot1q vid 10

 bridge-domain 10

 

第五步:配置VN                            //分布式网关一定要结合VN的概念进行配置

[CE2-vpn-instance-A]dis this                //同一个公司有两个网段

#

ip vpn-instance A

 ipv4-family

  route-distinguisher 1:1

  vpn-target 1:1 export-extcommunity evpn

  vpn-target 1:1 import-extcommunity evpn

 vxlan vni 22                                //三层VNI

 

[CE3-vpn-instance-A]dis this 

#

ip vpn-instance A

 ipv4-family

  route-distinguisher 1:1

  vpn-target 1:1 export-extcommunity evpn

  vpn-target 1:1 import-extcommunity evpn

 vxlan vni 33

 

第六步:配置分布式网关

CE2:

interface Vbdif10

 ip binding vpn-instance A

 ip address 192.168.1.254 255.255.255.0

 arp distribute-gateway enable                     //开启分布式网关的功能

 arp collect host enable                            //开启收集主机路由的功能

#

interface Vbdif20

 ip binding vpn-instance A

 ip address 192.168.2.254 255.255.255.0

 arp distribute-gateway enable

 arp collect host enable

 

CE3:

interface Vbdif10

 ip binding vpn-instance A

 ip address 192.168.1.254 255.255.255.0

 arp distribute-gateway enable                     

 arp collect host enable  

 

问题一:此时PC1访问PC3能否通信,怎么通信的?

图片1(10).png

CE2会发送BGP EVPN type 3,在CE2和CE3之间建立一条VXLAN的隧道

①RD:100:1

②2.2.2.2/32

③RT:100:1

④VNI:10

 

CE3也会发送BGP EVPN type 3

①RD:100:1

②3.3.3.3/32

③RT:100:1

④VNI:10

 

CE3收到CE2传递过来的两条路由会做如下动作:

①收到的ERT跟自己本端IRT是否有匹配,没有丢弃,有就收着;

②提取VTEP地址和VNI,如果VTEP地址在底层underlay网络可达则建立一条VXLAN的隧道;

③根据报文中的VNI,如果跟本端EVPN实例中的相同,创建一个相应的头端复制列表,用于BUM报文的转发;

图片1(11).png

图片1(12).png

PC1和PC3不同CE同子网互访是通过type 3路由建立的vxlan的隧道形成的头端复制列表,数据流量封装二层VNI=10进行通信的;

图片1(13).png

问题二:此时PC1访问PC2能否通信,怎么通信的?

可以,本地通信,因为Vbdif10、Vbdif20都在同一个VPN-Instance A下;

 

问题三:此时PC2访问PC3能否通信(不同CE不同子网)?

不行,因为CE3没有192.168.2.0/24网段的路由

图片1(14).png

怎么解决?

此时就需要用到type2(IRB)路由

[CE2-bgp]dis this 

#

 l2vpn-family evpn

  peer 3.3.3.3 advertise irb    //此时CE2会将收集到的主机路由携带三层VNI发出去给CE3

 

[CE3-bgp]dis this 

#

bgp 100

 #

 l2vpn-family evpn

  peer 2.2.2.2 advertise irb

 

问题四:为什么CE2和CE3没有看到对方的主机路由呢?

图片1(15).png

图片1(16).png

CE3会给CE2发送IRB的路由,就是ARP的路由加上三层VNI:

①RD:100:1

②主机路由:192.168.1.2/24

③主机MAC:PC3 MAC

④二层VNI:10

⑤EXRT:100:1

⑥3.3.3.3

⑦三层VNI:33

 

CE2收到后处理动作如下:

第一步:把ERT跟本地BD域的IRT进行匹配,接收该路由并且提取IP/MAC/VNI放到自己的EVPN的路由表,用于ARP广播抑制和虚拟机热迁移;

第二步:把ERT跟本地VPN里面的带有EVPN参数的IRT进行匹配,提取该主机路由和三层VNI注入到对应的VPN-instance中;

 

注意:只有当BGP EVPN路由携带的ERT与本端EVPN实例的IRT、本端L3VPN实例的eIRT都不同时,才会丢弃该路由;

 

此时需要在CE2上加一个IRT值

[CE2-vpn-instance-A]dis this 

#

ip vpn-instance A

 ipv4-family

  route-distinguisher 1:1

  vpn-target 1:1 export-extcommunity evpn

  vpn-target 1:1 import-extcommunity evpn

  vpn-target 100:1 import-extcommunity evpn

 vxlan vni 22

图片1(17).png

同理CE2发出的IRB类型的路由如下:

①RD:100:1

②主机路由:192.168.1.1/24

③主机MAC:PC1 MAC

④二层VNI:10

⑤EXRT:100:1

⑥2.2.2.2

⑦三层VNI:22

------------------------------------------------

①RD:100:2

②主机路由:192.168.2.1/24

③主机MAC:PC2 MAC

④二层VNI:20

⑤EXRT:100:2

⑥2.2.2.2

⑦三层VNI:22

 

此时CE3也需要增加IRT值:

[CE3-vpn-instance-A]dis this 

#

ip vpn-instance A

 ipv4-family

  route-distinguisher 1:1

  vpn-target 1:1 export-extcommunity evpn

  vpn-target 1:1 import-extcommunity evpn

  vpn-target 100:1 import-extcommunity evpn

  vpn-target 100:2 import-extcommunity evpn

 vxlan vni 33

图片1(18).png

流量分析:

此时PC2访问PC3,去的流量先到网关CE2上,CE2查自己的路由表,数据包进行封装:

PC2---PC2 |VXLAN vni:33 | sip:2.2.2.2 dip:3.3.3.3,CE3收到后根据三层VNI查自己的VPN A进行报文的转发,跟MPLS VPN私网标签很像;

PC3回给PC2的数据包,打上三层VNI:22

图片1(19).png

图片1(20).png

问题五:分布式网关内网用户如何访问internet?

图片1(21).png

第一步:让CE1跟CE2和CE3也建立EVPN的邻居关系,CE1将外部路由传递给CE2和CE3,CE2和CE3将主机路由传递给CE1;

[CE2-bgp]dis this 

#

bgp 100

 undo default ipv4-unicast

 peer 1.1.1.1 as-number 100

 peer 1.1.1.1 connect-interface LoopBack0

 peer 3.3.3.3 as-number 100

 peer 3.3.3.3 connect-interface LoopBack0

 #

 ipv4-family unicast

  undo peer 1.1.1.1 enable

  undo peer 3.3.3.3 enable

 #

 l2vpn-family evpn

  policy vpn-target

  peer 1.1.1.1 enable

  peer 1.1.1.1 advertise irb

  peer 3.3.3.3 enable

  peer 3.3.3.3 advertise irb

 

[CE3-bgp]dis this 

#

bgp 100

 undo default ipv4-unicast

 peer 1.1.1.1 as-number 100

 peer 1.1.1.1 connect-interface LoopBack0

 peer 2.2.2.2 as-number 100

 peer 2.2.2.2 connect-interface LoopBack0

 #

 ipv4-family unicast

  undo peer 1.1.1.1 enable

  undo peer 2.2.2.2 enable

 #

 l2vpn-family evpn

  policy vpn-target

  peer 1.1.1.1 enable

  peer 1.1.1.1 advertise irb

  peer 2.2.2.2 enable

  peer 2.2.2.2 advertise irb

 

[CE1-bgp]dis this 

#

bgp 100

 undo default ipv4-unicast

 peer 2.2.2.2 as-number 100

 peer 2.2.2.2 connect-interface LoopBack0

 peer 3.3.3.3 as-number 100

 peer 3.3.3.3 connect-interface LoopBack0

 #

 ipv4-family unicast

  undo peer 2.2.2.2 enable

  undo peer 3.3.3.3 enable

 #

 l2vpn-family evpn

  policy vpn-target

  peer 2.2.2.2 enable            //CE1无需给CE2和CE2通告type 2的路由,外部路由以type 5的方式通告;

  peer 3.3.3.3 enable

图片1(22).png


第二步:在CE1上也配置BD域(虽然CE1没有主机接入,但是需要跟CE2和CE3之间建立VXLAN的隧道,主机在访问外网需要通过隧道转发)

CE1:

bridge-domain 10

 vxlan vni 10

 evpn

  route-distinguisher 100:1

  vpn-target 100:1 export-extcommunity

  vpn-target 100:1 import-extcommunity

#

bridge-domain 20

 vxlan vni 20

 evpn

  route-distinguisher 100:2

  vpn-target 100:2 export-extcommunity

  vpn-target 100:2 import-extcommunity

#

interface Nve1

 source 1.1.1.1

 vni 10 head-end peer-list protocol bgp

 vni 20 head-end peer-list protocol bgp

图片1(23).png

第三步:在CE1上配置vpn-instance A,确保VPN A可以接收内网主机路由,用于回包;

CE1:

ip vpn-instance A

 ipv4-family

  route-distinguisher 1:1

  vpn-target 1:1 export-extcommunity evpn

  vpn-target 1:1 import-extcommunity evpn

  vpn-target 100:1 import-extcommunity evpn

  vpn-target 100:2 import-extcommunity evpn

 vxlan vni 11

图片1(24).png

第四步:在CE1上配置访问外网的默认路由

CE1:

interface GE1/0/2

 undo portswitch

 undo shutdown

 ip address 1.1.11.1 255.255.255.0

#

ip route-static 0.0.0.0 0.0.0.0 1.1.11.2

ip route-static vpn-instance A 0.0.0.0 0.0.0.0 1.1.11.2 public

图片1(25).png

第五步:将该默认路由变成EVPN的路由发布出去

CE1:

bgp 100

 #

 ipv4-family vpn-instance A

  network 0.0.0.0                              //将默认路由添加RD值变成VPNV4路由

  advertise l2vpn evpn                         //将该VPNV4路由通过EVPN邻居关系以TYPE5的形式发布给CE2和CE3

 

①VPN实例下的RD:1:1

②前缀/掩码:0.0.0.0/0

③三层VNI:11

④VPN实例下的RT:1:1

⑤下一跳:1.1.1.1

图片1(26).png

CE2/CE3收到后做如下动作:

①检查该路由携带的ERT,如果与本端VPN实例的IRT相同,则接收该路由,否则丢弃该路由;

②提取出路由前缀、掩码、三层VNI,将该路由加入到对应VPN实例的路由表,三层VNI用于数据的封装;

③并将路由的下一跳迭代出接口设置为VXLAN隧道接口;

图片1(27).png

图片1(28).png

第六步:在CE1的全局路由表下,写回包路由;(CE1的出接口划入到VPN实例中,更简单些)

CE1:

ip route-static 192.168.1.0 255.255.255.0 vpn-instance A 192.168.1.1

ip route-static 192.168.2.0 255.255.255.0 vpn-instance A 192.168.2.1

图片1(29).png

第七步:验证

图片1(30).png

图片1(31).png

图片1(32).png

https://www.wolf-lab.com/

WOLFLAB官方微信:17316362402

WOLFLAB官方QQ:2569790740

华为认证HCIE Datacom培训课程咨询联系WOLF-LAB网络技术实验室

返回目录
在线咨询