admin 管理员组文章数量: 1184232
一、docker默认网卡docker0默认的网段为172.17.0.0/16
某些企业下可能规划私网地址与docker0默认网段冲突,就会导致请求主机发送数据包,流量转发不出去,导致网络访问出现异常。
1、现实情况企业网络一般不会重新规划,只能将docker0分配的默认网段修改。
修改/etc/docker/daemon.json (如果没有此配置文件的话,新建一个即可)
{
"default-address-pools":
[
{"base":"172.100.0.0/16","size":24}
]
}这里的172.100.0.0/16为你要修改的新的网段,只要不与请求主机网段冲突即可。
配置文件格式一定要对,否则重启docker会出现问题。
这里我分享一个daemon.json的配置文件,防止大家因为格式问题出现错误
提取码: 0c9k
直接将下载的配置文件,通过ftp上传到服务器上即可。
2、删除docker0
ip link delete docker03、重新启动docker
service stop docker(systemctl stop docker)
service start docker(systemctl start docker)4、查看docker现有的ip网段
二、 如果用 docker-compose启动,并且 docker-compose.yml有指定network,在启动过程同样会建立172.17.0.0类似的网络地址,可能还是会与主机冲突,这时候我们使用以下方法修改默认的网段。
1、我们查看当前有docker建立的网络名称
docker network list2、停止并删除现有的docker容器
docker stop $(docker ps -aq)
docker rm $(docker ps -aq)3、删除上面的app_app_network、app-default
docker network remove app_default
docker network remove app_app_network4、为上面虚拟网卡重新指定网段
docker network create --driver=bridge --subnet 172.150.0.0/24 app_default
docker network create --driver=bridge --subnet 172.160.0.0/24 app_app-network5、查看现有的网卡地址
ifconfig从网卡信息上来看,这里的docker网卡也已经改过来了。
希望可以解决朋友们的问题,这个出现的次数还是很多的。
版权声明:本文标题:Docker默认网段撞上墙了?轻松修复与主机网段的冲突! 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://www.roclinux.cn/p/1773666573a3564575.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论