为什么我在使用macvlan时无法通过其主机名从外部计算机ping容器?

时间:2018-01-17 11:07:06

标签: docker networking

我用这个conf创建了一个macvlan:

sudo docker network create -d macvlan \
    --subnet=192.168.4.0/24 \
    --gateway=192.168.4.1 \
    -o macvlan_mode=bridge \
    -o parent=eth0 macvlan70

然后我使用:

运行高山图像
docker run --net=macvlan70 --hostname=thehost --ip=192.168.4.17 -it  alpine /bin/sh

此时我搬到了局域网中的另一台机器 - 主机无法连接没有桥接器的Macvlan容器。

我可以ping 192.168.4.17成功。但ping thehost不会产生。在路由器管理页面中,可以识别ip 192.168.4.17但没有关联的主机名。

1 个答案:

答案 0 :(得分:1)

正如它在docker docs中说的那样,用户定义的主机名在容器外部不可用。

  

即使在主机网络模式下,容器默认也有自己的UTS命名空间。因此 - 在主机网络模式下允许使用主机名,并且只会更改容器内的主机名