![给机器添加路由是否可以使机器从外部可访问?](https://linux22.com/image/677615/%E7%BB%99%E6%9C%BA%E5%99%A8%E6%B7%BB%E5%8A%A0%E8%B7%AF%E7%94%B1%E6%98%AF%E5%90%A6%E5%8F%AF%E4%BB%A5%E4%BD%BF%E6%9C%BA%E5%99%A8%E4%BB%8E%E5%A4%96%E9%83%A8%E5%8F%AF%E8%AE%BF%E9%97%AE%EF%BC%9F.png)
我的网络团队的人员在使我们的一台新服务器从外部访问时遇到了问题。
由于某种原因,他们要求我们将服务器放在 192.168.222.0/24 上的 VLAN 中,然后对它们进行 NAT,以便可以从外部访问它们。这是一个已有多年历史的方案,通常不会有问题。
然而,目前我们遇到的问题在于两台新服务器中的一台 - 我们称之为 servA。这台服务器可以访问我们想要的(或允许的)任何网络,但除了 192.168.222.0/24 之外,其他网络都无法访问它。
有趣的是,他的姊妹服务器(我们称之为 servB)是并行构建的,完全没问题,NAT 正在运行(就像许多其他服务器一样)。由于我们主要采用自动部署方法,servA 和 servB 之间的唯一区别是其 /etc/network/interfaces 中输入的 IP 地址(这些是 Debian 框)。
我尝试转换两台机器所连接的交换机上的插孔,但没有成功(即 servB 保持正常,而 servA 仍然无法访问)所以这似乎将端口配置问题放在一边。
我最终关闭了 servB 并使用 servB IP 地址启动了 servA,结果:它成功了!
我告诉网络人员,在我看来,这显然表明他们的设备存在问题,但他们坚持让我在 servA 上测试这个或那个。他们只是要求我在 servA 的路由表中添加一些路由。由于我别无选择,我这样做了,但正如我所料,没有成功。我目前正在等待他们关于这次测试的答复。
鉴于此,我向各位网络专家提出以下问题:
- 问题真的出在 servA 上吗?
- 是否可能仅通过向 servA 添加一条路由就能解决此问题?
据我理解添加路由的含义,这可能有助于 servA 到达某个主机或网络,但应该不会影响从外部访问 servA;我说的对吗?
提前致谢,
菲普
答案1
- 问题可能不在于服务器 A。由于更改交换机端口没有成功,所以问题可能不在于交换机端口 - 尤其是因为使用服务器 B 的原始 IP 地址,您可以通过原始交换机端口连接到服务器 A。
- 听起来更像是 NAT/防火墙问题,所以我不确定添加路由会有什么作用 - 除非该路由存在于服务器 B 上而不存在于服务器 A 上。由于服务器 A 可以使用服务器 B 的 IP 地址,因此添加路由似乎是一种奇怪的故障排除方法。由于这是一个 NAT 环境,您对从外部进入的流量的假设基本上是正确的 - 除非出口和入口流量有不同的入口和出口点。
答案2
事实上,如果你更改 IP,它就会起作用,这表明问题很可能出在网络人员方面。
至于路由,任何网络通信都是双向的:请求/应答。但服务器不知道请求走哪条路径,它会根据自己的路由表发送应答。
这意味着如果一台机器联系服务器 A(即从外部联系到服务器 A),服务器 A 必须知道将响应发送到哪里。因此,在某些特定情况下,添加路由可能会有所帮助。
根据您的描述,我怀疑这是服务器 A 上的路由问题。
网络人员是否要求服务器 A 的路由表或执行跟踪路由?