Ipv4 路由 - 2 个不同的网络主机在同一个集线器中相互 ping

网络工程 路由 路由器 IPv4
2022-03-02 21:11:22

看看这个场景。

主机 1:IP:192.168.0.1 掩码:255.255.255.0 网关:未定义

主机 2:IP:192.168.1.1 掩码:255.255.255.0 网关:未定义

是否可以从主机 1 ping 到主机 2?假设两者都连接在同一个集线器上。

我在数据包跟踪器中尝试过,但没有工作,这是正常的还是配置错误?如果它是一个开关?网络之间的路由必须使用路由器吗?

4个回答

当它的主机要发送 IP 流量时,它首先检查目标 IP 地址是否在本地子网上。它使用它的 IP 地址和子网掩码来做出这个决定。

如果目标 IP 不在本地子网上(您的情况),则主机会检查其路由表中是否有到目标 IP 的路由。通常,大多数主机只有一个路由,即默认路由或网关,为任何其他网络提供转发流量的位置(禁止到目标 IP 的任何更具体的路由)。

在您的情况下,如果没有配置网关,主机将确定它不知道如何到达目标 IP。这意味着它无处可发送流量,导致流量被丢弃,同时通常会返回诸如“No Route to Host”之类的错误。

是否可以从主机 1 ping 到主机 2?假设两者都连接在同一个集线器上。

是的。但是您必须在每台主机上添加到另一个网络的路由。就目前而言,网络上有两个网络,但每个主机只知道它们所在的网络。

在 Linux 上,假设 eth0 是您的接口:
(host 1) ip route add 192.168.1.0/24 dev eth0
(host 2)ip route add 192.168.0.0/24 dev eth0

(在寡妇中也可以这样做,但您必须知道接口编号。)

是否可以从主机 1 ping 到主机 2?假设两者都连接在同一个集线器上。

使用 Cisco 路由器时,您可以在同一个集线器上 ping 主机 1 和 2。但是没有路由器,您将无法通信。因为对于两个不同的 ip,我们希望将它们放在一个网络或一个网关 ip 中。为此,我们想使用路由器。如果我们在单个交换机或集线器中使用两个不同的网络,它们的 ip 将一次又一次地冲突。这样就无法通信。

它们位于不同的网络(192.168.0.0/24 和 192.168.1.0/24)上,因此为了进行通信,您必须将其中一个 IP 更改为与另一个位于同一网络上,或者在其间放置一个路由器他们。

简而言之,子网掩码让客户端知道哪些地址是本地的,哪些是远程的。因此,掩码为 255.255.255.0 的 192.168.0.1 可以与 IP 介于 192.168.0.2 和 192.168.0.254 之间的任何其他设备进行通信。如果您要将子网划分为较小的网络*,则 IP 地址为 192.168.0.1 且掩码为 255.255.255.248 只能通过 .6 与 192.168.0.2 通信,并且需要一个路由器来与例如 192.168.0.10 通信.

*192.168.xy 地址不能超网到更大的子网掩码,例如 255.255.0.0,但这是另一个讨论。