Open vSwitch的VxLAN隧道网络实验

实验参考

Open vSwitch的VxLAN隧道网络实验

实验步骤

1 预先配置

登录两台Mininet虚拟机或者是已安装OpenvSwitch的虚拟机。

查看两台虚拟机IP

#ifconfig

验证OvS服务是否被启动好:

# ps –ef|grep ovs

OvS已启动。

步骤1:分别在两台机器上创建网桥:

#sudo ovs-vsctl add-br br0
#sudo ovs-vsctl add-br br1

步骤2:mn虚拟机上将eth0的IP赋给br1:

#ifconfig eth0 0 up
#ifconfig br1 30.0.1.13 up

给mn虚拟机的br1重新添加路由:

#route add default gw 30.0.1.12

mn的路由如下显示:

#sudo ovs-vsctl add-port br1 eth0
#ovs-vsctl show

 

步骤3:mn1虚拟机上将eth0的IP赋给br1:

#ifconfig eth0 0 up
#ifconfig br1 30.0.1.6 up

给mn1虚拟机的br1重新添加路由:

#route add default gw 30.0.1.5

  

mn1虚拟机的路由显示如下:

#ovs-vsctl add-port br1 eth0
#ovs-vsctl show

前期实验环境已准备好。

2 设置VxLAN实现同一网段的通信

在mn虚拟机上给br0配置一个IP:

# ifconfig br0 30.0.0.2/8 up

在mn1虚拟机上给br0配置一个与mn虚拟机上br0同一网段的IP地址:

# ifconfig br0 30.0.0.3/8 up

验证br1和br1的IP是否通信:Mn虚拟机的br1 ping mn1虚拟机的br1,是可以ping通的:

mn虚拟机ping mn1虚拟机的br0,是ping不通的:

Br0和另一台设备的br0不能通信,搭建隧道的目的就是让两台机器的br0(数据层面)能够实现通信。

实验本身是在虚拟机中操作,所以实验中br0桥上没有再下挂主机,分别给两台虚拟机的br0指定两个相同网段的IP,然后通过搭建VxLAN隧道让这两个网桥能够实现通信,

设置如下:验证mn虚拟机的br0和mn1虚拟机的br0是否通信:
在mn虚拟机上创建VxLAN:

# ovs-vsctl add-port br0 vx1 -- set interface vx1 type=vxlan options:remote_ip=30.0.1.6

在mn1虚拟机上创建VxLAN:

# ovs-vsctl add-port br0 vx1 -- set interface vx1 type=vxlan options:remote_ip=30.0.1.13

验证mn虚拟机的br0和mn1虚拟机的br0是否通信:

验证经过设置VxLAN后,两个虚拟机的同一网段数据层面是通信的。

设置VxLAN实现不同网段的通信

在mn虚拟机上给br0配置一个IP:

# ifconfig br0 30.0.0.1/8 up

在mn1虚拟机上给br0配置一个与mn虚拟机上br0不是同一网段的IP地址:

# ifconfig br0 40.0.0.1/8 up

验证mn虚拟机的br0和mn1虚拟机br0的IP是否通信:
mn虚拟机ping mn1虚拟机的br0,是ping不通的:

br0和另一台设备的br0不能通信,搭建隧道的目的就是让两台机器的br0(数据层面)能够实现通信。

实验本身是在虚拟机中操作,分别给两台虚拟机的br0指定两个不同网段的IP,然后通过搭建VxLAN隧道及设置路由让这两个网桥能够实现通信,设置如下:

在mn虚拟机上创建VxLAN:

# ovs-vsctl add-port br0 vx1 -- set interface vx1 type=vxlan options:remote_ip=20.0.4.195

在mn1虚拟机上创建VxLAN:

# ovs-vsctl add-port br0 vx1 -- set interface vx1 type=vxlan options:remote_ip=20.0.4.196

VxLAN设置好后,mn虚拟机的br0和mn1虚拟机的br0仍不能通信通信,需要设置静态路由才能通信,如下设置:
在mn虚拟机上添加路由:

# route add –net 40.0.0.0 netmask 255.0.0.0 gw 30.0.0.1 dev br0

在mn1虚拟机上添加路由:

# route add –net 30.0.0.0 netmask 255.0.0.0 gw 40.0.0.1 dev br0

验证mn虚拟机的br0和mn1虚拟机的br0是否通信:

验证经过设置VxLAN及路由后,两个虚拟机的不同网段数据层面是通信的。

实验总结

在实验参考中,我按照步骤来,但是两个虚拟机的ping总是无法连接。后来做了多次实验,发现将ifconfig br1 20.0.4.196/29 up 改为 ifconfig br1 20.0.4.196 up 才能连接。不知道为什么?

原文地址:https://www.cnblogs.com/fcw245838813/p/12267436.html

时间: 2024-08-30 02:46:51

Open vSwitch的VxLAN隧道网络实验的相关文章

搭建基于Open vSwitch的VxLAN隧道实验

1. VXLAN简介 VXLAN 是 Virtual eXtensible LANs 的缩写,它是对 VLAN 的一个扩展,是非常新的一个 tunnel 技术,在Open vSwitch中应用也非常多.Linux 内核的 upstream 中也刚刚加入 VXLAN 的实现.相比 GRE tunnel 它有着很好的扩展性,同时解决了很多其它问题. 从数量上讲,它把 12 bit 的 VLAN tag 扩展成了 24 bit.从实现上讲,它是 L2 over UDP,它利用了UDP 同时也是 IPv

搭建基于Open vSwitch的VxLAN隧道实zz

https://www.sdnlab.com/5365.html vm1配置: # ovs-vsctl add-br br0# ovs-vsctl add-br br1# ovs-vsctl add-port br0 eth0  //eth0是物理网口的名字# ifconfig eth0 0 up && ifconfig br0 192.168.146.131/24 up  //ip能外部路由器在一个网段# route add default gw 192.168.146.2 br0  /

Open vSwitch的GRE隧道实验网络

实验参考 Open vSwitch的GRE隧道实验网络 实验步骤: 1.配置VM1 (1)Open vSwitch服务验证 验证虚拟机VM1的OvS服务是否被启动好: # ps -ef|grep ovs  2. 在VM1中创建两个bridge: # ovs-vsctl add-br br0 # ovs-vsctl add-br br1  3. 配置br0: # ifconfig eth0 0 up # ifconfig br0 20.0.2.12 netmask 255.255.255.248

在CentOS7上配置Open vSwitch和VXLAN

在CentOS7上配置Open vSwitch和VXLAN 环境 实验环境 主机环境 [[email protected] ~]$ uname -a Linux node0 3.10.0-123.9.3.el7.x86_64 #1 SMP Thu Nov 6 15:06:03 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux [[email protected] ~]$ cat /etc/redhat-release CentOS Linux release 7.0

Neutron 理解 (3): Open vSwitch + GRE/VxLAN 组网 [Netruon Open vSwitch + GRE/VxLAN Virutal Network]

学习 Neutron 系列文章: (1)Neutron 所实现的虚拟化网络 (2)Neutron OpenvSwitch + VLAN 虚拟网络 (3)Neutron OpenvSwitch + GRE/VxLAN 虚拟网络 (4)Neutron L3 agent (5)TBD 目前,OpenStack Neutron 支持使用两种隧道网络技术 通用路由封装(GRE) 和 VxLAN 来实现虚拟的二层网络.这两种技术大致看起来非常相似,都是需要使用 OpenStack 在计算和网络节点上建立隧道

centos7.3网络实验环境(金个人)

centos7.3网络实验环境网络拓扑:服务器IP:192.168.10.7客户端IP:192.168.10.8 centos7桌面快捷键:alt+F1  应用程序菜单(即开始菜单)alt+F2  运行程序,如运行gedit.gnome-terminal.firefox.gnome-control-center display等程序Ctrl+Shift+t    打开标签Ctrl+Shift+n   打开终端(独立)F2    重命名F5    刷新,Ctrl+RF9    显示窗口左侧导航栏F

15、网络--实验三(搭建点对点VXLAN网络)

先来搭建一个最简单的vxlan网络,两个namespace构成一个vxlan网络,每个vxlan网络上有一个vnet,vnet通过它们的IP互相通信. 1) 创建vnet_pair 具体参考"实验二"章节.http://blog.51cto.com/hostman/2106159 2) 创建vxlan 3) ns01配置vxlan0 IP并启用 发现路由表项多了下面的内容192.168.1.0/24网段的IP地址要通过vxlan0来转发; 同时,vxlan0 fdb表项中表项的意思是,

16、网络--实验四(搭建多播模式VXLAN网络)

要组成同一个 vxlan 网络,vtep 必须能感知到彼此的存在.多播组本来的功能就是把网络中的某些节点组成一个虚拟的组,所以 vxlan 最初想到用多播来实现是很自然的事情. 这个实验和前面一个非常相似,只不过主机之间不是点对点的连接,而是通过多播组成一个虚拟的整体.最终的网络架构也很相似(为了简单图中只有两个namespace,但这个模型可以容纳多个主机组成 vxlan 网络): 1) NS01删除vxlan0配置 2) NS02删除vxlan0配置 3) vxlan0配置模板 这里最重要的

准备 overlay 网络实验环境 - 每天5分钟玩转 Docker 容器技术(49)

为支持容器跨主机通信,Docker 提供了 overlay driver,使用户可以创建基于 VxLAN 的 overlay 网络.VxLAN 可将二层数据封装到 UDP 进行传输,VxLAN 提供与 VLAN 相同的以太网二层服务,但是拥有更强的扩展性和灵活性.有关 VxLAN 更详细的内容可参考 CloudMan 在<每天5分钟玩转 OpenStack>中的相关章节. Docerk overlay 网络需要一个 key-value 数据库用于保存网络状态信息,包括 Network.Endp