01 第1周D2 网络TCPIP
D2 作业:抓包观察 + 端口验证
D2 作业:抓包观察 + 端口验证
目标
- 验证:能看懂 TCP 三次握手、能验证服务端口、能解释四层模型。
场景
- 本地开发机;只读操作,针对公司公开域名。
任务
任务 1:端口验证
# 1. 公司 Web 服务(HTTPS)
nc -vz kuma.akria.net 443
# 2. 公司 master SSH(仅连通性,不登录)
nc -vz 43.132.237.162 22
# 3. 故意测一个不开放的端口,观察返回差异(如 80 或 9999)
nc -vz kuma.akria.net 9999记录三种情况的结果(open / filtered / timeout)。
任务 2:观察三次握手(讲师演示过,自己复现一次)
# 终端 A(需要 sudo,或讲师代跑):
sudo tcpdump -i any host kuma.akria.net and tcp port 443 -n
# 终端 B:
curl -sI https://kuma.akria.net- 从抓包里找出 SYN、SYN+ACK、ACK 三条包,截图。
- 找不到三条包就换命令顺序或加
-c 10限制包数后重试。
任务 3:画时序图 + 概念问答
- 手画 TCP 三次握手时序图(标出 SYN/SYN+ACK/ACK 与方向)。
- 回答:为什么 ping 通不等于服务正常?用什么命令才能真正验证一个 Web 服务可用?
验收标准(讲师核验用)
- 任务 1 三种端口情况结果已记录(443 开放、22 开放、9999 失败)
- 任务 2 抓包截图能看到至少"SYN + ACK"两条包,并能口头说明
- 任务 3 时序图正确(方向/标志位都对)
- 概念问答:能说出"ping 是 ICMP 测连通,业务要 nc/curl 测端口"
提交方式
- 结果与截图放
docs/training/学员/<姓名>/D2/,按 D6 流程提交 PR,中文提交信息,如:D2 作业:TCP抓包与端口验证(姓名)。
参考
- 课程.md 第 3、6 节
- 学习网站.md → D2 分组