zoukankan      html  css  js  c++  java
  • [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
  • 相关阅读:
    使用RSA实现客户端和后台的非对称加密
    PHP异步并行网络扩展swoole安装
    rvm is not a function的解决方法
    python中的sort(),sorted()的用法
    RESTful框架中的Mixin中的五个类视图
    RESTful框架的API请求流程
    理解RESTful架构
    Django中的admin管理工具
    一个程序员的自我介绍--英文版
    Django中的认证系统
  • 原文地址:https://www.cnblogs.com/hugetong/p/8670970.html
Copyright © 2011-2022 走看看