关于docker:docker默认IP地址冲突

4次阅读

共计 822 个字符,预计需要花费 3 分钟才能阅读完成。

一. 问题形容
在公司虚拟机内开了个 docker 容器,发现公司内网的局部 IP 地址是无法访问的。

二. 解决步骤
1. 狐疑公司网络限度

运维查问发现有个 IP 段被禁止拜访了,如果要拜访须要独自申请。

2. 狐疑本机操作问题

在不申请的状况下做了第二个操作,发现本机 docker 的 IP 地址段与该无法访问 IP 段比拟类似。

#ifconfig docker0
docker0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
        inet 172.17.0.1  netmask 255.255.0.0  broadcast 0.0.0.0
        ether 02:42:d4:d3:b9:28  txqueuelen 0  (Ethernet)
        RX packets 0  bytes 0 (0.0 B)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 0  bytes 0 (0.0 B)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

批改 docker 的 IP 地址:

# vi  /etc/docker/daemon.json
{"bip": "192.168.100.1/24"}

留神,此时 bip 肯定是不能以 0 结尾,否则在重启 docker 服务时,会报错找不到网络。

操作删除原有的网络:
ip link del docker0

如需长期批改 IP 网段:
docker --bip="10.1.42.1/16" -d
如果最初认为是 0 的话,则会报如下谬误:

INFO[2020-08-21T06:33:33.159447512Z] Loading containers: start.
Error starting daemon: Error initializing network controller: Error creating default "bridge" network: failed to allocate gateway (172.30.0.0): Address already in use
正文完
 0