这两天刚开始学习docker,在安装完docker之后,突然发现xshell里的远程连接断开了。
一开始以为又是ubuntu休眠之后自动断开,重启ubuntu,尝试无果。思考是不是ip地址自动更换问题导致的,故尝试ping服务器地址,发现ping不通。ifconfig之后发现多了个“docker0”,并且docker的桥接网段:172.17.0.1。
猜测是因为安装docker后多出的网桥的地址问题导致网段冲突,从而使xshell远程连接失败,开始着手修改docker桥接网段来解决连接失败的问题。
步骤
(1 停止docker服务
ps -e | grep docker #查看docker是否在运行,在运行的话先关闭docker服务
sudo service docker stop
(2 删除原有网桥配置
sudo ip link set dev docker0 down # 关闭网卡
sudo brctl delbr docker0 # 删除该网卡
sudo iptables -t nat -F POSTROUTING #删除源地址转换
(3 配置新的网桥
sudo brctl addbr docker0 # 创建新的网桥
sudo ip addr add 172.20.20.20/24 dev docker0 # 给该网桥配置地址
sudo ip link set dev docker0 up # 启动该网桥
(4 配置docker的daemon文件
sudo vim /etc/docker/daemon.json
将之前配置的新的网桥地址复制粘贴进去
{
"bip": "172.20.20.20/24"
}
(5 重启配置文件和docker服务
sudo systemctl daemon-reload # 重载配置文件
sudo service docker start # 重启docker服务
至此,服务器ping的通了,xshell也重新连接成功,问题解决,大功告成!