zoukankan      html  css  js  c++  java
  • Docker修改默认网段

    因阿里云服务器VPC默认占用了172.16.0.0/16 网段,与Docker里的网段相同,导致Docker里无法连接VPC服务器。后来找到的解决方案是修改Docker的默认网段。

    由于Docker默认网段是172.16.0.0/16 ,我们可以修改为其他网段。

    如何修改

    Docker for mac

    如果本地环境是 Docker for mac,依次打开 Preferences -> Daemon -> Advanced ,增加配置 "bip" : "172.16.10.1/24",从而避免网段冲突的问题。

    docker-machine

    如果使用的docker-machine,请使用docker-machine ssh进入虚拟机,编辑文件/etc/docker/daemon.json,增加 {"bip" : "172.16.10.1/24"},然后退出虚拟机,重启docker-machine即可成功修改网段。

    修改成功后,在docker里使用ping命令,就可以ping通VPC网段了。通过ifconfig也可以发现默认的网段不再是172.16.x.x 了:

    ~$ ifconfig
    docker0   Link encap:Ethernet  HWaddr 02:42:48:02:F1:60
              inet addr:172.16.10.1  Bcast:172.16.10.255  Mask:255.255.255.0
              inet6 addr: fe80::42:48ff:fe02:f160/64 Scope:Link
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:0 errors:0 dropped:0 overruns:0 frame:0
              TX packets:7 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:0 (0.0 B)  TX bytes:578 (578.0 B)
    
    

    其它

    如果发现docker内访问某个地址超时,可以使用ping命令,如果Ping不通,使用ifconfig看看是不是有网桥占用了网段。使用ifconfig xxx down可以停用冲突的网卡:

    ifconfig br-599560de6ff8 down
    

    彻底的解决办法就是删除掉不用的网桥,参考:http://hujao.com/2018/07/27/docker-network/

  • 相关阅读:
    PHP对象
    MySQL多表更新
    使用not in的子查询
    MySQL比较运算符的子查询
    控制器调用函数
    MVC目录规范
    MVC流程
    mxnet安装
    离线安装Python包hickle,easydict
    深度学习基础
  • 原文地址:https://www.cnblogs.com/52fhy/p/9308422.html
Copyright © 2011-2022 走看看