Have a Question?

如果您有任务问题都可以在下方输入,以寻找您想要的最佳答案

网络地址和广播地址怎么求,广播地址的计算公式是什么?

网络地址和广播地址怎么求

题图来自Unsplash,基于CC0协议

导读

  • 如何计算网络地址和广播地址?
  • 网络地址和广播地址的定义是什么?
  • IP地址与子网掩码的关系:如何求网络地址?
  • 广播地址的计算公式是什么?
  • 给定IP地址和子网掩码,求网络地址和广播地址的示例
  • 子网划分中网络地址和广播地址的确定方法
  • 网络地址和广播地址是IP网络中的基础概念,理解它们对于网络规划、排错和维护至关重要。

    网络地址是标识一个特定网络(或子网)的标准地址,该地址不属于任何单个主机,而是用来在路由器上建立路由表,指示该网络的接口位置。广播地址是网络中的一个特殊地址,它的报文会被同一物理网络(或子网)上的所有主机接收和处理。简单来说,网络地址是“这个网络是谁”的问题,广播地址是“这个网络里面大家都在听”的信号。

    求解网络地址是关键的第一步。

    IP地址与子网掩码的关系:如何求网络地址?

    IP地址由网络部分(Net ID)和主机部分(Host ID)构成。在传统的分类IP地址(如A类、B类、C类)中,IP地址的网络部分是固定的(A类为第一个字节,B类前两个字节,C类前三字节),但现代网络主要使用子网划分和可变长子网掩码(VLSM)以及无类别域间路由(CIDR),网络部分与主机部分的分割可以通过子网掩码来定义。

    一个子网掩码通常是另一个32位的数字,与IP地址同等级别。在32位掩码中,连续的1代表网络部分,从第一个0开始连续的0代表主机部分。可以通过将IP地址与子网掩码进行按位AND运算来计算网络地址:

    1. 准备IP地址和子网掩码: 确认并写出IP地址和要使用的子网掩码。
    2. 将它们转换成二进制形式: 这是最准确的方法,但这一步在手动计算时非常繁琐。
    3. 进行按位AND运算:
      • 将IP地址的每个二进制位与子网掩码对应位置的位进行比较。
      • 如果子网掩码对应位置的位是1,那么对应的IP地址位会保留到结果中。
      • 如果子网掩码对应位置的位是0,那么对应的IP地址位会在结果中变为0。
      • 这个按位AND运算的结果就是网络地址。

    示例:以下是一个求网络地址的标准计算过程:

    给定IP地址和子网掩码,求网络地址和广播地址的示例

    让我们通过一个例子来更具体地理解和展示如何操作:

    1. 案例一(C类地址,默认子网掩码):

      • 目标:给你一个IP地址 192.168.1.10,默认情况下没有子网划分的情况,找到它的网络地址和广播地址。
      • 步骤:
        1. 确定默认子网掩码: C类地址的默认子网掩码是 255.255.255.0。
        2. 将IP地址和掩码转为二进制:
          • 192.168.1.10: 192 -> 11000000 168 -> 10101000 1 -> 00000001 10 -> 00001010 (完整为:11000000 10101000 00000001 00001010)
          • 255.255.255.0: 255 -> 11111111 255 -> 11111111 255 -> 11111111 0 -> 00000000 (前24位是1,后8位是0)
        3. 计算网络地址: 将IP地址和子网掩码各8位进行分组,做逐级AND运算。
          • 第一组 (192 & 255 = 192)
          • 第二组 (168 & 255 = 168)
          • 第三组 (1 & 255 = 1)
          • 第四组 (10 & 0 = 0)
          • 所以网络地址是 192.168.1.0
        4. 计算广播地址: 网络地址是确定网络范围的起点,广播地址则是终点,为便于区分范围内的所有地址,关键在于识别网络地址的广播形式。广播地址是在网络地址的基础上,将其主机部分全部置为1得到。
          • 将网络地址 192.168.1.0 分解为网络部分(前三字节,192.168.1)和主机部分(后一节,0)。
          • 将主机部分全置为1:0 置为 255 得到广播地址:192.168.1.255。整个计算过程可以表达为:网络地址 + (2^(主机位)) - 1。
    2. 案例二(带子网划分):

      • 目标:给你一个IP地址 192.168.1.0 带子网掩码 255.255.255.224(相当于 CIDR /24?不,224是11100000二进制,即8位中的27位1,255对应8位全1,所以掩码是 7字节全1加上最后一节写的是224即11100000,实际上是/24吗?不对。默认C类是24位,而255.255.255.224 是前27位1,所以 CIDR 记作/27`)
      • 子网划分:掩码255.255.255.224表示最后一跳的主机部分被划分,主机部分从原来C类的8位变成了27位网络,所以有一部分主机位被借用来作为新的子网位。最后一跳的224是二进制11100000,即借了3位用于子网划,因此,每个子网的可容纳主机数量为原来的指数减少,计算子网时,共有 2^3=8 个子网。
      • 计算过程:
        1. 子网掩码二进制: 255.255.255.224 -> 11111111.11111111.11111111.11100000
        2. IP地址二进制: 192.168.1.0 -> 11000000.10101000.00000001.00000000
        3. 网络地址:
          • 第一组 (11000000 & 11111111 = 11000000 -> 192)
          • 第二组 (10101000 & 11111111 = 10101000 -> 168)
          • 第三组 (00000001 & 11111111 = 00000001 -> 1)
          • 第四组 (00000000 & 11100000 = 00000000 -> 0)
          • 网络地址:192.168.1.0
        4. 广播地址:
          • 网络地址是 192.168.1.0,它实际上覆盖了从 .0.31 的某个范围?不,不对,子网掩码 /27 表示每个子网的主机部分有5位,所以每个子网以 .0 开始,到 .31(5位全1,但实际判断时,广播地址按置1部分计算)。但由于子网划分,实际的网络地址取决于划分点后的结果。从 mask 是 .224,所以广播地址是把主机位全置1,最后一节:.0 后,补足5个0,但是 broadcast 只将host bits(即 subnet mask 中最后5个0)置为1,所以 .224 置的是是从左边起借出了3位(左边是高位,所以有7位1和5位0)-> 关键是,IP是192.168.1.,也就是第三字节是1,而 mask .224 表示借用最后3位 -> 所以 host bits 是5位,因此广播地址应该是 192.168.1. (0 -> 原IP的最后一字节的主机动部分,即1的最后三位是0(因为27位mask相当于24位+3位subnet bits,所以 host 5 bits 在subnet bits之后) ),更准确地说,mask 255.255.255.224 使最后一节的网络部分变成高位3位标识了子网,所以广播地址是把除了mask的3个1位后的5位(即host bits)全置1。
          • 最后一字节的二进制:由于 mask 224 (11100000),所以前3位(借出来的subnet bits)是固定的,而 host bits 是后面的5位。在计算广播地址时,将所有host bits置1,不管subnet bits是啥。
          • 对于网络地址 192.168.1.0,因为是每个子网开头的,其对应的广播地址应为其所在网络的最大地址。由于子网掩码是 /27,每个子网的IP范围是 .0.31(5个比特,255的二进形式 11111111 去掉前3位(对应于子网)则后5位从0到31,即00000 到 11111)。
          • 所以对于这个特定子网,广播地址是 192.168.1.31
      • 进一步细分:
        1. 这个网络被划分为8个更小的子网(因为有3比特用于隔离子网)。
        2. 每个子网可以容纳2^5 - 2 (因为网络地址和广播地址不能作为主机地址) 个主机,即30个主机。
        3. 例如,第一个子网使用 .0.31
        4. 第二个子网使用 .32.63,因为他处的广播是 .63

    子网划分中网络地址和广播地址的确定方法

    当你已经有了IP地址和子网掩码,无论是默认掩码还是用户定义的子网掩码,计算方法都是一样的:通过将两者进行按位AND逻辑与运算,并正确理解掩码定义的网络和主机部分,就可以得到网络地址。

    广播地址的计算总是基于网络地址再加上主机部分全1。计算技巧是:

    • 将子网掩码转换为CIDR前缀长度。
    • 在网络部分全1,主机部分全0,也就是网络地址。
    • 广播地址就是网络地址中主机部分全1。计算广播地址的方法类似,只不过此时将主机部分应用逻辑OR与全1的操作。
    • 快速心算:广播地址可以用.255.255.255来算估,但是最好准确计算。 如 C类,掩码 255.255.255.0,广播就是 .255;对于另外的数字,可以通过二进制方法,或利用“全零是网络,全一是广播”的规则。

    理解网络地址和广播地址的计算原理,对于理解更大的网络概念,如CIDR、VLSM、路由聚合等都非常关键,并且是高级网络配置的基础。实际应用中,转换到二进制进行binary AND和binary OR计算是手动操作的核心,但现在日趋使用网络计算器或脚本来辅助完成。确保每当你设置一个IP地址时,理解它属于的子网以及其广播域的范围,有助于更好地管理网络和排查问题。

    © 版权声明

    本文由盾科技原创,版权归 盾科技所有,未经允许禁止任何形式的转载。转载请联系candieraddenipc92@gmail.com