記內網linux服務器安裝docker后無法ping通172.17網段機器問題及其解決方法


遇到的問題

    內網做項目集成,范圍中有通過docker容器化部署的應用,所以需要安裝docker基礎環境。

    按照官方文檔安裝后docker后,發現機器無法ping通內網 172.17 網段的時間同步服務器。

問題的排查

    1、通過 arp -a 命令查看本機的arp緩沖區內容

    

    發現ping 172.17網段機器的請求用的是docker0的網卡(本文截圖均為命令演示,非真實問題截圖)

   2、通過 ip route 命令查看核心路由表

    

    發現docker0網卡使用網段為 172.17.0.0/24 網段;所以當機器 ping 172.17 網段服務器時會ping至docker映射網段中,導致實際機器無法連接

問題的解決

    把docker0的網段修改為用不到的網段即可

    具體操作:

    1、關閉docker服務(用到的docker命令詳見)

        (a)查看所有容器  docker ps -a

        (b)關閉啟動的容器  docker stop <容器 ID>

        (c)查找dockerd進程  ps -ef | grep dockerd

        (d)殺掉dockerd進程  kill -9 <dockerd服務 pid>

    2、刪除原有IP配置

        (a)查看核心路由表  ip route

        (b)刪除docker0 ip及網關設備  ip link set dev docker0 down

    3、修改docker配置文件 /etc/docker/daemon.json中的bip配置

        修改為用不到的網段,如 192.168 網段

        {

           "bip":"192.168.0.1/24"

        }

    4、重啟docker服務  dockerd &

    5、再次檢查核心路由表  ip route

    6、ping 172.17網段服務器檢查

 

 

查找資料時發現還有另外一種 docker_gwbridge 網卡集群沖突的情況,也是同樣的修改網段的方式解決,詳見 docker網絡沖突解決(修改docker_gwbridge網段

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM