设备 -> 设备流量在网络内部被阻止

设备 -> 设备流量在网络内部被阻止

我遇到了一个奇怪的问题,我花了几个小时试图理解并修复它。

我有三台主机,设置如下:

  • M1:Raspberry pi 3(raspbian lite),运行 caddy 作为反向代理/静态 Web 服务器。Caddy 使用标志在 docker 内部运行--network host。此设备为非常小的静态网站提供服务,并将流量重定向到 M2 和 M3。这是唯一暴露在互联网上的设备。
  • M2:小型服务器(Ubuntu 18.04),用于部署客户端应用程序和其他内容。所有应用程序都使用 docker 部署,流量来自 M1,并转发到此机器
  • M3:运行 Plex 和其他日常应用程序的小型服务器,我需要从外部访问这些应用程序。同样,所有流量都来自 M1,并重定向到这台机器(一台旧笔记本电脑)

我遇到了一个问题,M1 无法访问 M2 和 M3。首先,重定向不起作用,即当我尝试访问 M2 和 M3 上的数据时,我得到的是空白页。如果我尝试使用简单的从 M1 访问 M2 或 M3 curl,我无法连接到它们中的任何一个,并出现以下错误:curl: (7) Failed to connect to <M2> port 7000: No route to host.

尝试从 M2/M3 访问托管在 M1 上的网站可以正常工作,但访问其他任何网站(即简单的 REST 服务器)都会返回与之前相同的问题,即错误No route to host

这些是我尝试过的事情:

  1. 在所有机器上禁用防火墙:没有运气,与以前的问题相同
  2. 禁用路由器上的防火墙:再次失败
  3. 关闭非必要服务:不起作用

我还安装了 WireGuard私网虚拟专用网络一切安装正确,但还是发生了同样的事情。握手成功,IP 显示为来自家里的 IP,但流量并没有真正转发,因为当我尝试访问路由器的管理面板时,它不起作用。

似乎有什么东西阻止了设备访问网络上的其他设备。除了禁用所有不同的防火墙外,不幸的是我不知道该怎么做。有人知道这可能是什么吗?

答案1

没有到主机的路由意味着 M1 服务器在其路由表中没有 M2 和 M3 的条目。

可能出现的问题:

  • M1 上没有配置通往 M2 和 M3 的默认网关(或静态路由)
  • M1 和/或 M2 和/或 M3 上的网络配置错误(即子网掩码错误)

检查 M1、M2、M3 上的路由表和网络设置:

路由表命令:

  • 路由
  • 网络状态监测

网络设置命令:

  • IP地址
  • 是否配置

答案2

最后,我确认所有问题都来自我的路由器。重新启动解决了我遇到的所有问题。我尝试禁用防火墙规则、更改网络配置等,最后重新启动解决了所有问题。我现在正在与我的 ISP 联系以获取新的。感谢大家的帮助

相关内容