【计算机网络】期末考试预习复习|中

作业讲解

转发器、网桥、路由器和网关(4-6)

作为中间设备,转发器、网桥、路由器和网关有何区别?

(1) 物理层使用的中间设备叫做转发器(repeater)。    

(2) 数据链路层使用的中间设备叫做网桥或桥接器(bridge)。    

(3) 网络层使用的中间设备叫做路由器(router)。    

(4) 在网络层以上使用的中间设备叫做网关(gateway)。用网关连接两个不兼容的系统需要在高层进行协议的转换。

在计算机网络中,转发器、网桥、路由器和网关都是用于连接网络的中间设备,但它们在网络模型中的作用和工作层次有所不同:

  1. 转发器(Repeater)

    • 工作在物理层(OSI模型的第一层)。
    • 主要功能是放大和再生信号,以延长网络的物理范围。
    • 不涉及数据的智能处理,只是简单地复制信号。
  2. 网桥(Bridge)

    • 工作在数据链路层(OSI模型的第二层)。
    • 根据MAC地址来转发帧。
    • 可以连接两个或多个网络段,形成单一的广播域。
    • 通过学习MAC地址来构建转发表,以决定数据帧的转发路径。
  3. 路由器(Router)

    • 工作在网络层(OSI模型的第三层)。
    • 根据IP地址来转发数据包。
    • 连接不同的网络,形成多个广播域。
    • 使用路由表来决定数据包的转发路径,可以进行网络地址转换(NAT)。
  4. 网关(Gateway)

    • 工作在网络层以上,通常是应用层(OSI模型的第七层)。
    • 用于连接两个不兼容的网络或系统。
    • 需要在高层进行协议的转换,以实现不同协议之间的通信。
    • 可以提供翻译、协议转换和安全等功能。

IP地址与硬件地址(4-11)

试说明IP地址与硬件地址的区别。为什么要使用这两种不同的地址?

从层次的角度看,物理地址是数据链路层和物理层使用的地址,而IP地址是网络层和以上各层使用的地址,是一种逻辑地址(称IP地址是逻辑地址是因为IP地址是用软件实现的)。

由于世界上已经存在各式各样的网络,它们使用不同的硬件地址,为了互连这些使用不同硬件地址的网络,需要在上层使用一种统一的逻辑地址,即IP地址。因此,当在一个物理网络中进行通信时,要使用该网络网络的硬件地址,而要跨多个网络进行通信时就必须使用IP地址。另外,数据链路层和网络层使用不同的地址,可以保持各层的独立性,底层物理网络可以采用任何技术,并可以支持其他网络层协议(如:IPX、DECnet等)。

IP地址与硬件地址的区别:

  1. 用途:IP地址用于网络层,实现跨网络通信;硬件地址(MAC地址)用于数据链路层,限于局域网内。

  2. 分配:IP地址可动态分配,硬件地址由制造商分配,固定不变。

  3. 层次:IP地址在网络层,硬件地址在数据链路层。

  4. 独立性:不同地址保持网络各层独立,底层物理网络可采用任何技术。

  5. 互操作性:IP地址允许不同硬件地址网络互连,支持多种网络协议。

IP地址分配(4-21)

某单位分配到地址块129.250.0.0/20。该单位有4000台机器,平均分布在16个不同的地点。试给每一个地点分配一个网络地址和子网掩码,并算出每个地点能分配给主机的IP地址的最小值和最大值。

4000台机器,16个地点,平均每个地点250台机器,因此需要分配256个IP。对应的子网掩码/24,每个子网有254个可分配地址。每个地点的网络前缀和主机IP地址的最小值和最大值为: 129.250.0.0/24: 129.250.0.1~129.250.0.254

129.250.1.0/24: 129.250.1.1~129.250.1.254

129.250.2.0/24: 129.250.2.1~129.250.2.254

129.250.3.0/24: 129.250.3.1~129.250.3.254

…………………………………

129.250.15.0/24: 129.250.15.1~129.250.15.254

为了给每个地点分配一个网络地址和子网掩码,并计算出每个地点能分配给主机的IP地址的最小值和最大值,我们可以按照以下步骤进行:

  1. 确定子网掩码:由于每个地点需要至少250个IP地址,最接近的2的幂是256(2^8),这意味着我们需要8位用于主机地址。因此,子网掩码应该是/24(即255.255.255.0),这为每个子网提供了256个IP地址(包括网络地址和广播地址)。

  2. 分配网络地址:原始的网络地址是129.250.0.0/20,这意味着前20位是网络前缀,剩下的12位用于子网划分和主机地址。由于我们需要16个子网,我们可以使用这12位中的前4位来创建16个子网(2^4=16)。

  3. 计算子网地址:从129.250.0.0/20开始,我们可以将前缀增加1来创建第一个子网,然后继续增加直到覆盖所有16个子网。每个子网的网络地址将是前20位加上子网编号的二进制表示。

  4. 计算IP地址范围:每个子网的第一个IP地址是网络地址加1,最后一个IP地址是网络地址加254(因为最后一个地址是广播地址,不能分配给主机)。

下面是具体的计算过程:

  • 子网掩码:/24(255.255.255.0)
  • 子网数量:16
  • 每个子网的IP数量:256

子网划分

  • 129.250.0.0/24: 网络地址,主机地址范围129.250.0.1~129.250.0.254
  • 129.250.1.0/24: 网络地址,主机地址范围129.250.1.1~129.250.1.254
  • 129.250.2.0/24: 网络地址,主机地址范围129.250.2.1~129.250.2.254
  • ...
  • 129.250.15.0/24: 网络地址,主机地址范围129.250.15.1~129.250.15.254

注意:在实际分配中,最后一个子网可能不会完全用完,因为4000台机器平均分配到16个地点,每个地点大约需要250个IP地址,但最后一个地点可能不需要完整的256个IP地址。此外,最后一个子网的网络地址应该是129.250.15.0,而不是129.250.3.0,因为我们需要16个子网,所以最后一个子网的网络地址应该是129.250.15.0。

子网掩码怎么计算得到?

子网掩码的计算基于你想要划分的子网数量和每个子网中所需的主机数量。以下是计算子网掩码的步骤:

  1. 确定所需的子网数量:在这个例子中,有16个地点,所以需要16个子网。

  2. 确定每个子网所需的主机数量:每个地点平均有250台机器,所以每个子网至少需要256个地址(因为256是大于250的最小的2的幂)。

  3. 计算子网掩码

    • 子网数量:2^4 = 16,所以需要4位来表示子网(2^4 = 16,足以覆盖16个子网)。
    • 主机数量:2^8 = 256,所以需要8位来表示主机(2^8 = 256,足以覆盖每个子网至少250台机器的需求)。
  4. 确定网络位和主机位:原始的IP地址块是129.250.0.0/20,这意味着前20位是网络位。由于我们需要4位来表示子网,所以新的网络位将是20 + 4 = 24位。

  5. 构造子网掩码:子网掩码的前24位是1,剩下的8位是0。在点分十进制表示中,这将是255.255.255.0。

  6. 验证子网掩码:子网掩码255.255.255.0在二进制中表示为11111111.11111111.11111111.00000000,这与我们的计算相符,即24位网络位。

  7. 计算每个子网的IP地址范围:每个子网的网络地址是子网掩码应用后的地址,第一个可用的主机地址是网络地址加1,最后一个可用的主机地址是网络地址加254(因为最后一个地址是广播地址)。

例如,对于第一个子网129.250.0.0/24:

  • 网络地址:129.250.0.0
  • 第一个主机地址:129.250.0.1
  • 最后一个主机地址:129.250.0.254

这个过程可以应用于每个子网,只需将网络地址的最后8位递增即可。

IP地址分配(4-24)

有两个CIDR地址块208.128/11和208.130.28/22。是否有哪一个地址块包含了另一个地址?如果有,请指出,并说明理由。

11010000  10000000  ***

11010000  10000010  00011100

要确定两个CIDR地址块208.128/11和208.130.28/22是否有一个地址块包含了另一个,我们需要分析它们的网络前缀和地址范围。

1. 确定网络前缀和子网掩码

  • 208.128/11:这意味着前11位是网络前缀。转换为二进制,前11位是 11010000 10000000,对应的子网掩码是 255.255.224.0
  • 208.130.28/22:这意味着前22位是网络前缀。转换为二进制,前22位是 11010000 10000010 00011100,对应的子网掩码是 255.255.252.0

2. 转换IP地址到二进制

  • 208.128.0.0 的二进制形式是 11010000 10000000 00000000 00000000
  • 208.130.28.0 的二进制形式是 11010000 10000010 00011100 00011100

3. 比较网络前缀

  • 208.128/11 的网络前缀是 11010000 10000000,这覆盖了从 208.128.0.0 到 208.135.255.255 的范围。
  • 208.130.28/22 的网络前缀是 11010000 10000010 00011100,这覆盖了从 208.130.28.0 到 208.130.31.255 的范围。

4. 判断包含关系

  • 208.128/11 的网络前缀完全包含 208.130.28/22 的网络前缀,因为 208.130.28/22 的前11位也是 11010000 10000000,这与 208.128/11 的网络前缀相同。

5. 确定包含关系

由于 208.130.28/22 的地址范围(从 208.130.28.0208.130.31.255)完全在 208.128/11 的地址范围内(从 208.128.0.0208.135.255.255),我们可以得出结论,208.128/11 地址块包含了 208.130.28/22 地址块。

理由

208.128/11 地址块的网络前缀更短(11位),覆盖的范围更广,而 208.130.28/22 的网络前缀更长(22位),覆盖的范围更具体。由于 208.130.28/22 的网络前缀的前11位与 208.128/11 相同,且其地址范围完全在 208.128/11 的范围内,因此 208.128/11 包含了 208.130.28/22

IP地址分配(4-26)

某主机的IP地址是227.82.157.177/20。试问该主机所连接的网络的网络前缀是什么?该网络的网络地址是什么?主机号占多少位?主机号的二进制表示是什么?

网络前缀是:11100011 01010010 1001,或用十进制表示为:227.82.144.0/20。

网络地址是:11100011 01010010 10010000 00000000,或用十进制表示为:227.82.144.0。

主机号占12位,其二进制这表示是:1101 10110001。

要确定两个CIDR地址块208.128/11和208.130.28/22是否有一个地址块包含了另一个,我们需要比较它们的网络前缀和地址范围。

  1. 转换IP地址到二进制

    • 208.128/11 的二进制形式是 11010000.10000000.00000000.00000000,其中11位网络前缀意味着前11位是网络部分。
    • 208.130.28/22 的二进制形式是 11010000.10000010.00011100.00000000,其中22位网络前缀意味着前22位是网络部分。
  2. 确定网络前缀

    • 208.128/11 的网络前缀是 11010000.10000000,这表示前11位是网络部分。
    • 208.130.28/22 的网络前缀是 11010000.10000010.00011100,这表示前22位是网络部分。
  3. 比较网络前缀

    • 208.128/11 的网络前缀是 11010000.10000000,而 208.130.28/22 的网络前缀的前11位也是 11010000.10000000,这意味着208.130.28/22 的网络前缀在前11位上与 208.128/11 相同。
  4. 确定地址范围

    • 208.128/11 的地址范围是从 208.128.0.0 到 208.135.255.255。
    • 208.130.28/22 的地址范围是从 208.130.28.0 到 208.130.31.255。
  5. 判断包含关系

    • 由于208.130.28/22 的地址范围完全在208.128/11 的地址范围内,我们可以得出结论,208.128/11 包含了 208.130.28/22。

理由:208.128/11 的网络前缀覆盖了208.130.28/22 的整个地址范围,且208.130.28/22 的地址范围没有超出208.128/11 的边界。因此,208.128/11 地址块包含了 208.130.28/22 地址块。

地址八位二进制快捷转换方法:

128 64 32 16 8 4 2 1

IP地址分配(4-31)

已知某地址块中的一个地址是140.120.84.24/20。试问该地址块中的第一个地址是什么?这个地址块共包含有多少个地址?最后一个地址是什么?

第一个地址:140.120.80.0。地址块中的地址数是4096个。

最后一个地址:140.120.95.255。

在IP地址分配中,"/20"表示子网掩码有20位是网络部分,剩下的12位是主机部分。这意味着每个子网可以有 212=4096212=4096 个地址,包括网络地址和广播地址。

给定的IP地址是140.120.84.24/20,我们可以通过以下步骤计算第一个地址和最后一个地址:

  1. 确定网络地址:将IP地址的主机部分置为0。对于140.120.84.24,这意味着将最后12位置为0。由于84是二进制的1010100,将其转换为网络地址,我们得到1010100.0111000.00000000.00000000,即140.120.80.0。

  2. 确定广播地址:将IP地址的主机部分置为1。对于140.120.84.24,这意味着将最后12位置为1。由于84是二进制的1010100,将其转换为广播地址,我们得到1010100.0111111.11111111.11111111,即140.120.95.255。

  3. 地址数量:由于子网掩码是/20,这意味着有12位用于主机地址,因此每个子网可以有 2^{12}=4096 个地址。

所以,第一个地址是140.120.80.0,最后一个地址是140.120.95.255,地址块中共有4096个地址。

IP地址分配(4-32)

 某主机的IP地址为140.252.20.68,子网掩码为255.255.255.224,计算该主机所在子网的网络前缀(采用CIDR地址表示法a.b.c.d/x),该子网的地址空间大小和地址范围(含特殊地址)。

140.252.20.64/27

32

140.252.20.64至140.252.20.95

要计算给定IP地址和子网掩码的网络前缀、地址空间大小和地址范围,我们可以按照以下步骤进行:

  1. 确定子网掩码的CIDR表示:子网掩码255.255.255.224转换为CIDR表示法是/27。这是因为224是二进制的11100000,这意味着有27位是网络部分。

  2. 计算网络地址:将IP地址的主机部分置为0。对于140.252.20.68,子网掩码的最后三位(因为224是11100000)是主机部分。将这些位置为0,我们得到140.252.20.64,这是网络地址。

  3. 计算地址空间大小:由于子网掩码是/27,这意味着有5位用于主机地址(32-27=5),因此每个子网可以有 2^{5}=32 个地址。

  4. 计算地址范围:网络地址是140.252.20.64,广播地址是将主机部分全部置为1,即140.252.20.63(因为网络部分是27位,所以最后5位是主机部分,全部置1)。但是,这里有一个错误,正确的广播地址应该是140.252.20.95,因为最后5位(32-27=5)是主机部分,全部置1。

  5. 确定地址范围:第一个地址是网络地址140.252.20.64,最后一个地址是广播地址140.252.20.95。因此,地址范围是从140.252.20.64到140.252.20.95。

综上所述,该主机所在子网的网络前缀是140.252.20.64/27,地址空间大小是32个地址,地址范围是从140.252.20.64到140.252.20.95。

IP地址分配(4-33)

某组织分配到一个地址块,其中的第一个地址是14.24.74.0/24。这个组织需要划分为11个子网。具体要求是:具有64个地址的子网2个;具有32个地址的子网2个;具有16个地址的子网3个;具有4个地址的子网4个(这里的地址都包含全1和全0的主机号)。试设计这些子网。分配结束后还剩下多少个地址?

具有64个地址的子网是:14.24.74.0/26,14.24.74.64/26。

具有32个地址的子网是:14.24.74.128/27,14.24.74.160/27。

具有16个地址的子网是:14.24.74.192/28,14.24.74.208/28,14.24.74.224/28。

具有4个地址的子网是:14.24.74.240/30,14.24.74.244/30,14.24.74.248/30,14.24.74.252/30。

全部256个地址已经分配完毕,没有剩下的地址。

计算过程
 

这个问题涉及到IP地址的子网划分。我们从给定的地址块14.24.74.0/24开始,这个地址块有256个地址(从14.24.74.0到14.24.74.255)。根据要求,我们需要划分出不同大小的子网:

  1. 具有64个地址的子网:/26子网掩码,因为 2(32−26)=642(32−26)=64。需要2个这样的子网。
  2. 具有32个地址的子网:/27子网掩码,因为 2(32−27)=322(32−27)=32。需要2个这样的子网。
  3. 具有16个地址的子网:/28子网掩码,因为 2(32−28)=162(32−28)=16。需要3个这样的子网。
  4. 具有4个地址的子网:/30子网掩码,因为 2(32−30)=42(32−30)=4。需要4个这样的子网。

现在,我们按照这个计划分配子网:

  • /26子网:每个子网有64个地址。

    • 14.24.74.0/26:地址范围14.24.74.0到14.24.74.63
    • 14.24.74.64/26:地址范围14.24.74.64到14.24.74.127
  • /27子网:每个子网有32个地址。

    • 14.24.74.128/27:地址范围14.24.74.128到14.24.74.159
    • 14.24.74.160/27:地址范围14.24.74.160到14.24.74.191
  • /28子网:每个子网有16个地址。

    • 14.24.74.192/28:地址范围14.24.74.192到14.24.74.207
    • 14.24.74.208/28:地址范围14.24.74.208到14.24.74.223
    • 14.24.74.224/28:地址范围14.24.74.224到14.24.74.239
  • /30子网:每个子网有4个地址。

    • 14.24.74.240/30:地址范围14.24.74.240到14.24.74.243
    • 14.24.74.244/30:地址范围14.24.74.244到14.24.74.247
    • 14.24.74.248/30:地址范围14.24.74.248到14.24.74.251
    • 14.24.74.252/30:地址范围14.24.74.252到14.24.74.255

这样,我们分配了:

  • 2个/26子网,共 2×64=1282×64=128 个地址
  • 2个/27子网,共 2×32=642×32=64 个地址
  • 3个/28子网,共 3×16=483×16=48 个地址
  • 4个/30子网,共 4×4=164×4=16 个地址

总共分配了 128+64+48+16=256128+64+48+16=256 个地址,正好用完了整个/24地址块,没有剩余地址。

地址范围开始怎么确定

在IP地址分配中,确定子网的地址范围涉及到子网掩码和IP地址的二进制计算。下面是如何确定每个子网的起始和结束地址的步骤:

  1. 确定子网掩码:子网掩码决定了网络部分和主机部分的位数。例如,/26子网掩码意味着前26位是网络部分,剩下的6位是主机部分。

  2. 计算子网的网络地址:将IP地址的主机部分置为0,得到的就是网络地址。例如,对于14.24.74.0/24,如果我们要创建一个/26的子网,我们将最后6位置为0,得到14.24.74.0/26。

  3. 计算子网的广播地址:将IP地址的主机部分置为1,得到的就是广播地址。例如,对于14.24.74.0/26,广播地址是将最后6位置为1,得到14.24.74.63。

  4. 确定子网的地址范围:子网的地址范围是从网络地址的下一个地址开始,到广播地址的前一个地址结束。例如,对于14.24.74.0/26,地址范围是从14.24.74.1到14.24.74.62。

  5. 为下一个子网分配地址:在分配了第一个子网后,下一个子网的网络地址将是第一个子网的广播地址加1。例如,如果第一个/26子网的广播地址是14.24.74.63,那么下一个/26子网的网络地址将是14.24.74.64。

  6. 重复步骤:对于每个子网,重复上述步骤,直到所有的子网都分配完毕。

以14.24.74.0/24为例,我们可以这样分配:

  • /26子网:每个子网有64个地址(2^(32-26) = 64)。

    • 第一个/26子网:14.24.74.0/26,地址范围14.24.74.1到14.24.74.62。
    • 第二个/26子网:14.24.74.64/26,地址范围14.24.74.65到14.24.74.126。
  • /27子网:每个子网有32个地址(2^(32-27) = 32)。

    • 第一个/27子网:14.24.74.128/27,地址范围14.24.74.129到14.24.74.158。
    • 第二个/27子网:14.24.74.160/27,地址范围14.24.74.161到14.24.74.190。
  • /28子网:每个子网有16个地址(2^(32-28) = 16)。

    • 第一个/28子网:14.24.74.192/28,地址范围14.24.74.193到14.24.74.206。
    • 第二个/28子网:14.24.74.208/28,地址范围14.24.74.209到14.24.74.222。
    • 第三个/28子网:14.24.74.224/28,地址范围14.24.74.225到14.24.74.238。
  • /30子网:每个子网有4个地址(2^(32-30) = 4)。

    • 第一个/30子网:14.24.74.240/30,地址范围14.24.74.241到14.24.74.242。
    • 第二个/30子网:14.24.74.244/30,地址范围14.24.74.245到14.24.74.246。
    • 第三个/30子网:14.24.74.248/30,地址范围14.24.74.249到14.24.74.250。
    • 第四个/30子网:14.24.74.252/30,地址范围14.24.74.253到14.24.74.254。

这样,我们就分配了所有的256个地址,没有剩余。

32个地址的子网 第一个/27子网:14.24.74.128/27

详细地解释一下如何确定具有32个地址的子网的第一个/27子网的地址范围。

  1. 理解/27子网掩码:/27表示子网掩码有27位是网络部分,剩下的5位是主机部分。这意味着每个/27子网可以有 25=3225=32 个地址。

  2. 确定/27子网的网络地址:在原始地址块14.24.74.0/24中,我们已经有了两个/26子网,它们分别使用了前128个地址(14.24.74.0到14.24.74.127)。因此,下一个/27子网的网络地址将是14.24.74.128。

  3. 计算/27子网的广播地址:由于/27子网有5位主机部分,我们将这5位全部置为1来得到广播地址。但是,我们通常不直接计算广播地址,而是通过子网的网络地址和子网掩码来确定地址范围。

  4. 确定/27子网的地址范围:对于14.24.74.128/27,地址范围是从网络地址的下一个地址开始,即14.24.74.129,到广播地址的前一个地址结束。广播地址是14.24.74.159(因为14.24.74.128的主机部分是00000000,将这5位全部置为1得到11111111,即14.24.74.159)。

  5. 计算地址范围:因此,14.24.74.128/27的地址范围是14.24.74.129到14.24.74.158。这里,14.24.74.129是第一个可用的主机地址,而14.24.74.158是最后一个可用的主机地址。14.24.74.128是网络地址,14.24.74.159是广播地址,这两个地址通常不分配给主机。

这样,我们就确定了第一个/27子网的地址范围。接下来的/27子网将从14.24.74.160开始,以此类推。

路由聚合(4-25)

有如下的4个/24地址块,试进行最大可能的聚合。

212.56.132.0/24

212.56.133.0/24

212.56.134.0/24

212.56.135.0/24

132的二进制是: 10000100

共同的前缀有22位,即:11010100 00111000 1000001。

聚合的CIDR地址块是:212.56.132.0/22。

在进行IP地址聚合时,我们的目标是找到可以覆盖所有给定地址块的最小网络。这个过程涉及到找到所有地址的共同前缀。

给定的四个/24地址块是:

  • 212.56.132.0/24
  • 212.56.133.0/24
  • 212.56.134.0/24
  • 212.56.135.0/24

首先,我们将这些地址转换为二进制形式,并找出它们的共同前缀。

  1. 212.56.132.0 的二进制形式是:

    • 212: 11010100
    • 56: 00111000
    • 132: 10000100
    • 0: 00000000
  2. 212.56.133.0 的二进制形式是:

    • 212: 11010100
    • 56: 00111000
    • 133: 10000101
    • 0: 00000000
  3. 212.56.134.0 的二进制形式是:

    • 212: 11010100
    • 56: 00111000
    • 134: 10000110
    • 0: 00000000
  4. 212.56.135.0 的二进制形式是:

    • 212: 11010100
    • 56: 00111000
    • 135: 10000111
    • 0: 00000000

接下来,我们比较这些二进制数,找出共同的前缀。从最高位开始,我们可以看到前22位是相同的:

  • 11010100001110001000001

这意味着我们可以将这四个/24地址块聚合为一个/22地址块。/22表示前22位是网络部分,剩下的10位是主机部分。

因此,聚合后的CIDR地址块是 212.56.132.0/22。这个地址块可以覆盖从212.56.132.0到212.56.135.255的所有地址,这正是原始四个/24地址块所覆盖的范围。

路由表(4-27)

        设某路由器建立了如下表所示的路由表(这三列分别是目的网络、子网掩码和下一跳路由器,若直接交付则最后一列表示应当从哪一个接口转发出去):

现共收到5个分组,其目的站IP地址分别为:

(1) 128.96.39.10

(2) 128.96.40.12

(3) 128.96.40.151

(4) 192.4.153.17

(5) 192.4.153.90

试分别计算这些分组转发的下一跳。

(1)接口0; (2) R2; (3) R4; (4) R3; (5) R4。

为了确定每个分组的下一跳,我们需要将每个目的IP地址与路由表中的子网掩码进行逻辑与(AND)操作,然后与目的网络进行比较,以确定匹配的路由。如果没有找到精确匹配,那么将使用默认路由。

下面是每个分组的计算过程:

  1. 128.96.39.10

    • 子网掩码:255.255.255.128 (/25)
    • 网络地址:128.96.39.0
    • 与子网掩码进行逻辑与操作:128.96.39.10 & 255.255.255.128 = 128.96.39.0
    • 匹配路由:128.96.39.0/25,下一跳:接口0
  2. 128.96.40.12

    • 子网掩码:255.255.255.128 (/25)
    • 网络地址:128.96.40.0
    • 与子网掩码进行逻辑与操作:128.96.40.12 & 255.255.255.128 = 128.96.40.0
    • 匹配路由:128.96.40.0/25,下一跳:R2
  3. 128.96.40.151

    • 子网掩码:255.255.255.128 (/25)
    • 网络地址:128.96.40.128
    • 与子网掩码进行逻辑与操作:128.96.40.151 & 255.255.255.128 = 128.96.40.128
    • 这个地址不在128.96.40.0/25网络中,因此需要使用默认路由,下一跳:R4
  4. 192.4.153.17

    • 子网掩码:255.255.255.192 (/26)
    • 网络地址:192.4.153.0
    • 与子网掩码进行逻辑与操作:192.4.153.17 & 255.255.255.192 = 192.4.153.0
    • 匹配路由:192.4.153.0/26,下一跳:R3
  5. 192.4.153.90

    • 子网掩码:255.255.255.192 (/26)
    • 网络地址:192.4.153.64
    • 与子网掩码进行逻辑与操作:192.4.153.90 & 255.255.255.192 = 192.4.153.64
    • 这个地址不在192.4.153.0/26网络中,因此需要使用默认路由,下一跳:R4

总结:

  • (1) 128.96.39.10 -> 接口0
  • (2) 128.96.40.12 -> R2
  • (3) 128.96.40.151 -> R4
  • (4) 192.4.153.17 -> R3
  • (5) 192.4.153.90 -> R4

路由表(4-28)

考虑某路由器具有下列路由表项:

(1)假设路由器接收到一个目的地址为142.150.71.132的IP分组,请确定该路由器为该IP分组选择的下一跳,并解释说明。

(2)在上面的路由表中增加一条路由表项,该路由表项使以142.150.71.132为目的地址的IP分组选择“A”作为下一跳,而不影响其他目的地址的IP分组转发。

(3)在上面的路由表中增加一条路由表项,使所有目的地址与该路由表中任何路由表项都不匹配的IP分组被转发到下一跳“E”。

(4)将142.150.64.0/24划分为4个规模尽可能大的等长子网,给出子网掩码及每个子网的主机IP地址范围。

解答:

(1)B;

(2)<142.150.71.132/32, A>;

(3)<0.0.0.0/0, E>;

(4)子网掩码255.255.255.192,

142.150.64.1~142.150.64.62, 142.150.64.65~142.150.64.126,

142.150.64.129~142.150.64.190, 142.150.64.193~142.150.64.254

让我们一步步解析这些问题:

(1) 确定142.150.71.132的下一跳

首先,我们需要找到与目的地址142.150.71.132最匹配的路由表项。路由表中的条目有:

  • 142.150.64.0/24 -> A
  • 142.150.71.128/28 -> B
  • 142.150.71.128/30 -> C
  • 142.150.0.0/16 -> D

142.150.71.132在142.150.71.128/28范围内,因此它与B项匹配,下一跳是B。

(2) 增加一条路由表项,使142.150.71.132选择A作为下一跳

为了使142.150.71.132选择A作为下一跳,我们需要添加一个更具体的路由,即一个精确匹配该地址的路由。这可以通过添加以下路由表项实现:

  • 142.150.71.132/32 -> A

这将确保142.150.71.132的流量被发送到A,而不影响其他地址。

(3) 增加一条路由表项,使不匹配任何路由的IP分组转发到E

为了处理所有不匹配现有路由的IP分组,我们可以添加一个默认路由:

  • 0.0.0.0/0 -> E

这将捕获所有未被其他路由表项匹配的流量,并将其转发到E。

(4) 将142.150.64.0/24划分为4个子网

要将142.150.64.0/24划分为4个子网,我们需要增加子网掩码的位数。原始的/24意味着有8位用于主机地址。为了创建4个子网,我们至少需要2位用于子网划分(因为2^2 = 4),这将给我们/26的子网掩码。

子网掩码为255.255.255.192(/26),这意味着每个子网有64个地址(2^(32-26) = 64)。

子网划分如下:

  • 子网1: 142.150.64.0/26,主机地址范围:142.150.64.1 - 142.150.64.62
  • 子网2: 142.150.64.64/26,主机地址范围:142.150.64.65 - 142.150.64.126
  • 子网3: 142.150.64.128/26,主机地址范围:142.150.64.129 - 142.150.64.190
  • 子网4: 142.150.64.192/26,主机地址范围:142.150.64.193 - 142.150.64.254

这样,每个子网都有62个可用的主机地址(减去网络地址和广播地址)。

RIP, OSPF和BGP路由选择协议的主要特点(4-39)

RIP 协议的要点

采用距离向量算法,相邻路由器之间周期性交换各自的路由表(包含到各网络的距离),根据收到的信息计算到各网络的最短距离及下一跳,并更新自己的路由表。

为加快协议的收敛速度,当路由表发生变化也及时向相邻路由器通告路由信息。

使用运输层协议 UDP 来传送 RIP 报文。

存在距离向量算法固有的“坏消息传播得慢的问题”,最大距离不能超过15,只能适用于小规模网络。

OSPF 协议的要点

基于链路状态路由选择算法,没有RIP“坏消息传播得慢”的问题

网络管理员可以根据流量、距离、时延、带宽等为链路设置度量

支持分区域层次路由,将链路状态信息的洪泛限制在小范围的区域内部,可用于大规模网络

OSPF的分组直接使用 IP 数据报进行传输,并采用可靠洪泛

BGP 协议的要点

采用路径向量算法,能够有效检测路由环路,因此没有距离向量算法的“坏消息传播得慢的问题”。

在BGP 刚刚运行时,BGP 的邻站间交换整个的 BGP 路由表。但以后只在发生变化时更新有变化的部分(增加、修改或撤销某路由)。

使用 TCP传输路由信息,保证了信息传输的可靠性。

由于路径向量信息包含经过的每个自治系统的ID,策略可以很方便地加入到路径的选择中。

RIP协议工作过程(4-37)

假定网络中的路由器B的路由表有如下的项目(目的网络、距离、下一跳)     

N1        7    A     

N2        2    C     

N6        8    F     

N8        4    E   

N9        4    F

现在B收到从C发来的路由信息(目的网络、距离): (N2, 5)、(N3, 9)、(N6, 4)、(N8, 4)、(N9, 5),试求路由器B更新后的路由表(详细说明每项的原因)。

N1     7    A     无新信息,不变

N2     5    C    相同下一跳,更新

N3     9    C    新项目,增加

N6     5    C    不同下一跳,距离更短,更新

N8     4    E    不同下一跳,距离一样,不变

N9     4     F   不同下一跳,距离更大,不变

路由协议传输问题(4-40)

RIP使用UDP,OSPF使用IP,而BGP使用TCP。这样做有何优点?为什么RIP周期性地和邻站交换路由信息而BGP却不这样做?

RIP只和邻站交换信息,UDP虽不保证可靠性,但UDP开销小。

OSPF使用可靠的洪泛法,并直接使用IP,好处是灵活和开销小。

BGP需要交换自治系统间的路由信息,交换的信息大,使用TCP提供可靠交付。

RIP利用周期性地和邻站交换路由信息来发现网络拓扑的变化,如路由器或链路的失效,而且UDP不可靠,周期性地交换路由信息也可避免路由信息丢失带来的问题。而BGP通过KEEPALIVE(保活)报文,用来周期性地证实对等方的连通性,同时TCP是可靠的,而不需要周期性地发送路由信息。

RIP用UDP省资源,OSPF直接用IP更灵活,BGP用TCP确保信息不丢。RIP需定期更新,BGP用保活机制。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/493119.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

开放词汇目标检测(Open-Vocabulary Object Detection, OVOD)综述

定义 开放词汇目标检测&#xff08;Open-Vocabulary Object Detection, OVOD&#xff09;是一种目标检测任务&#xff0c;旨在检测和识别那些未在训练集中明确标注的物体类别。传统的目标检测模型通常只能识别有限数量的预定义类别&#xff0c;而OVOD模型则具有识别“开放词汇…

单点登录平台Casdoor搭建与使用,集成gitlab同步创建删除账号

一&#xff0c;简介 一般来说&#xff0c;公司有很多系统使用&#xff0c;为了实现统一的用户名管理和登录所有系统&#xff08;如 GitLab、Harbor 等&#xff09;&#xff0c;并在员工离职时只需删除一个主账号即可实现权限清除&#xff0c;可以采用 单点登录 (SSO) 和 集中式…

算法笔记—前缀和(动态规划)

【模板】前缀和_牛客题霸_牛客网 (nowcoder.com) #include <initializer_list> #include <iostream> #include <vector> using namespace std;int main() {//输入数据int n,q;cin>>n>>q;vector<int> arr;arr.resize(n1);for(int i1;i<…

力扣438-找到字符串中所有字母异位词

力扣438-找到字符串中所有字母异位词 力扣438-找到字符串中所有字母异位词原题地址&#xff1a;https://leetcode.cn/problems/find-all-anagrams-in-a-string/description/ 题目描述&#xff1a; 给定两个字符串 s 和 p&#xff0c;找到 s 中所有 p 的 异位词的子串&#x…

linux-----进程及基本操作

进程的基本概念 定义&#xff1a;在Linux系统中&#xff0c;进程是正在执行的一个程序实例&#xff0c;它是资源分配和调度的基本单位。每个进程都有自己独立的地址空间、数据段、代码段、栈以及一组系统资源&#xff08;如文件描述符、内存等&#xff09;。进程的组成部分&am…

胡九道:经典传承(贵宾酒)

胡九道的由来 在辽阔的科尔沁草原上&#xff0c;有一个美丽的女子&#xff0c;她才貌双全&#xff0c;知书达礼&#xff0c;她就是历史上著名的孝庄皇后。大玉儿不仅聪慧过人&#xff0c;而且深具母仪天下的气质&#xff0c;深受百姓和皇室的敬爱。当她跟随丈夫皇太极入关来到…

【Mongo工具】Mongo迁移工具之Mongo-shake

Mongo-Shake 简介 Mongo-Shake 是一个基于 MongoDB 操作日志&#xff08;oplog&#xff09;的通用服务平台。它从源 MongoDB 数据库中获取操作日志&#xff0c;并在目标 MongoDB 数据库中重放&#xff0c;或者通过不同的隧道发送到其他终端。如果目标端是 MongoDB 数据库&…

EGO Swarm翻译

目录 摘要 Ⅰ 介绍 Ⅱ 相关工作 A . 单四旋翼局部规划 B . 拓扑规划 C. 分布式无人机集群 Ⅲ 基于梯度的局部规划隐式拓扑轨迹生成 A.无需ESDF梯度的局部路径规划 B.隐式拓扑轨迹生成 Ⅳ 无人机集群导航 A 机间避碰 B. 定位漂移补偿 C. 从深度图像中去除agent Ⅴ …

虚拟机断网没有网络,需清理内存,删除后再重启

进入NetworkManager可能没权限&#xff0c;设置权限777 to

整合 Knife4j 于 Spring Cloud 网关:实现跨服务的 API 文档统一展示

&#x1f3af;导读&#xff1a;本文档概述了构建和配置基于JDK 17、Spring Boot 3.0.7及Spring Cloud 2022.0.3的微服务系统&#xff0c;特别聚焦于集成Knife4j以增强API文档管理和接口测试功能。文中详细介绍了如何在Spring Boot应用中添加Knife4j依赖、配置Swagger UI路径和A…

使用光耦合器测量电压:实用指南

光耦合器&#xff0c;也称为光隔离器&#xff0c;是用于电气隔离和信号传输的多功能组件。其应用之一是测量电路中的电压。本文介绍了如何利用光耦合器进行电压测量&#xff0c;阐明了其操作和实际用途。 使用光耦合器进行电压测量的工作原理 使用光耦合器进行电压测量依赖于其…

LeetCode刷题day29——动态规划(完全背包)

LeetCode刷题day29——动态规划&#xff08;完全背包&#xff09; 377. 组合总和 Ⅳ分析&#xff1a; 57. 爬楼梯&#xff08;第八期模拟笔试&#xff09;题目描述输入描述输出描述输入示例输出示例提示信息 分析&#xff1a; 322. 零钱兑换分析&#xff1a; 279. 完全平方数分…

【STM32 Modbus编程】-作为主设备写入多个线圈和寄存器

作为主设备写入多个线圈和寄存器 文章目录 作为主设备写入多个线圈和寄存器1、硬件准备与连接1.1 RS485模块介绍1.2 硬件配置与接线1.3 软件准备2、写入多个线圈2.1 数据格式2.2 发送数据2.3 结果3、写入多个寄存器3.1 数据格式3.2 发送数据3.3 结果本文将实现STM32作为ModBus主…

Unity 圆形循环复用滚动列表

一.在上一篇垂直循环复用滚动列表的基础上&#xff0c;扩展延申了圆形循环复用滚动列表。实现此效果需要导入垂直循环复用滚动列表里面的类。 1.基础类 using System.Collections.Generic; using UnityEngine; using UnityEngine.UI; using UnityEngine.EventSystems; using …

【前后端】HTTP网络传输协议

近期更新完毕&#xff0c;建议关注、收藏&#xff01; http请求 URL 严格意义上应该是URI http or https http不加密不安全&#xff1b;https加密协议&#xff08;公网使用&#xff09; http端口号80 https端口号443GET or POST GET和POST是HTTP请求的两种基本方法. 因为POST需…

基于LSB最低有效位的音频水印嵌入提取算法FPGA实现,包含testbench和MATLAB对比

目录 1.算法运行效果图预览 2.算法运行软件版本 3.部分核心程序 4.算法理论概述 5.算法完整程序工程 1.算法运行效果图预览 (完整程序运行后无水印) 2.算法运行软件版本 vivado2019.2 matlab2022a 3.部分核心程序 &#xff08;完整版代码包含详细中文注释和操作步骤视…

疾风大模型气象系统:精准预报,引领未来

精准预报,引领未来 在当今快速变化的世界中,天气预报已成为日常生活和社会运行中不可或缺的一部分。从规划日常出行到防范极端天气影响,高精准的气象服务正在重新定义我们的生活方式。而在这一领域,疾风大模型气象系统以其卓越的技术实力和领先的预测能力,正引领气象服务…

中间件 redis安装

redis官网地址&#xff1a;Redis - The Real-time Data Platform 环境 CentOS Linux release 7.9.2009 (Core) java version "17.0.12" 2024-07-16 LTS 1、通过压缩包安装redis 1&#xff0c;远程下载redis压缩包&#xff0c;或去官网下载&#xff1a;Downloads …

rfid标签打印开发指导

使用java连接斑马打印机&#xff0c;开发rfid标签打印功能 1.引用斑马打印机的SDKjar包 ZSDK_API.jar 将这个jar文件放到项目的lib目录下&#xff0c;没有就新建一个。 然后点击 File–Project Sreucture–Modules 点击加号 选择对应jar包即可 2.代码开发 1.打印机连接地址…

【笔记】深度学习模型评估指标

推荐链接&#xff1a; &#xff08;0&#xff09;多分类器的评价指标 &#xff08;1&#xff09;泛化误差的评价方法&#xff1a;【机器学习】模型评估与选择&#xff08;留出法、交叉验证法、查全率、查准率、偏差、方差&#xff09; &#xff08;2&#xff09;机器学习&…