centos 安装docker 提示 Object "netns" is unknown, try

使用Docker,需要用到ip netns命令来创建网络;Centos6.x默认不支持network namespaces;

在shell中会看到下面的信息:

# ip netns
Object "netns" is unknown, try "ip help".

Centos6.x要获取network namespaces的支持需要升级Centos的内核和更新iproute软件包:

1.升级内核

这里通过yum快速升级CentOS 6.x内核到3.10:

# rpm -ivh http://www.elrepo.org/elrepo-release-6-5.el6.elrepo.noarch.rpm
# yum --enablerepo=elrepo-kernel install kernel-lt -y

在grub.conf中确认装好的内核在哪个位置:

# vi /etc/grub.conf
default=0

重启系统,后查看内核信息:

# uname -r
3.10.65-1.el6.elrepo.x86_64
2.更新iproute软件包

安装软件源:

# yum install -y http://rdo.fedorapeople.org/rdo-release.rpm

更新rdo-release.repo文件为以下内容:

# cat /etc/yum.repos.d/rdo-release.repo 
[openstack-juno]
name=OpenStack Juno Repository
baseurl=http://repos.fedorapeople.org/repos/openstack/openstack-havana/epel-6/
enabled=1
skip_if_unavailable=0
gpgcheck=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-RDO-Juno

升级iproute软件包:

# yum upgrade iproute
...
$ rpm -qa | grep iproute
iproute-2.6.32-130.el6ost.netns.2.x86_64

3.常用的namespace的命令

添加一个namespace:

# ip netns add NETNSNAME

在namespace中新加一个设备:

# ip link set [dev-name] netns NETNSNAME

在namespace中启用一个设备:

# ip netns exec NETNSNAME ip link set lo up

查看指定namespace中指定设备的参数信息:

# ip netns exec NAETNSNAME ip addr show  [dev-name]  permanent scope global

为namespace中指定设备设置ip:

# sudo ip netns exec NETNSNAME ip -4 addr add 192.168.1.231/24 brd 192.168.1.255 scope global dev [dev-name]

查看所有network namespace:

# ip netns list

ping虚拟机实例:

# ip netns exec [name] ping 192.168.1.231


转载于:https://my.oschina.net/denglz/blog/414796

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值