Docker网段和内网网段ip冲突导致无法访问网络的两种解决方法

 更新时间:2023年06月30日 14:52:21   作者:Sean‘  
本文主要介绍了Docker网段和内网网段冲突导致无法访问网络的两种解决方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

docker启动时默认会创建一个docker0网桥,它在内核层连通了其他的物理或虚拟网卡,相当于将所有容器和其主机都放到同一个网络。但是部署在内网中的IP段存在有此网段的IP时,会导致冲突

1、使用宿主机的ip也会有是无效的。

2、只要docker启动,便会造成局域网内其它主机访问本机失效,

3、关闭docker后,本机便可访问.

以下我列出了两种解决方法,供大家参考

方法一:简单粗暴智能修改当前的bridge默认网段

 docker默认的网段是172.17.0.0/16

1、首先停止docker

systemctl stop docker

2、备份下文件

cp /etc/docker/daemon.json /etc/docker/daemon.json.bak

3、在文件里面加入一下网段信息

cat > /etc/docker/daemon.json << EOF
{
"bip": "100.10.10.1/24"
}
EOF

 注意:这里按照所需的要求来修改

接下来检查一下我们修改是否生效

 这里可以看到网段发生了变化

方法二:不影响服务的情况下修改docker网段

1、安装bridge-utils工具

yum -y install bridge-utils.x86_64

 2、停止docker服务

systemctl stop docker

3、停止docker 虚拟docker0虚拟网桥

ip link set dev docker0 down

4、删除 docker 虚拟docker0虚拟网桥

brctl delbr docker0

5、清理Linux防火墙规则

iptables -t nat -F POSTROUTING

6、添加docker虚拟网桥

brctl addbr docker0

7、为docker0配置网络地址,这个地址在后面可以作为虚拟机的网关地

ip addr add 100.10.1.0/24 dev docker0

#设置你要修改为哪个网断,我修改的是100.10.1.0/24

8、启用刚新创建的docker虚拟网桥

ip link set dev docker0 up 

9、docker配置文件中追加参数

vim /etc/docker/daemon.json

{ “bip”: “100.10.1.0/24” }

10、重新加载某个服务的配置文件

 systemctl daemon-reload

11、重启docker

systemctl restart docker

12、检查是否生效

 这里我们看到docker0的网段又发生了变化

优点:上面这种情况,可以做到迁移docker的时候不改变虚拟网桥以及容器IP地址

到此这篇关于Docker网段和内网网段冲突导致无法访问网络的两种解决方法的文章就介绍到这了,更多相关Docker网段和内网网段冲突内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • Docker部署nGrinder性能测试平台过程解析

    Docker部署nGrinder性能测试平台过程解析

    这篇文章主要介绍了Docker部署nGrinder性能测试平台过程解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-11-11
  • docker快速安装Es和kibana的实现步骤

    docker快速安装Es和kibana的实现步骤

    在工作过程中,经常需要测试环境搭建Es环境,本文主要介绍了docker快速安装Es和kibana,具有一定的参考价值,感兴趣的可以了解一下
    2024-03-03
  • docker搭建minio及java sdk使用过程详解

    docker搭建minio及java sdk使用过程详解

    MinIO 是一款高性能、分布式的对象存储系统. 它是一款软件产品, 可以100%的运行在标准硬件,MinIO使用也非常受欢迎,很多朋友不知道minio如何搭建及java sdk的使用,今天借这篇文章给大家详细介绍下,需要的朋友参考下吧
    2021-09-09
  • 关于docker部署fastapi项目以及日志挂载方式

    关于docker部署fastapi项目以及日志挂载方式

    这篇文章主要介绍了关于docker部署fastapi项目以及日志挂载方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2023-03-03
  • 使用Docker快速搭建你的Gitbook

    使用Docker快速搭建你的Gitbook

    这篇文章主要介绍了使用Docker快速搭建你的Gitbook的相关资料,需要的朋友可以参考下
    2023-11-11
  • Windows(Win11)如何安装Docker(Docker Desktop)

    Windows(Win11)如何安装Docker(Docker Desktop)

    这篇文章主要介绍了Windows(Win11)如何安装Docker(Docker Desktop),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-06-06
  • docker如何查看容器/删除(所有)容器/删除镜像

    docker如何查看容器/删除(所有)容器/删除镜像

    这篇文章主要介绍了docker如何查看容器/删除(所有)容器/删除镜像问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教
    2024-07-07
  • Docker镜像管理之docker pull实战及常见问题详解

    Docker镜像管理之docker pull实战及常见问题详解

    docker pull是我们经常用到的一个命令,我们使用一些官方镜像,如MySql、Nginx等都需要用docker pull下载,这篇文章主要介绍了Docker镜像管理之docker pull实战及常见问题的相关资料,需要的朋友可以参考下
    2025-09-09
  • Docker 镜像分层机制的深度实践​

    Docker 镜像分层机制的深度实践​

    本文主要介绍了Docker 镜像分层机制的深度实践​,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2026-05-05
  • Docker部署java项目的详细步骤(利用Dockerfile方式)

    Docker部署java项目的详细步骤(利用Dockerfile方式)

    docker可以利用简单的编写程序构建出任何你想要的环境,同时可以跟业务代码相结合,快速构建和生成所需要的应用,下面这篇文章主要给大家介绍了关于Docker部署java项目的详细步骤,本文主要利用的是Dockerfile方式,需要的朋友可以参考下
    2022-08-08

最新评论