Networking 如何在不同子网上的两个IP主机之间发送数据包?

Networking 如何在不同子网上的两个IP主机之间发送数据包?,networking,ip,Networking,Ip,主持人1: 10.10.0.1 主持人2: 10.10.1.2 面具既是: 255.255.255.0 如何将数据包从主机1发送到主机2?如果您能理解的话--两台计算机位于不同的子网上 在IP和掩码上执行“逻辑和:”: 第一个给出-10.10.0.0,第二个给出-10.10.1.0。这两个是子网的网络地址。您需要将数据包发送到另一个子网的路由器,以便它可以被传递 奥托,你能告诉我这种情况到底是在哪里发生的吗?了解真实世界的情况可以帮助我们更有效地解决问题 路由 如果您想对路由有充分的了解,则可能

主持人1: 10.10.0.1

主持人2: 10.10.1.2

面具既是: 255.255.255.0

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

如果您能理解的话--两台计算机位于不同的子网上

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

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

奥托,你能告诉我这种情况到底是在哪里发生的吗?了解真实世界的情况可以帮助我们更有效地解决问题

路由


如果您想对路由有充分的了解,则可能需要检查处理路由

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

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


如果主机1和主机2位于同一物理网络上,则您不是在寻找通用解决方案。在这种情况下,您可以发送ARP请求,然后将数据包发送到收到答复的MAC地址,然后数据包将到达主机2-这与TCP/IP数据包通常通过以太网发送到同一网络上的主机的方式相同。

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

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

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

例如,在Allied Telesis网络路由器上,如果您可以访问路由器的配置,则可以使用
添加ip路由
命令


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

是的,我知道它们位于不同的子网上。必须有一种解决方案,让位于不同子网上的两台主机发送数据包,对吗?您能解释一下您在现实生活中面临的情况吗这对我来说,理解和给出答案会更清楚。Mask,我编辑了答案,检查了链接。顺便说一句,你不需要做任何类似的事情。路由器应该使用自己的路由和发现算法以及相关概念自行处理。@Manish Sinha,有些路由器支持跨网络发送数据包的功能子网,但有些不是。所以我需要一个通用解决方案。哦,这不是一个通用解决方案!您所说的“通用”解决方案是什么意思?这就是TCP/IP的设计方式。如果您想将数据包发送到另一个子网,您需要使用路由器或网关。子网之间需要一个路由器。可能存在重复的