gpt4 book ai didi

networking - 网络和子网

转载 作者:行者123 更新时间:2023-12-03 09:57:19 24 4
gpt4 key购买 nike

IP地址为C类的计算机(例如192.168.0.1和子网掩码255.255.255.0)可以与另一台IP地址为192.168.1.1和相同子网掩码255.255.255.0的计算机进行通信并共享资源吗?我问这个问题是因为在这种情况下,前3个八位位组告诉我们这些IP运行在不同的网络(网络192.168.0.0和网络192.168.1.0)上。
另外,在这种情况下,“网络”与“子网”(或“子网”)的含义相同吗?
谢谢!

最佳答案

为了完全理解计算机网络的工作方式,您需要看一下OSI模型(或者实际上是TCP/IP或DoD模型。对于您的问题,您需要看一下前三层:物理层,数据链路层和网络层)。

物理连接是不言自明的,代表通过某种介质(铜,玻璃,空气)的直接连接。

当主机A尝试向主机B发送数据包时,它要做的第一件事就是查看目标IP地址,并根据其自身的IP配置确定主机B与主机A是否在同一子网中。 Rieck已经向您解释了:子网掩码位用于掩码IP地址的位(逻辑与操作)。现在,我们有两种情况:

  • 主机A和B在同一子网中。
  • 主机A和B不在同一子网中。

  • 您应该注意,在网络适配器用来发送和接收帧的第2层上,没有IP地址(第3层上存在),但是设备之间的通信是使用MAC地址完成的。因此,主机只能直接与其子网中的主机通信(第一种情况)。为了发送帧,主机A需要主机B的MAC地址。因此,主机A首先在其ARP表中查找映射到主机B的IP地址的MAC地址。如果他找不到它,它将发送广播ARP请求,询问子网上具有该特定IP的所有主机。如果他得到响应,它将添加他从中得到答复的主机的MAC地址,并使用该主机的目标MAC地址和该主机的IP地址构建一个数据包。

    如果两个主机都不在同一子网中(第二种情况),则将数据包发送到默认网关,该网关负责查找到目标的路由。此处要说明的关键一点是,即使在这种情况下,目标MAC地址是路由器(默认网关)的MAC地址,如在第一种情况下一样,目标IP地址仍然是主机B的IP地址。当数据包从一个路由器流到另一个路由器时,源和目标MAC地址将改变,因为它们在本地很重要,但是源IP和目标IP地址将保持不变。这就是每一层为上层提供服务(可以这么说)的方式,上层透明地使用它,而无需知道下面发生了什么。

    所以你有了:

    第一种情况。
    ----------------
    L2:
    Src MAC: host A
    Dst MAC: host B
    ----------------
    L3:
    Src IP: host A
    Dst IP: host B
    ----------------

    第二种情况:
    ----------------
    L2:
    Src MAC: host A
    Dst MAC: router
    ----------------
    L3:
    Src IP: host A
    Dst IP: host B
    ----------------

    总结一下(@Eugen Rieck的回答已经给您了):

    与您的示例不在同一子网中的两个主机(192.168.0.1/24和192.168.1.1/24)将无法在第2层进行通信,并且需要具有L3功能的设备(例如路由器)充当默认网关,并在两个网络(广播域)之间路由流量以实现第3层连接。

    关于networking - 网络和子网,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17960038/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com