VPN 背后的 Docker

VPN 背后的 Docker

当我在 Ubuntu 16.04 笔记本电脑上启动公司 VPN 时,我得到了一堆静态路由。其中包括 172.26.0.0/16(我在 kern.log 中检查了这一点,当我运行路由时它也会显示出来)。这在大约一周内运行良好,但突然它停止工作了。

由于某种原因,我可以 nslookup IP 地址,但 ping(或 traceroute 或 dig)返回“未找到主机”错误。

如果我通过 nm-applet 在 VPN IPv4 设置中将路由作为静态路由输入,然后重新启动 VPN,那么我确实可以 ping 通服务器并且可以成功 ping 通。

然而,这似乎会杀死我完成工作所需运行的所有 docker 镜像的网络功能,而之前这些功能运行良好。

我尝试重新安装用于连接 Cicso AnyConnect 服务器的 openconnect 包,但仍然无法运行。

我在网上搜索了一段时间,找到最接近的匹配是这个帖子Ubuntu 18.04 突然无法访问 VPN 网络上的资源?不用说,这几乎不会带来任何安慰。我尝试了@crip659 提供的解决方案,但对我来说不起作用。

我真的希望有人能阐明这一点。

编辑

这可能是因为我的 docker0 网桥的 IP 地址与其中一个静态路由的 IP 范围相吻合吗?

答案1

所以我解决了这个问题。

显然,问题确实是 docker0 网桥和其中一条静态路由中的 IP 范围之间的 IP 冲突。

我已经尝试为 docker0 网桥分配一个新的 IP 地址,通过输入命令插入“bip”条目sudo nano /etc/docker/daemon.json并编辑文件使其看起来与此有些相似。

{
    "bip":"171.2.2.0/8"
}

但我尝试过的所有其他地址都sudo systemctl restart docker失败了。

我不知道(现在仍然不知道)该选择哪个 IP 地址,所以171.2.2.0/8我认为这只是个侥幸猜想。也许以后会造成问题,但那是另外一回事了。

相关内容