计算机网络:练习题及解析

免费的计算机网络选择练习题,附提示和解析,分三个难度:关键术语与事实, 概念应用, 案例与分析。

免费练习题简单

HTTPS 的默认端口号是多少?

下一题 →
免费练习计算机网络立即练习计算机网络每天 5 道免费题目,无需绑定银行卡。

练习内容

  1. 简单关键术语与事实
  2. 中等概念应用
  3. 困难案例与分析

从零开始学习计算机网络

1什么是计算机网络

网络是一组交换数据的设备:笔记本电脑、手机、服务器、打印机。网络上的设备称为主机。

一栋建筑或一个校园内的网络是 LAN(局域网)。跨城市或跨国家的网络是 WAN(广域网)。互联网连接着数百万个网络。

数据不是作为一条长流传输的。它被切成称为数据包的小块,每个数据包各自找到去往目的地的路。

设备只有遵循相同的规则才能相互理解。这样一套关于消息格式和顺序的规则就是协议。TCP、IP 和 HTTP 都是协议。

大多数服务遵循客户端–服务器模型:客户端,例如你的浏览器,发送请求,服务器送回答案。

有两个词描述连接有多快。带宽是最大数据速率,例如 100 Mbit/s。延迟是数据到达之前的延时,以毫秒计。

自测 一条卫星链路的速率为 50 Mbit/s,但每个回复需要 600 ms 才能到达。哪种说法是对的?
  1. 它的带宽低,因为它慢
  2. 它的带宽高,延迟也高
  3. 它的延迟低,因为它传输大量数据
  4. 这里带宽和延迟是一回事

答案: 它的带宽高,延迟也高. 带宽是容量(50 Mbit/s 很充裕),延迟是时延(600 ms 很多)。两者互相独立,所以一条链路可以既有高带宽又有高延迟。

2分层和封装

网络被分为多个层。每一层解决一个问题,并使用它下面的一层。OSI 模型有 7 层;互联网上使用的 TCP/IP 模型把它们归并为 4 层或 5 层。

7HTTP · DNS · SMTP · SSH654TCP · UDP3IP · ICMP2Ethernet · Wi-Fi · MAC10101…
  • 1 物理层:以电信号、光信号或无线电信号在线缆和空气中发送原始比特。
  • 2 数据链路层:使用 MAC 地址,在同一局域网内的设备之间传送帧。以太网和 Wi-Fi 位于这一层。
  • 3 网络层:使用 IP 地址,跨网络传送数据包。路由器工作在这一层。
  • 4 传输层:使用端口号,在程序之间传送数据。TCP 发送报文段;UDP 发送数据报。
  • 5–7 会话层、表示层、应用层:人们使用的服务,例如用于网页的 HTTP、用于名称的 DNS 和用于电子邮件的 SMTP。

发送数据时,每一层都在上一层数据的前面添加自己的首部。这称为封装。接收方按相反的顺序去掉首部。

EthIPTCPHTTP …CRCL2L3L4L7L2

TCP 先建立连接(三次握手 SYN、SYN-ACK、ACK)。它给数据编号,等待确认,并重发丢失的部分。它是可靠且有序的。

UDP 不建立连接,也不重发。它更快,用于延迟比丢包更重要的场合:直播视频、游戏和简短的 DNS 查询。

自测 普通交换机工作在哪一个 OSI 层?
  1. 第 1 层,物理层
  2. 第 2 层,数据链路层
  3. 第 3 层,网络层
  4. 第 4 层,传输层

答案: 第 2 层,数据链路层. 交换机使用 MAC 地址转发帧,而 MAC 地址属于数据链路层。使用 IP 地址的路由器工作在第 3 层。

3地址、设备和辅助协议

三种地址协同工作,每层一种:

  • MAC 地址(第 2 层):网卡的 48 位硬件地址。它只在本地网络内使用。
  • IP 地址(第 3 层):IPv4 地址有 32 位,IPv6 地址有 128 位。它说明主机在互联网上的位置。
  • 端口号(第 4 层):选定主机上的程序。知名端口从 0 到 1023:HTTP 80、HTTPS 443、SSH 22、DNS 53、SMTP 25。

设备遵循相同的分层。集线器(第 1 层)把每个信号复制到所有端口。交换机(第 2 层)只把帧发送到目的 MAC 地址所在的端口。路由器(第 3 层)在网络之间转发数据包。

几个辅助协议使这一切得以运作:

  • DHCP 在主机加入网络时,给它 IP 地址、掩码、默认网关和 DNS 服务器。
  • DNS 把 example.com 这样的名称翻译成 IP 地址,就像电话簿。
  • ARP 在本地网络上找出与某个 IP 地址对应的 MAC 地址。
  • ICMP 携带错误和测试消息。ping 命令使用 ICMP 回显请求。
  • NAT 让许多使用私有地址(10.x、172.16–31.x、192.168.x)的设备共用一个公网地址。

默认网关是主机在目的地位于自己子网之外时,把每个数据包发往的路由器。

自测 哪个协议在本地网络上找出与已知 IP 地址对应的 MAC 地址?
  1. ARP
  2. DHCP
  3. DNS
  4. ICMP

答案: ARP. ARP 问“谁拥有这个 IP 地址?”,拥有者用自己的 MAC 地址回复。DNS 把名称变成 IP 地址,那是另一种翻译。

4分步方法

大多数题目,从定义到故障排查案例,都可以用同样的步骤回答。

  1. 找出层次。题目涉及的是信号、帧和 MAC 地址,数据包和 IP 地址,端口和连接,还是某个应用?
  2. 说出在该层工作的设备或协议:集线器、交换机或路由器;以太网、IP、TCP 或 UDP;DNS、DHCP 或 HTTP。
  3. 对于故障,列出仍然正常的和失败的。某个功能正常,就证明它下面的每一层都没问题。
  4. 找出能解释所有失败现象的最低层。这是最可能的原因。
  5. 用题目中的其他事实检验你的答案:它必须解释所有这些事实。

对于简短的计算:传输时延是数据包大小除以链路速率,传播时延是距离除以信号速度。

ttrans = L / R tprop = d / v

5例题讲解

跟着每一步走。打开下一步之前,先试着预测它。

例题讲解

用户能 ping 通 8.8.8.8(互联网上的一台服务器),但无法按名称打开任何网站。问题最可能出在哪里?

1

列出正常的部分

ping 一个互联网地址能得到回复。所以线缆或 Wi-Fi 正常(第 1 层和第 2 层),主机有有效的 IP 地址,默认网关和路由也正常(第 3 层)。

2

列出失败的部分

按名称打开网站失败。浏览器在联系 www.example.com 之前,必须先把这个名称转换成 IP 地址。

3

找出协议

把名称翻译成 IP 地址是 DNS 的工作,DNS 是应用层协议。

4

排除其他可能

错误的默认网关也会使 ping 8.8.8.8 失败。线缆损坏会使一切都不通。两者都不符合事实。

5

检验答案

DNS 故障能解释所有事实:按 IP 地址的通信正常,按名称的通信不行。解决办法是正确的 DNS 服务器设置,通常由 DHCP 提供。

答案

问题出在名称解析:主机的 DNS 设置或 DNS 服务器。

6常见错误

  • 混淆 DNS 和 DHCP。DNS 把名称翻译成地址;DHCP 分发地址。
  • 混淆交换机和路由器。交换机在一个网络内部使用 MAC 地址;路由器在网络之间使用 IP 地址。
  • 以为 UDP 是“差劲的 TCP”。当低延迟比重发丢失的数据更重要时,会特意选择它。
  • 混淆带宽(容量)和延迟(时延)。
  • 把端口号放在网络层。端口属于传输层;IP 地址属于网络层。
  • 忘了默认网关。没有它,主机能到达自己的子网,但不能到达子网以外的任何地方。
自测 一台电脑能访问自己子网上的打印机,但无法访问子网以外的任何地方。它的 IP 地址和掩码是正确的。最可能的故障是什么?
  1. DNS 服务器错误
  2. MAC 地址错误
  3. 网线损坏
  4. 默认网关缺失或错误

答案: 默认网关缺失或错误. 本地通信正常,所以线缆、MAC 地址和 IP 设置都没有问题。每个去往其他网络的数据包都发往默认网关,所以缺少的就是它。DNS 故障不会阻止对 IP 地址的通信。

7考试题是什么样的

  • 简单:关键术语和事实。OSI 的层数、DNS 或 DHCP 的作用、默认端口号、IPv4 地址的大小。
  • 中等:应用概念。设备所在的层、为什么选择某个协议、ARP、NAT 或 TCP 握手的作用、简单的子网和时延计算。
  • 困难:案例与分析。故障排查情景、丢包和拥塞下的 TCP 行为、路由协议、ARP 欺骗或 SYN 洪泛等攻击,以及 TLS。

每道题有四个选项。先排除属于错误层次的选项;往往只剩下一个。

在应用中一步一步地学在应用中一步一步地学

例题

例题 1简单

一个 IPv4 地址有多少位?

  1. A32
  2. B64
  3. C128
  4. D16
显示提示
  1. 四个八位组。
  2. 两个错误答案已被划掉。剩下的两个中有一个是正确的。
显示答案和解析

为什么是这个答案

IPv4 地址为 32 位,写成四个十进制八位组。IPv6 地址为 128 位。

答案

A · 32
例题 2中等

IPv6 的环回地址是什么?

  1. A::
  2. B::1
  3. Cfe80::1
  4. Dff02::1
显示提示
  1. 一个除最后一位外全为零的地址的简写形式。
  2. 两个错误答案已被划掉。剩下的两个中有一个是正确的。
显示答案和解析

为什么是这个答案

::1 是环回地址。:: 是未指定地址,fe80::/10 是链路本地地址,ff02::1 是所有节点组播组。

答案

B · ::1
例题 3困难

与 IPv4 相比,IPv6 的分片有何不同?

  1. AIPv6 不允许大于 576 字节的数据包
  2. BIPv6 在传输层的 TCP 内部分片
  3. CIPv6 路由器在转发之前对路径上每个大于 64 字节的数据包进行分片
  4. D路由器从不对 IPv6 数据包分片;只有源端可以分片,并使用路径 MTU 发现
显示提示
  1. 想想由谁来做这件事:端点还是路由器。
  2. 两个错误答案已被划掉。剩下的两个中有一个是正确的。
显示答案和解析

为什么是这个答案

IPv6 路由器会丢弃过大的数据包并返回 ICMPv6 Packet Too Big 消息。源端随后发送更小的数据包,或使用分片扩展首部。

答案

D · 路由器从不对 IPv6 数据包分片;只有源端可以分片,并使用路径 MTU 发现

问与答

什么是计算机网络?

一栋建筑或一个校园内的网络是 LAN(局域网)。跨城市或跨国家的网络是 WAN(广域网)。互联网连接着数百万个网络。

数据不是作为一条长流传输的。它被切成称为数据包的小块,每个数据包各自找到去往目的地的路。

如何一步步学习计算机网络?
  1. 什么是计算机网络
  2. 分层和封装
  3. 地址、设备和辅助协议
  4. 分步方法
  5. 例题讲解
  6. 常见错误
  7. 考试题是什么样的
计算机网络练习包括哪些内容?
  • 简单: 关键术语与事实
  • 中等: 概念应用
  • 困难: 案例与分析

每道题有四个选项,只有一个正确。 卡住了?先打开一个小提示,需要时再查看完整解析。

练习方式

  • 每道题有四个选项,只有一个正确。
  • 卡住了?先打开一个小提示,需要时再查看完整解析。
  • 你的进度、错题和收藏的题目都会保留,方便考前复习。

包含此主题的课程

计算机科学中的更多主题

可打印练习卷

免费练习计算机网络立即练习计算机网络每天 5 道免费题目,无需绑定银行卡。