也许我从根本上误解了一些东西,但这根本行不通。我处理的网络看起来像(路由器 > 防火墙 > 交换机 > 主机),还有一些端口转发规则。
在我看来,每个设备(由于不受管理,所以不包括交换机)都会有一个 IP 来识别它,但事实似乎并非如此。
为简单起见,我们假设路由器的 IP(在 ISP 的大型网络上标识它的公共 IP)为 1,防火墙的 IP 为 2,示例主机的 IP 为 3。
当设置端口转发时,我希望将 1 转发到 2,然后将 2 转发到 3,并且要从 3 访问 1 和 2 上的 Web GUI,我只需输入 1 或 2 的 IP。
但是有一种叫做默认网关的东西...我理解它是主机预期发送出站数据包的目标 IP,但如果是这样的话,为什么它不只是 2 呢?
答案1
从概念上讲(在大多数情况下),防火墙只是路由器和主机之间的 IP 地址过滤器。
它拥有 IP 地址的唯一原因是您可以访问其管理接口。
系统中的主机甚至不知道它在那里(它们也不关心)。就它们而言,路由器(== 默认网关)处理出站流量。
在大多数 SOHO 部署中,路由器和防火墙实际上是单个设备(防火墙是路由器本身的功能),具有组合管理接口和单个 IP 地址。
答案2
默认网关与出站流量有关。它类似于网络掩码。
假设您的计算机有 192.168.0.100。网络掩码为 255.255.255.0,默认网关为 192.168.0.1。
现在您的计算机想要连接到 IP“X”。通过在该地址上应用网络掩码并将网络掩码应用于您的 IP,现在可以确定是否可以直接到达“X”(只需将数据发送到本地交换机/集线器/路由器(通常也充当交换机))或是否必须将数据发送到网关地址,然后网关地址就知道将数据包发送到何处才能到达该地址。
假设“X”是 192.168.0.5。如果将掩码应用(按位“AND”)到它,则得到192.168.0.0
如果将掩码应用到您自己的 IP,则还会得到192.168.0.0
。这两个是相同的。因此,另一个 IP 是本地的,不需要通过网关。
现在假设“X”是 123.123.123.123。再次应用掩码,我们得到123.123.123.0
。将其与192.168.0.0
(应用掩码后的我们自己的 IP)进行比较,表明两者并不相同。因此,必须将数据包发送到默认网关(192.168.0.1),该网关知道将数据包传递到哪里才能到达 123.123.123.123。