每当我跑码头工人,容器,我看到它使用一个随机的MAC地址:如何设置Docker LXC容器的MAC地址?
eth0 Link encap:Ethernet HWaddr de:6f:de:74:bd:d9
如何设置一个特定的MAC地址的容器中运行?
我可以使用同一个MAC地址同时运行多个容器吗?这些容器不需要访问外部网络,也不需要相互通话。
每当我跑码头工人,容器,我看到它使用一个随机的MAC地址:如何设置Docker LXC容器的MAC地址?
eth0 Link encap:Ethernet HWaddr de:6f:de:74:bd:d9
如何设置一个特定的MAC地址的容器中运行?
我可以使用同一个MAC地址同时运行多个容器吗?这些容器不需要访问外部网络,也不需要相互通话。
MAC地址使用LXC配置选项lxc.network.hwaddr
进行设置。 下面是如何使用泊坞窗0.6.1设置MAC地址的例子:
docker run --lxc-conf="lxc.network.hwaddr=92:20:de:b0:6b:61" my_image ifconfig
在输出中,你会看到这是设置的HWaddr:
eth0 Link encap:Ethernet HWaddr 92:20:de:b0:6b:61
更新:
以前的开关-lxc-conf
(带有1个破折号)已被弃用。
用上面的开关,你泊坞窗必须使用LXC司机:-e lxc
如何使用-e变量设置mac地址,谢谢 – Noor
以上回答为我工作,帮助我非常多,但我需要一个更详细一点得到它的工作。 当你有一个应用程序的mac地址许可证时,这非常有用。 因为这是我能找到的关于这个主题的唯一帖子,所以我想我对它进行了扩展。
对我来说,它需要更多的工作 - 否则交换机将被默默丢弃。 对Ubuntu 12.04:
较新版本的docker
采取--mac-address=12:34:56:78:9a:bc
开关docker run
。
[email protected]:~# sudo docker run --rm --mac-address"=12:34:de:b0:6b:61" ubuntu ifconfig | grep HWaddr
eth0 Link encap:Ethernet HWaddr 12:34:de:b0:6b:61
mac选项应该是:--mac-address =“12:34:de:b0:6b:61”? – zhanxw
你的问题是关于报价?它们是不必要的,但是无害的。 –
这是正确的答案,应该被接受为这样。接受的答案在码头17.03上不起作用。 –
立刻浮现在脑海的第一个问题是为什么呢?你有某种过滤或基于MAC的访问控制设置吗?你试图完成的实际业务目标是什么? – amattn
是的,我的服务允许用户从网络浏览器运行工具。为了安全起见,我使用Docker容器运行这些工具。其中一种工具需要绑定到特定的MAC地址,所以我需要以某种方式限制MAC地址随机化。 –