Skip to content

2015年 408 计算机网络 第 47 题

计算机网络2015年综合题9分

题目

某网络拓扑如题 47 图所示,其中路由器内网接口、DHCP 服务器、WWW 服务器与主机 1 均采用静态 IP 地址配置,相关地址信息见图中标注;主机 2~主机 N 通过 DHCP 服务器动态获取 IP 地址等配置信息。

WWW 服务器111.123.15.3/24DHCP 服务器111.123.15.2/2400-b1-b1-b1-b1-b1Internet以太网交换机路由器111.123.15.1/2400-a1-a1-a1-a1-a1主机 1111.123.15.4/24主机 2主机 N

(1) DHCP 服务器可为主机 2~主机 N 动态分配 IP 地址的最大范围是什么?主机 2 使用 DHCP 协议获取 IP 地址的过程中,发送的封装 DHCP Discover 报文的 IP 分组的源 IP 地址和目的 IP 地址分别是什么?

(2) 若主机 2 的 ARP 表为空,则该主机访问 Internet 时,发出的第一个以太网帧的目的 MAC 地址是什么?封装主机 2 发往 Internet 的 IP 分组的以太网帧的目的 MAC 地址是什么?

(3) 若主机 1 的子网掩码和默认网关分别配置为 255.255.255.0 和 111.123.15.2,则该主机是否能访问 WWW 服务器?是否能访问 Internet?请说明理由。

解析

(1) DHCP 可分配范围 + Discover 报文 IP

先列出本子网(111.123.15.0/24)已被占的静态地址

设备静态 IP
路由器内网口(默认网关)111.123.15.1
DHCP 服务器111.123.15.2
WWW 服务器111.123.15.3
主机 1111.123.15.4

子网内可分配主机地址范围111.123.15.1 ~ 111.123.15.254(除去网络号 .0 和广播 .255);扣掉上述 4 个静态地址后,DHCP 可动态分配范围是 111.123.15.5 ~ 111.123.15.254(共 250 个地址)。

为什么不算 .0 和 .255:/24 子网中主机号全 0 = 网络地址(111.123.15.0)、全 1 = 子网定向广播(111.123.15.255),都不能赋给主机。

DHCP Discover 报文的 IP 分组

  • 源 IP:客户端此时还没有 IP(等着别人给它分),只能填 0.0.0.0
  • 目的 IP:客户端不知道 DHCP 服务器在哪,向本网段广播询问 → 255.255.255.255(受限广播地址)

为什么是 255.255.255.255 而非定向广播 111.123.15.255:客户端连自己的子网号都不知道(子网号也是 DHCP 要给的),所以发不了"定向广播",只能用全 1 这种"不依赖任何子网信息的广播",再由数据链路层广播(目的 MAC = FF-FF-FF-FF-FF-FF)配合送达本网段所有节点。DHCP 服务器是其中之一。

(2) 主机 2 访问 Internet 的两次 ARP

主机 2 发分组到 Internet 的目的,目的 IP 不在本子网 111.123.15.0/24 内 → 下一跳是默认网关(路由器),链路层目的 MAC 必须是路由器的 MAC(不是 Internet 上某台主机的 MAC——Internet 上的 MAC 主机 2 既不知道也跨网段不能直接用)。

但主机 2 的 ARP 表为空,还不知道路由器的 MAC——此时要先发 ARP 请求查路由器 IP 对应的 MAC。

第一个以太网帧:ARP 请求帧。ARP 请求是广播

  • 帧的目的 MAC = FF-FF-FF-FF-FF-FF

封装真正 IP 分组的以太网帧(ARP 请求收到响应后才发):

  • 此时主机 2 已知道路由器的 MAC = 00-a1-a1-a1-a1-a1
  • 帧的目的 MAC = 00-a1-a1-a1-a1-a1

常考混淆:跨网段通信时,IP 分组的"目的 IP"始终是最终目的 IP(Internet 上的某主机),但链路层的目的 MAC 是下一跳设备的 MAC——本题里就是默认网关。每过一个路由器,链路层 MAC 都会被剥掉重写一次,IP 头的"目的 IP"则不变。

(3) 主机 1 配置错误后能否访问

主机 1 配置:IP 111.123.15.4,子网掩码 255.255.255.0(正确)默认网关 111.123.15.2(错——应是 111.123.15.1)

主机 1 → WWW 服务器(同子网内通信)

主机 1 用子网掩码做"目的网络判断"——目的 IP 111.123.15.3 与本机 IP 做"AND 子网掩码"对比,结果都是 111.123.15.0 → 判定在同子网内不走默认网关,直接 ARP 查 WWW 服务器的 MAC,链路层直送。默认网关错不影响同子网通信能访问 WWW 服务器

主机 1 → Internet(跨子网通信)

目的 IP 不在 111.123.15.0/24 → 主机 1 判定走默认网关。它把分组通过 ARP 查到 111.123.15.2(错配的网关)的 MAC(即 DHCP 服务器的 MAC),交给 DHCP 服务器。

DHCP 服务器不是路由器,没开 IP 转发——它收到不是自己 IP 的分组会直接丢弃(或返回 ICMP 不可达,但反正不会转给真正的路由器)→ 不能访问 Internet

要点:默认网关错配只影响"跨子网"通信,不影响"本子网内"通信。这是网络层和数据链路层职责分离的体现:本子网走数据链路层 ARP + 直送,跨子网走网络层路由——配置错误只阻断了第二条路径。

DHCP 客户端的双重错配防护:实际上 DHCP 协议在分配地址时会同时下发"子网掩码 + 默认网关 + DNS"等参数,主机 2~主机 N 不会出现这种错配。本题要考的就是手动配静态 IP 易出的错。

最后更新:

🎬 可视化演示
加载中...

提示:可在可视化区直接操作播放、步进、修改参数