• docker-ip与服务器ip冲突问题


    环境描述:

    公司网段10....18 需要访问 172....81的80端口服务,通过公司网络部门开通端口后还是telnet不通,猜测是docker的ip与 172....81 服务器的ip冲突,指令route查看如下:多出几个172开头ip。证实猜测是正确的。

     

    复盘问题过程:
    1.搭建jenkins时,因测试环境不能ssh到uat和生产,故选择在uat搭建jenkins。
    2.使用docker搭建jenkins完毕后,并未发现明显异常,但是发现办公网络到uat这台装了docker的网络突然不通了。
    3.猜测肯定与docker安装有关,开始检查docker安装所使用的命令,操作命令中未发现任何会对其他硬件和配置有变更的地方,只更新了软件源。
    4.此时有些迷茫,不清楚为啥网络就有了故障,笔者对网络不甚了解。
    5.碰巧部门群里,服务器的管理人员发了一个场景的docker安装产生的网络异常问题的场景,对号入住后发现与自己症状很是相似。决定照这个去网上搜了解决方案。
    6.找到问题原因:docker安装后默认有个docker0网卡,该网卡的ip是:172.17.0.1,该ip正好与公司本部的IP地址有冲突,然后就导致了本部的ip与docker所在网络的通信出现了问题。ping与telnet都会不通了。
    7.问题产生的原因一直都知道方向:docker产生的网络问题。不过直到服务器管理人员发出来才真正意识到问题的所在。

     解决步骤如下:

    1.删除现在的网卡

    1. sudo systemctl stop docker # 关闭docker
    2. sudo ip link set dev docker0 down # 关闭docker0网卡
    3. sudo brctl delbr docker0 # 删除docker0网卡
    4. sudo iptables -t nat -F POSTROUTING # 清空路由后的地址转换规则

    执行“brctl delbr”该命令时,可能会提示命令未找到,请参照如下:

    1. sudo yum install bridge-utils # Centos系统网桥安装
    2. sudo apt-get install bridge-utils # Ubuntu系统网桥安装

    bridge-utils的rpm包下载-链接:https://pan.baidu.com/s/1HsjAyI7vDjorL4aex3FfWA 
    提取码:z9c9 

    2.重新创建docker0网卡

    1. sudo brctl addbr docker0 # 创建网卡
    2. sudo ip addr add 10.250.8.8/24 dev docker0 # 为docker0网卡声明新的ip
    3. sudo ip link set dev docker0 up # 启动docker0网卡

    3.修改docker配置文件
    daemon.json可能不存在,该文件并不是必须的。所以若是不存在,则需要我们自己创建

    sudo vim /etc/docker/daemon.json # 编辑docker配置文件
    

    打开该文件后,在后面追加刚刚第二步 配置的ip即可,如下所示

    1. {
    2. "bip": "10.250.8.8/24"
    3. }

    4.重启docker即可

    1. sudo systemctl daemon-reload # 重载docker的配置文件
    2. sudo systemctl restart docker # 重启docker服务

    5.其他的172网段操作如下:

    再执行

    sudo iptables -t nat -F POSTROUTING # 清空路由后的地址转换规则

    6.执行route结果如下

     

     

  • 相关阅读:
    如果忘记了 iPhone 密码
    万宾科技智能井盖传感器怎么使用?
    【广州华锐互动】VR高层火灾应急疏散演练提供一种无风险的逃生体验
    第2-4-5章 规则引擎Drools高级语法-业务规则管理系统-组件化-中台
    JUC-ReentrantReadWriteLock锁基础篇
    泛娱乐社交掀起2万亿市场热潮,Flat Ads独家流量助出海获客
    SMTP服务器搭建关键步骤?如何配置服务器?
    6.27 JAVA笔试题
    JavaScript-DOM按钮事件
    【Kotlin 协程】协程的挂起和恢复 ① ( 协程的挂起和恢复概念 | 协程的 suspend 挂起函数 )
  • 原文地址:https://blog.csdn.net/weixin_40308031/article/details/125576885