openvswitch中bridge的TAG使用

本文档通过openvswitch和vlan TAG在一台宿主机上模拟两个隔离的虚拟网络环境,详细介绍了环境准备、配置过程及测试验证,以实现网络隔离并探讨了其工作原理。
摘要由CSDN通过智能技术生成

一台宿主机中创建隔离2层网络

本节主要通过使用vlan TAG,模拟4个虚拟机来在一台宿主机上模拟简历两个虚拟的网络环境。本节内容比较少,涉及的内容可能比较陌生。

首先,原理介绍

在这简单介绍下: 一台交换机有很多端口,在本文中使用vlan tag的目的是为了为了网络隔离,如图(在此只介绍我们本文能用到的部分):

TAG

  • 标记 TAG为1、2的分别属于不同的网络,两个网络之间的包不会互相流通。

具体参照:https://zh.wikipedia.org/wiki/IEEE_802.1Q

环境准备

  • 1, 模拟创建4个虚拟机,分别属于用户A的和用户B的。
    在此我写了两个简单的脚本,一个用于初始化测试环境,一个用于销毁环境。
# cat init_vms 
#! /bin/bash -x
ovs-vsctl add-br br-int
ip netns add vm_a_1
ip netns add vm_a_2
ip netns add vm_b_1
ip netns add vm_b_2
ovs-vsctl add-port br-int vm_a_1 -- set interface vm_a_1 type=internal
ovs-vsctl add-port br-int vm_a_2 -- set interface vm_a_2 type=internal
ovs-vsctl add-port br-int vm_b_1 -- set interface vm_b_1 type=internal
ovs-vsctl add-port br-int vm_b_2 -- set interface vm_b_2 type=internal
ip link set vm_a_1 netns vm_a_1
ip link set vm_a_2 netns vm_a_2
ip link set vm_b_1 netns vm_b_1
ip link set vm_b_2 netns vm_b_2
ip netns exec vm_a_1 ifconfig vm_a_1  up
ip netns exec vm_a_2 ifconfig vm_a_2  up
ip netns exec vm_b_1 ifconfig vm_b_1  up
ip netns exec vm_b_2 ifconfig vm_b_2  up
==================================================
# cat clear_vms 
#! /bin/bash -x
ovs-vsctl del-br br-int
ip netns del vm_a_1
ip netns del vm_a_2
ip netns del vm_b_1
ip netns del vm_b_2

我们首先运行初始化脚本,创建br-int,创建4个port,创建4个namespace,把4个port分别加载到4个namespace中,然后设置4个网络设备up状态。

在接下来的代码块中 如果标题有vm_a_1 字样,则表示在该namespace中执行的命令代码块,否则表示在宿主机中执行的命令

  • 2,为4个网络设备设置网络地址
root@www /home/abaobo/tmp 2015-08-15 12:27:00 
#
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值