通过docker通过vpn进行正常运行时间监控-无法从容器访问服务

通过docker通过vpn进行正常运行时间监控-无法从容器访问服务

我有以下设置:

  • 我有安装了docker的VPS。假设它有IP100.0.0.1
  • 我有一个托管 wireguard 安装的 docker 容器,它位于“wireguard”docker 网络中,并具有固定 IP 地址172.43.0.1
  • 我有一个托管正常运行时间监控解决方案的 docker 容器。它位于同一个“wireguard”docker 网络中,固定 IP 地址为172.43.0.100。它有一个静态路由到192.168.200.0/24 via 172.43.0.1
  • VPN 使用192.168.200.0/24
  • 我有两个 VPN 客户端,我的 Mac192.168.200.2在 :8000 上运行一个简单的 http echo 服务器,我的 iPhone ( 192.168.200.3) 在测试时没有连接到我的 wifi

以下事情有效:

  • 我的 iPhone 可以通过 VPN 访问 Echo 服务器
  • wireguard docker 容器可以通过 VPN 访问 echo 服务器
  • docker 主机可以通过 VPN 访问访问服务器
  • 正常运行时间监控容器可以ping 192.168.200.2并得到响应
  • Mac 可以ping 172.43.0.100(正常运行时间容器)并得到响应

什么不起作用:

当我curl http://192.168.200.2:8000在正常运行时间监控容器内运行时,(或telnet 192.168.200.2 8000)无法建立 TCP 连接(它会一直等待然后超时)

我已经检查过的内容:

  • 主机有防火墙,但我已将其禁用以进行测试
  • vpn 容器有防火墙,但它接受所有
  • MTU 在所有地方均为 1500

有什么想法我还能做些什么来解决这个问题?我的目标是在私有网络中有一些服务,我只能通过 VPN 访问这些服务,我想监控它们的状态

相关内容