VXLAN 主机VTEP(EVPN)

news2024/11/19 7:48:11

EVE环境模拟搭建一个基于主机VTEP的VXLAN数据中心网络。
实验里vtep是在linux主机上,同时linux主机还得有路由功能使VTEP的端点IP可达,所以两台linux服务器需要安装FRR。
数据转发平面使用VXLAN封装;在控制平面我打算选择使用EVPN和OVN两种不同方式实现。
这次实验控制平面配置了EVPN,OVN放在下次实验里。

拓扑图

在这里插入图片描述
Spine、Leaf、服务器之间配置OSPF,使Underlay路由可达;

Overlay 采用EVPN,EVPN可以配置在多个位置:

  1. 在服务器之间建立端到端EVPN,
  2. 也可以建在服务器和Spine之间,
  3. 或是 Spine至Leaf配置EVPN,Leaf至服务器配置EVPN。
    考虑到贴近真实场景,我在实验中选择第3种方式。这样在数据中心内增加服务器时,骨干部分不用操作,只需要服务器和TOR建立EVPN即可。

Linux9和Linux8作为宿主机,使用namespace模拟租户虚机。

安装frr

curl -O https://rpm.frrouting.org/repo/frr-7-repo-1-0.el7.noarch.rpm
yum install frr-7-repo-1-0.el7.noarch.rpm -y
yum install frr frr-pythontools -y

sed -i “s/=no/=yes/g” /etc/frr/daemons
cat /etc/frr/daemons,路由协议功能全部打开
在这里插入图片描述

systemctl enable frr && systemctl start frr && systemctl status frr
linux 主机上都安装好frr后就可以配置路由协议了。

在服务器上配置ns模拟租户虚机,配置VTEP

Linux9配置 ns

ip netns add ns1
ip link add veth11 type veth peer name veth12
ip link set veth12 netns ns1
ip link set veth11 up
ip netns exec ns1 ip link set veth12 address 00:00:00:00:00:02
ip netns exec ns1 ip link set veth12 up
ovs-vsctl add-port br-int veth11
ip netns exec ns1 ip addr add 192.168.2.20/24 dev veth12

vxlan vtep

brctl addbr br-tun123
ip link set br-tun123 up
ip link add vxlan123 type vxlan id 123 local 10.0.0.9 dstport 4789 nolearning
ip link set vxlan123 up
brctl addif br-tun123 vxlan123
brctl addif br-tun123 veth11

Linux8配置 ns

ip netns add ns1
ip link add veth11 type veth peer name veth12
ip link set veth12 netns ns1
ip link set veth11 up
ip netns exec ns1 ip link set veth12 address 00:00:00:00:00:01
ip netns exec ns1 ip link set veth12 up
ovs-vsctl add-port br-int veth11
ip netns exec ns1 ip addr add 192.168.2.10/24 dev veth12

vxlan vtep

brctl addbr br-tun123
ip link set br-tun123 up
ip link add vxlan123 type vxlan id 123 local 10.0.0.8 dstport 4789 nolearning
ip link set vxlan123 up
brctl addif br-tun123 vxlan123
brctl addif br-tun123 veth11

配置路由

Spine与Leaf之间Underlay配置OSPF,Overlay配置BGP EVPN

interface Ethernet2
no switchport
ip address 172.16.0.2/31
!
interface Ethernet3
no switchport
ip address 172.16.0.4/31
!
interface Ethernet5
no switchport
ip address 172.17.0.2/31
!
interface Ethernet6
no switchport
ip address 172.17.0.4/31
!
interface Loopback0
ip address 10.0.0.1/32
!
ip routing
!
router bgp 101
router-id 10.0.0.1
no bgp default ipv4-unicast
neighbor overlay peer group
neighbor overlay update-source Loopback0
neighbor overlay ebgp-multihop
neighbor overlay send-community extended
neighbor overlay maximum-routes 0
neighbor 10.0.0.3 peer group overlay
neighbor 10.0.0.3 remote-as 103
neighbor 10.0.0.4 peer group overlay
neighbor 10.0.0.4 remote-as 104
neighbor 10.0.0.66 peer group overlay
neighbor 10.0.0.66 remote-as 106
neighbor 10.0.0.77 peer group overlay
neighbor 10.0.0.77 remote-as 107
!
address-family evpn
neighbor overlay activate
!
router ospf 1
redistribute static
network 10.0.0.1/32 area 0.0.0.0
network 172.16.0.2/31 area 0.0.0.0
network 172.16.0.4/31 area 0.0.0.0
network 172.17.0.2/31 area 0.0.0.0
network 172.17.0.4/31 area 0.0.0.0
max-lsa 12000

Leaf3与Spine、Linux9之间Underlay配置OSPF,Overlay配置BGP EVPN,其余Leaf同理

interface Ethernet1
no switchport
ip address 172.16.0.3/31
!
interface Ethernet3
no switchport
ip address 172.16.9.1/30
!
interface Loopback0
ip address 10.0.0.3/32
!
ip routing
!
router bgp 103
router-id 10.0.0.1
no bgp default ipv4-unicast
neighbor overlay peer group
neighbor overlay update-source Loopback0
neighbor overlay ebgp-multihop
neighbor overlay send-community extended
neighbor overlay maximum-routes 0
neighbor 10.0.0.1 peer group overlay
neighbor 10.0.0.1 remote-as 101
neighbor 10.0.0.9 peer group overlay
neighbor 10.0.0.9 remote-as 109
!
address-family evpn
neighbor overlay activate
!
router ospf 1
network 10.0.0.3/32 area 0.0.0.0
network 172.16.0.2/31 area 0.0.0.0
network 172.16.9.0/30 area 0.0.0.0
max-lsa 12000

Linux9与Leaf3、Leaf6之间Underlay配置OSPF,Overlay配置BGP EVPN,Leaf8同理

router bgp 109
no bgp ebgp-requires-policy
no bgp default ipv4-unicast
neighbor 10.0.0.3 remote-as 103
neighbor 10.0.0.3 ebgp-multihop 3
neighbor 10.0.0.3 update-source 10.0.0.9
neighbor 10.0.0.66 remote-as 106
neighbor 10.0.0.66 ebgp-multihop 3
neighbor 10.0.0.66 update-source 10.0.0.9
!
address-family l2vpn evpn
neighbor 10.0.0.3 activate
neighbor 10.0.0.66 activate
advertise-all-vni
exit-address-family
!
router ospf
network 10.0.0.9/32 area 0
network 172.16.9.0/30 area 0
network 172.17.9.0/30 area 0

验证

租户互通ping

[root@hv9 ~]# ip netns exec ns1 bash
[root@hv9 ~]# ping 192.168.2.10
PING 192.168.2.10 (192.168.2.10) 56(84) bytes of data.
64 bytes from 192.168.2.10: icmp_seq=1 ttl=64 time=38.4 ms
64 bytes from 192.168.2.10: icmp_seq=2 ttl=64 time=30.6 ms

Underlay路由OSPF

spine1#show ip ospf neighbor
Neighbor ID Instance VRF Pri State Dead Time Address Interface
10.0.0.77 1 default 1 FULL/DR 00:00:37 172.17.0.5 Ethernet6
10.0.0.66 1 default 1 FULL/DR 00:00:35 172.17.0.3 Ethernet5
10.0.0.4 1 default 1 FULL/DR 00:00:29 172.16.0.5 Ethernet3
10.0.0.3 1 default 1 FULL/DR 00:00:30 172.16.0.3 Ethernet2

leaf3#sho ip ospf neighbor
Neighbor ID Instance VRF Pri State Dead Time Address Interface
10.0.0.1 1 default 1 FULL/BDR 00:00:33 172.16.0.2 Ethernet1
10.0.0.9 1 default 1 FULL/DR 00:00:30 172.16.9.2 Ethernet3

hv9# show ip ospf neighbor

Neighbor ID Pri State Dead Time Address Interface RXmtL RqstL DBsmL
10.0.0.3 1 Full/Backup 35.377s 172.16.9.1 eth0:172.16.9.2 0 0 0
10.0.0.66 1 Full/DR 33.954s 172.17.9.1 eth1:172.17.9.2 0 0 0

Overlay路由 EVPN

spine1#show bgp summary
BGP summary information for VRF default
Router identifier 10.0.0.1, local AS number 101
Neighbor AS Session State AFI/SAFI AFI/SAFI State NLRI Rcd NLRI Acc


10.0.0.3 103 Established L2VPN EVPN Negotiated 1 1
10.0.0.4 104 Established L2VPN EVPN Negotiated 1 1
10.0.0.66 106 Established L2VPN EVPN Negotiated 1 1
10.0.0.77 107 Established L2VPN EVPN Negotiated 1 1

leaf3#show bgp summary
BGP summary information for VRF default
Router identifier 10.0.0.1, local AS number 103
Neighbor AS Session State AFI/SAFI AFI/SAFI State NLRI Rcd NLRI Acc


10.0.0.1 101 Established L2VPN EVPN Negotiated 1 1
10.0.0.9 109 Established L2VPN EVPN Negotiated 1 1

hv9# show bgp summary

L2VPN EVPN Summary:
BGP router identifier 10.0.0.9, local AS number 109 vrf-id 0
BGP table version 0
RIB entries 3, using 576 bytes of memory
Peers 2, using 43 KiB of memory

Neighbor V AS MsgRcvd MsgSent TblVer InQ OutQ Up/Down State/PfxRcd PfxSnt
10.0.0.3 4 103 96 99 0 0 0 01:07:15 1 2
10.0.0.66 4 106 82 78 0 0 0 01:03:25 1 2

Total number of neighbors 2

Linux9 Underlay路由负载,其中一条上联中断VTEP地址仍可达

[root@hv9 ~]# ip route
10.0.0.1 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.2 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.3 via 172.16.9.1 dev eth0 proto 188 metric 20
10.0.0.4 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.5 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.6 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.7 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.8 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.55 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1
10.0.0.66 via 172.17.9.1 dev eth1 proto 188 metric 20
10.0.0.77 proto 188 metric 20
nexthop via 172.16.9.1 dev eth0 weight 1
nexthop via 172.17.9.1 dev eth1 weight 1

MAC路由

hv9# show bgp l2vpn evpn
BGP table version is 35, local router ID is 10.0.0.9
Status codes: s suppressed, d damped, h history, * valid, > best, i - internal
Origin codes: i - IGP, e - EGP, ? - incomplete
EVPN type-1 prefix: [1]:[ESI]:[EthTag]:[IPlen]:[VTEP-IP]
EVPN type-2 prefix: [2]:[EthTag]:[MAClen]:[MAC]:[IPlen]:[IP]
EVPN type-3 prefix: [3]:[EthTag]:[IPlen]:[OrigIP]
EVPN type-4 prefix: [4]:[ESI]:[IPlen]:[OrigIP]
EVPN type-5 prefix: [5]:[EthTag]:[IPlen]:[IP]

Network Next Hop Metric LocPrf Weight Path
Route Distinguisher: 10.0.0.8:2
*> [2]:[0]:[48]:[00:00:00:00:00:01]
10.0.0.8 0 103 101 104 108 i
RT:108:123 ET:8
*/ 10.0.0.8 0 106 101 104 108 i
RT:108:123 ET:8
*> [3]:[0]:[32]:[10.0.0.8]
10.0.0.8 0 103 101 107 108 i
RT:108:123 ET:8
*/ 10.0.0.8 0 106 101 107 108 i
RT:108:123 ET:8
Route Distinguisher: 10.0.0.9:2
*> [2]:[0]:[48]:[00:00:00:00:00:02]
10.0.0.9 32768 i
ET:8 RT:109:123
*> [3]:[0]:[32]:[10.0.0.9]
10.0.0.9 32768 i
ET:8 RT:109:123

Displayed 4 out of 6 total prefixes

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/641421.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

数据中台的商机

阿里拆中台了,很多人来问数据中台还要不要的问题,我认为中台总是要有的,无非是薄厚的问题。然后又有人来问数据中台价值创造的问题,这个其实是数据中台最核心的问题,我就来正式聊一聊,里面有很多的批判&…

T900:可以完美替代P900的国产900MHz无线跳频模块

目录 国产T900模块及其系列成品 T900模块 T900成品 国产T900模块及其系列成品 T900模块及其系列成品,是专门针对无人机及机器人行业设计的,尺寸小、性能优越,可以完美替代microhard的P900产品。下面向大家介绍下T900的相关情况&#xff1…

Dubbo负载均衡策略之 一致性哈希 | 京东云技术团队

本文主要讲解了一致性哈希算法的原理以及其存在的数据倾斜的问题,然后引出解决数据倾斜问题的方法,最后分析一致性哈希算法在Dubbo中的使用。通过这篇文章,可以了解到一致性哈希算法的原理以及这种算法存在的问题和解决方案。 一、负载均衡 …

STM32单片机(五)第二节:EXTI外部中断练习(对射式红外传感器计次和旋转编码器计次)

❤️ 专栏简介:本专栏记录了从零学习单片机的过程,其中包括51单片机和STM32单片机两部分;建议先学习51单片机,其是STM32等高级单片机的基础;这样再学习STM32时才能融会贯通。 ☀️ 专栏适用人群 :适用于想要…

深入学习 Linux 操作系统的存储 IO 堆栈

一、Linux 存储堆栈图 当使用 read() 和 write() 系统调用向内核提交读写 I/O 请求操作时需要经历的步骤: 1)首先,请求经过虚拟文件系统,虚拟文件系统提供了统一的文件和文件系统的相关接口,屏蔽了不同文件系统的差异…

Applied soft computing期刊投稿流程

爱斯唯尔账户注册问题: 账号所属作者即默认通讯作者 刚开始应该会进入这个页面,这里的用户名和密码一般是导师(通讯作者)的账号密码,可以询问老师,然后点击author login登陆就好。 注册里面强调一点,这里面的Title 一般是职称的意思,如果是学生可以填Mr.或者Mrs. 投…

Python 网络舆情分析系统,舆论可视化界面

1 简介 舆情管理系统,这不仅仅可以帮助当地的管理人员迅速的排查跟本地有关的负面言论,还可以避免网民因为本身意识不到位而评论或发布一些不好的观点的情况,最终的目的就是帮助社会更好的发展。 2 技术栈 说明技术栈备注后台Python前端HT…

多线程:Lamda表达式

Lamda表达式 希腊字母表中第十一个字母,英文名字为lambda避免匿名内部类定义过多其实质是函数类编程的概念new Thread (() -->System.out.println(“多线程的学习…”)).start();为什么要使用Lamda表达式? 1、避免匿名内部类定义过多 2、可以让你的代…

Vue中如何进行移动端适配与响应式布局?

Vue中如何进行移动端适配与响应式布局? 如今,移动端适配与响应式布局已经成为Web开发中不可或缺的一部分。Vue.js作为一款流行的JavaScript框架,也提供了许多有用的工具和技术来实现移动端适配和响应式布局。在这篇文章中,我们将…

阿里云服务器ESSD PL-0云盘与ESSD PL-1云盘区别及选择参考

在我们选购阿里云服务器的时候,通常系统盘与数据盘类型都是ESSD云盘,而云盘的性能又分为PL-0和PL-1,虽然都属于ESSD云盘,但是它们之间的性能是有区别的,收费标准也不一样,本文为大家介绍一下阿里云服务器ES…

26岁,大学肄业,家里蹲5年,这位失业青年的求救,牵动百万网友的心……

近期,知乎上有一个求救贴火了,浏览量一度飙升到480多万,近千名网友在帖子下留言,纷纷表达自己的看法。 帖子是这样的。题主26岁,大学肄业。最长只上过12天的班,每次出门面试找工作就会非常害怕&#xff0c…

win11 idea shift+F6快捷键失效问题

1.结论 win11微软输入发最新版问题,使用以前版本即可 2.排查问题过程 最近一直没用shiftF6,当今天要使用时候,突然发现失效了,开始了以下排查过程 2.1 软件快捷键冲突 刚开始以为和其他软件或diea内部快捷键冲突,做了…

计算机组成原理 | 深入理解ELF格式和静态链接

深入解析C语言代码到机器码的过程 #mermaid-svg-UhCa4aLgwtwtM4hS {font-family:"trebuchet ms",verdana,arial,sans-serif;font-size:16px;fill:#333;}#mermaid-svg-UhCa4aLgwtwtM4hS .error-icon{fill:#552222;}#mermaid-svg-UhCa4aLgwtwtM4hS .error-text{fill:#5…

whatsapp如何开发国外客户

WhatsApp可以说是目前2023年最火的社交营销方式之一,目前全球活跃人数大概在10亿,每日发送消息超过650亿条,语音和通话的时长超过20亿分钟,全球三分之一的人在用WhatsApp的,所有做外贸,WhatsApp是必不可少的…

ESXi 7.0 U3m Fujitsu (富士通) 定制版 OEM Custom Installer CD

VMware ESXi 7.0 Update 3m - 领先的裸机 Hypervisor (All OEM Customized Installer CDs) ESXi 7.0 U3m Standard (标准版) ESXi 7.0 U3m Dell (戴尔) 定制版 OEM Custom Installer CD ESXi 7.0 U3m HPE (慧与) 定制版 OEM Custom Installer CD ESXi 7.0 U3m Lenovo (联想) 定…

AIGC + RTE,一个实时互动的应用实践

一夜之间,区块链、元宇宙、Web3、VR等风口似乎都消散了,似乎只有 AI 才是C位。声网 RTC 云市场各类插件 AIGC,会迸发出什么样的火花呢? 最近,声网内部组织了一次黑客松,经过激烈的角逐,我们团…

【华为OD机试真题2023B卷 JAVAJS】完全二叉树非叶子部分后序遍历

华为OD2023(B卷)机试题库全覆盖,刷题指南点这里 完全二叉树非叶子部分后序遍历 知识点数组树递归 时间限制:1s 空间限制:256MB 限定语言:不限 题目描述: 给定一个以顺序储存结构存储整数值的完全二叉树序列(最多1000个整数),请找出此完全二叉树的所有非叶子节点部分,…

成功邀请媒体采访的关键步骤,媒介易助你成为媒体热门

在企业品牌推广和宣传中,与媒体建立合作关系,并邀请媒体进行采访是非常重要的环节。通过媒体的报道和宣传,企业可以扩大品牌的曝光度,提升品牌形象和知名度。然而,成功的媒体邀约并非易事,需要一定的策略和…

启动QT Linux应用程序后黑屏闪烁?

启动QT Linux应用程序后黑屏闪烁? 提问 问 4 年, 3 个月 前 修改于 3 个月前 点击833次 1 我将嵌入式Linux(imx6q)与eglfs一起使用。 帧缓冲在启动Qt应用程序时正在绘制黑屏。 简单的应用程序是黑色的1秒下。重度施用4~5秒。 这仅…

如何关闭A770显卡的灯效

A770的灯效看起来是不错,但对于我这样的实用主义者来说,他没啥用。所以想着怎么样能把他给关了。 查了一下,intel光放给出的办法如下: 如何使用英特尔 RGB 控制器配置英特尔 Arc™ A770 显卡有限版卡上 LED 的外观和行为。 英特…