[cloud][sdn] network namespace

man 手册关于IP netns的介绍:

http://man7.org/linux/man-pages/man8/ip-netns.8.html

 

一个非常好的介绍,有概念,有操作:

http://cizixs.com/2017/02/10/network-virtualization-network-namespace

 

一:

以下,操作都是根据上边这个文档来的,详细的我推荐去参见原文档!

创建namespace test1,以及一个veth

[root@vrouter-ovs ~]# ip netns add test1
[root@vrouter-ovs ~]# ip link add type veth
[root@vrouter-ovs ~]# ip link set veth0 netns test1
[root@vrouter-ovs ~]# ip netns exec test1 bash

再使用同样的操作创建 test2

为了防止搞不清楚自己在什么地方,bash之后一般可以改一下命令行的提示符,加以区分:

[root@vrouter-ovs ~]# PS1="172-ns > "
172-ns > 
172-ns > ls

 

在test1 和test2中会分别出现一个可以联通的网卡,配上IP之后就可以互ping了。

[root@vrouter-ovs ~]# ip netns exec test1 ip link
1: lo: <LOOPBACK> mtu 65536 qdisc noop state DOWN mode DEFAULT 
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
10: veth0@if11: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP mode DEFAULT qlen 1000
    link/ether f6:30:1f:4a:97:2f brd ff:ff:ff:ff:ff:ff link-netnsid 1
[root@vrouter-ovs ~]# 

 

二:

更高级一点的就bridge。这就和我的QEMU虚拟机的网络配置方法一样了。不再赘述,可以翻全面的qemu网络相关的文档,原理相同。

 

三:

一直用btctl管理bridge,这个文档里提到了用ip命令怎么处理,摘要如下:

[root@localhost ~]# ip link add br0 type bridge
[root@localhost ~]# ip link set dev br0 up
[root@localhost ~]# ip link set dev veth0 master br0
[root@localhost ~]# ip link set dev veth0 up

 

posted on 2018-03-29 17:05  toong  阅读(192)  评论(0编辑  收藏  举报