【Mininet】基于Mininet的VxLAN实验

实验参考:

基于Mininet的VxLAN实验

实验步骤:

1. 如下图所示,在两台虚拟机中利用mininet创建两个网络,利用VxLAN连通这两个mininet环境。关闭默认的控制器后,通过下发流表确保网络的连通性:

2. 先查看两台虚拟机的IP 地址:

虚拟机vm1(192.168.0.109):

虚拟机vm2(192.168.0.105):

 

3. 分别在vm1和vm2中创建网络拓扑,包含1台主机和1个交换机:

$  sudo mininet –topo=single,1

4. 分别在vm1和vm2中创建vxlan接口,并对其进行配置:

1 mininet>  sh ovs-vsctl add-port s1 vxlan
2 mininet>  sh ovs-vsctl set interface vxlan type=vxlan option:remote_ip=<对方的IP> option:key=5566 ofport_request=9

设置完成后,进行查看:

虚拟机vm1(192.168.0.109):

 虚拟机vm2(192.168.0.105):

5. 设置二者的主机IP:

mininet> h1 ifconfig h1-eth0 <IPaddress> #两者的IP地址要处于同一网段且不重复

6. 执行ping操作,用vm1去pingvm2:

7. 关闭二者的控制器:

1 $  ps -aux|grep controller #查找控制器进程id
2 $  sudo kill <id> #填入root的对应id

再次进行ping操作:

8. 下发流表,指定数据转发端口,使二者能够连通:

 虚拟机vm1(192.168.0.109):

 

虚拟机vm2(192.168.0.105):

再次进行ping操作:

实验结论:

VxLAN是一种overlay的网络技术,可扩展局域网。VxLAN学习地址依旧保持的二层协议的特征,节点之间不会周期性交换路由表,遇到不认识的MAC地址则通过组播的方式获取路径,在SDN网络中,则向SDN控制器寻求帮助。本实验中,VxLAN先是依靠控制器实现地址学习,当关闭控制器后,则通过下发流表的方式引导数据包传播。

猜你喜欢

转载自www.cnblogs.com/ptolemy/p/11256017.html