1

主机1: 10.10.0.1

主机2: 10.10.1.2

掩码是两者:255.255.255.0

如何将数据包从主机 1 发送到主机 2?

4

3 回答 3

4

将主机 1 的默认网关设置为同时在 10.10.0/24 网络和 10.10.1/24 网络上的网关机器。然后在网关机器上启用 IP 转发。

除非它们真的在同一个物理网络上,否则您不能直接发送数据包。如果它们位于不同的物理子网上,您会将数据包发送到哪个 MAC 地址?没有一个——因为主机 2 不在同一个物理网络上——这就是你将它发送到网关的原因。

如果主机 1 和主机 2 在同一个物理网络上,那么您不是在寻找通用解决方案。在这种情况下,您可以发送一个 ARP 请求,然后将数据包发送到您从中获得回复的 MAC 地址,然后它将到达主机 2——与 TCP/IP 数据包通常通过以太网发送到同一网络上的主机的方式相同。

于 2009-10-21T15:26:24.467 回答
0

在您的 PC 或路由器上,您可以添加到其他网络的路由。因此,如果您想要从您的 PC 或网络上的特定端口路由,您可以添加一个路由,该路由指定寻址到该目标网络/主机的所有数据包都从您选择的特定接口发送出去。

自然,到达目的地的数据包也依赖于返回的路由,因此您需要为每个方向添加一个。

在 Windows 中,您可以使用命令在命令行上执行此操作route。键入route ?以获取详细信息。

例如,在 Allied Telesis 网络路由器上,add ip route如果您有权访问路由器的配置,则可以使用该命令。

如果您可以提供您正在使用的系统和布局的示例,我们可能会提供更多信息,使您使用起来更加简单。

于 2009-10-21T15:54:08.157 回答
-1

如果你能弄明白——两台计算机都在不同的子网上。

在 IP 和掩码上执行“逻辑与:”:

第一次给出 - 10.10.0.0,第二次给出 - 10.10.1.0。这两个是子网的网络地址。您需要将数据包发送到另一个子网的路由器,以便它可以被传递

OTOH,你能说出这种情况到底是在哪里出现的吗?了解现实世界的场景可以帮助我们更有效地解决问题

路由

如果您想对路由有充分的了解,那么您可能需要查看新闻组 comp.os.linux.networking处理路由的回复

于 2009-10-21T15:25:43.387 回答