Skip to content

综合测验:容器与云 ​

课程

共六题。请用自己的话解释每个答案。

  1. 通过 IP 发起请求返回 HTTP 200,但 getent 无法解析服务名称。你首先应调查什么?

    • A) CPU 拥塞控制算法
    • B) 名称解析路径
    • C) 只检查 HTTP 文件权限
    • D) 每一种 CNI 实现
显示答案

答案:B) 名称解析路径

解释:IP 连通性和应用响应都已确认,因此应检查名称是如何解析的。还需要更多证据才能认定某个特定 DNS 服务器是故障原因。

  1. 服务器返回 HTTP 404。这次请求说明了什么?

    • A) 所有端口都已开放
    • B) 路由表为空
    • C) 已与服务器交换 HTTP 响应
    • D) 整个互联网都运行正常
显示答案

答案:C) 已与服务器交换 HTTP 响应

解释:404 是 HTTP 层的响应。应比较请求路径并检查服务器日志;现有证据并不支持重置整个防火墙。

  1. ss 只显示 127.0.0.1:8000 正在监听,而且服务器本机请求成功。调查远程请求失败时,关键步骤是什么?

    • A) 检查监听器是否绑定到远程请求的目标地址
    • B) 假设客户端的 localhost 与服务器的 localhost 相同
    • C) 始终增大 DNS TTL
    • D) 禁用 SELinux
显示答案

答案:A) 检查监听器是否绑定到远程请求的目标地址

解释:回环地址属于各自的网络命名空间。要接收发往服务器实验 IP 的流量,监听器必须绑定到合适的地址,并配置适当的访问规则。

  1. 你只移除了 UFW 中单独针对 TCP 8000 的允许规则。新的仅密钥 SSH 连接仍然正常,但 HTTP 失败了。哪种恢复方式能保留原本策略?

    • A) 在剩余的实验室拒绝规则之后追加 HTTP 允许规则
    • B) 删除实验室拒绝规则和所有 SSH 规则
    • C) 禁用 UFW,并假设旧 SSH 会话能证明已恢复
    • D) 将原有的、范围受限的 HTTP 允许规则插到拒绝规则之前,然后检查规则顺序、HTTP 200 和新的仅密钥 SSH 连接
显示答案

答案:D) 将原有的、范围受限的 HTTP 允许规则插到拒绝规则之前,然后检查规则顺序、HTTP 200 和新的仅密钥 SSH 连接

解释:SSH 和 HTTP 有各自的允许规则,因此修复 HTTP 故障时应保留 TCP 22 和默认策略。UFW 规则顺序很重要:如果允许规则追加在匹配的拒绝规则之后,就不会生效。在故障发生前、期间和恢复后,都应测试一个新的、未启用多路复用的密钥登录;允许系统提示输入加密密钥的密码,不要假设 SSH agent 已解锁。在 firewalld 分支中,只移除/恢复运行时 HTTP 规则,永久规则仍然保留。如果移除规则后 HTTP 从未失败,应检查其他允许规则和区域行为,而不要声称流量被阻止。

  1. curl --resolve lesson.test:8000:192.0.2.20 会更改什么?

    • A) 每台 VM 上的 DNS 服务器
    • B) 仅对此次 curl 调用生效的主机/端口映射
    • C) 持久化的 /etc/hosts 文件
    • D) Kubernetes Service IP
显示答案

答案:B) 仅对此次 curl 调用生效的主机/端口映射

解释:该覆盖设置仅在此次调用中生效,不会修改系统解析器或其他程序使用的映射。

  1. 从 VM 实验迁移到 CNI 时,应牢记哪项原则?

    • A) Docker bridge 和所有 CNI 都是相同的实现
    • B) Service IP 与 localhost 相同
    • C) 重新识别命名空间、地址、路由、策略和观测点
    • D) 一个很小的 HTTP 请求就能证明云网络的最大吞吐量
显示答案

答案:C) 重新识别命名空间、地址、路由、策略和观测点

解释:诊断问题的思路可以沿用,但具体实现和边界会不同。应区分集群抽象层与实际数据包路径。

向文档提问

按 Enter 发送,按 Shift+Enter 换行。