docker 容器如何能够访问和宿主机不在同一网段的机器上提供的服务?

发布于 2022-09-11 21:00:20 字数 696 浏览 17 评论 0

  1. 本地有一台宿主机 网段是 192.168.1.0/24
    1.1 假设本机IP是192.168.1.12
  2. 宿主机启动了docker容器,解析php,网段是 172.28.0.1/24
    2.1 容器IP是 172.28.0.4
  3. 在同一个局域网不同的网段192.168.10.0/24有台机器提供redis服务
    3.1 服务ip是 192.168.10.244
  4. 通过VPN将本地局域网A和远端局域网B连起来,局域网B处于192.168.3.0/24,同时也有台机器提供redis服务
    4.1 服务ip是192.168.3.195

问题:
我通过容器连接局域网A提供的redis服务,连接不上 配置的连接redis的地址为 192.168.10.244
通过容器连接局域网B提供的redis服务,可以连接上,前提VPN连接上 192.168.3.195

在容器中curl 192.168.10.244 可以正常返回

我该如何配置能够在容器中连接上局域网A提供的redis服务呢?
谢谢!!!

补充,容器需要连接redis服务(外部服务),本身不提供服务,所以我认为应该不需要开放某些端口,除了自身执行解析服务的端口
我在想是否是因为容器和局域网A提供服务的主机不在同一个网段导致的,但是在容器内curl 192.168.10.244是可以访问到的,实在是没想通,请各位大神们提个招。感激不尽!!!

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文