100-广播

1. 引言

在学习前面的 IPv4 地址的时候,你就已经注意到,有些地址被称之为广播地址(主机号全1),还有一类地址称为组播地址(D类地址)。

从这一篇开始,我们需要做大量实验来学习广播。听起来很简单,但实际上没那么容易。

2. 广播的基本概念

按照协议层次来分

  • 第 2 层广播,即链路层广播,这种广播不会穿越路由器。因此你会经常听到,路由器隔离广播域。(交换机隔离冲突域。)

  • 第 3 层广播,也就是我们要讲的。这一层的广播地址,是指 IP 地址中主机号为全 1 的 IP 地址。

广播有什么用?简单粗暴的理解就是,如果目的地址是广播地址,则把该数据报发送给所有该网络上的主机。

3. 广播分类

我们要讲的都是 3 层广播。

广播分为 4 类:

  • 受限的广播(也有叫本地广播):它的 IP 地址是 255.255.255.255. 在任何情况下,路由器都不会转发目的地址为 255.255.255.255 的数据报。这样的数据报只会出现在发送者所在的网络中。

  • 指向网络的广播:对于不划分子网的主机来说,指向网络的广播地址是主机号全 1 的地址。路由器根据配置来决定要不要转发这种广播。

  • 指向子网的广播:广播地址是主机号(hostid)全 1,同时指定了某个子网号(subnetid)的 IP 地址。比如上一篇博文中的例子,发往 192.168.166.16/28 这个子网的广播地址为 192.168.166.31/28.

  • 指向所有子网的广播:广播地址是主机号(hostid)全 1,子网号(subnetid)全 1. 例如 192.168.166.255/28,这是指向所有子网的广播,这种广播会被路由器转发到所有子网中去(还是得看路由器配置)。

然而,早在之前我就说过,现在基本已经淘汰了 A、B、C类网络的说法,统一采用子网掩码来划分 IP 地址。因此,指向网络的广播指向所有子网的广播这种说法实际上也不存在了。现在,我们只剩下受限的广播和指向子网的广播。

比如:192.168.166.255/24,我们不再说它是指向网络的广播,应该说是指向子网的广播(因为已经没有 A、B、C类地址的概念,因此也并无划分子网的概念,所有的网络都称为子网)。

注意:不再使用子网是指不在 32 位的 IP 地址中指明若干为做 subnetid。而是只有 subnetid 和 hostid。比如地址 192.168.166.4/24,我们就说它的 subnetid 是 192.168.166,hostid 是 4.

4. 示例


这里写图片描述
图1 网络拓扑图,所有网络接口的子网掩码都是 255.255.255.0

在图 1 中,我们看到有 3 个网络,分别是 192.168.1.0/24,192.168.2.0/24,192.168.3.0/24.

接下来,我们从路由器该不该转发广播这个角度来讨论问题。

  • 案例一

假设主机 PC2(192.168.1.99) 往目的地址 192.168.1.255 发送数据,路由器接收到这个数据报后,发现该地址产生于 192.168.1.0/24 网络,目标地址也是 192.168.1.0/24 网络,因此,路由器绝对不会转发这种报文。

  • 案例二

假设主机 PC3(192.168.3.100) 往目的地址 192.168.1.255 发送数据,然而,PC3,路由器 R2 并不知道该地址是否是广播(因为PC3 和 R2 并不认识 192.168.3.100 是哪个网络上的主机,可能是 192.168.0.0/16 上的,也可能是 192.168.3.0/24 上的,谁知道呢?)。

既然这样,PC3 就把它当成是单播往外发就是了,同样 R2 也将其当成是单播往外发吧。最后 R1 收到了目的地址为 192.168.1.255 的数据报,当然 R1 认识它,因为 R1 和网络 192.168.1.0/24 这个网络直连着呢,同时 R1 还发现,这是一个广播地址,因为主机号全 1 呢!这是一个子网定向广播地址

R1 拿到了这个数据报,接下来,就是选择到底要不要把这个广播发送到目标网络上去!具体要取决于配置,默认情况下,路由器是不会发送的。可以通过配置将此功能打开。

在后面的文章中,将使用更多的例子和实验来讲解。

5. 总结

  • 掌握广播的基本概念
  • 广播地址的分类

说明:本文转自blog.csdn.net,用于学习交流分享,仅代表原文作者观点。如有疑问,请联系我们删除~