title: # # 第二轮复习要点(自 2025‑09‑13 19:16 起)— 网络与实战笔记
date: 2025-08-16 15:00:00
本笔记汇总我们在该时间点之后的所有关键对话,按主题整理,便于复习与分享(可打印)。
0. 时间锚点
- 复习起始时间:2025‑09‑13 19:16(新加坡时间)。
1) Nmap 实战与结果解读
- 环境:Windows Nmap 7.98。
- 常用命令:
nmap target # 常见 1000 TCP 端口 nmap -p 1-65535 target # 全端口 nmap -sS -sV -O target # 半开扫描 + 服务版本 + OS 识别(需管理员) nmap -sU -p 53,5000-5500 target # UDP 扫描(较慢)
- 对百度的扫描(www.baidu.com → 45.113.192.101):
- 开放:TCP 80/443 → Web/CDN 常规端口。
- 对 LOL 国服(lol.qq.com → 203.205.137.181):
- 开放:TCP 80/443/8080/880/6006 → 除网页外,还有业务端口(登录/大厅/服务接口等)。
- 下一步建议:
-sV
看具体服务与版本;-O
看 OS;-sU
探测对局相关 UDP 段(如 5000–5500)。
2) Nmap 的工作原理(总览)
- 主机发现:ICMP、ARP、TCP SYN/ACK Ping 等判活。
- 端口扫描:
- TCP SYN(-sS,半开)、TCP Connect(-sT)、UDP(-sU)、FIN/NULL/XMAS 等。
- 端口状态:open / closed / filtered。
- 服务与版本识别(-sV):发“探针”匹配返回 banner。
- OS 识别(-O):根据响应特征匹配指纹库。
- NSE 脚本:弱口令、漏洞、证书/标题等信息收集。
3) DNS 进阶:FQDN 与解析路径
- FQDN:完整域名以点结尾(如
www.example.com.
)。DNS 语义等价于不带点写法,但 HTTP Host 为www.example.com.
时属异常输入,WAF/风控可能拦截。 - 解析路径(逻辑):客户端把查询交给 递归解析器(路由器 DNS/运营商/114/8.8.8.8)。解析器若缓存命中直接返回,否则迭代问 根 → TLD(.com) → 权威 DNS。
- 实际物理路径:数据包先到 默认网关 → 运营商 → 递归 DNS(之后才发生上述逻辑迭代)。
- 示例流程(www.server.com):本地 DNS → 根 → .com →
server.com
权威 → 返回 A 记录。
4) 子网与掩码:网络号/主机号
- IP 构成:32 位 = 网络号 + 主机号(由子网掩码划分)。
- /18 计算示例:
- 掩码:
11111111.11111111.11000000.00000000
= 255.255.192.0。 - 主机位:14 位 → 可用主机数 = 2^14 − 2 = 16382。
- 若网络从
192.168.0.0/18
:范围 192.168.0.1–192.168.63.254,广播192.168.63.255
。
- 掩码:
- 主机号注意:同一子网内必须唯一;全 0(网络地址)和全 1(广播地址)不可用。
5) ARP:从内网到网关
- 作用:解析 IP→MAC,仅在同一二层广播域有效。
- 流程(访问公网前):
- 主机判定目标不在本网段 → 交给默认网关 IP(如 192.168.0.1)。
- 查询 ARP 缓存,无则广播“谁是 192.168.0.1?”
- 网关以单播回复其 MAC → 写入缓存。
- 以后发包直接用该 MAC 作为帧目的地址。
- ARP 表观测:
arp -a
中常见网关 MAC(动态),以及 224.* / 239.* / 255.* 的组播/广播(静态条目)。
6) 路由器如何把包“发到互联网”
- 步骤:查路由表 → 选出口接口(WAN)→ (家庭场景)执行 NAT(内网源地址/端口映射)→ 对“下一跳”做 ARP → 重新封装帧(源 MAC=路由器 WAN,目的 MAC=上级网关)→ 送入运营商 → 通过 BGP/IGP 转发至目标自治系统。
- 回包:先到路由器公网 IP → 由 NAT 表还原到内网主机(会话四元组)。
- 简图:
主机(192.168.0.102) ──> 网关(192.168.0.1) ──> 运营商网关 ──> 目标服务器 ARP找网关MAC NAT+ARP下一跳 BGP选路
7) 路由表:查看与意义(结合你的输出)
- 核心字段:网络目标 / 掩码 / 网关 / 接口 / 跃点数。
- 你的关键项:
- 默认路由
0.0.0.0/0 → 192.168.0.1
(所有非本地流量走网关)。 - 本地网段
192.168.0.0/24
(同网段直达,不经网关)。 - 回环
127.0.0.0/8
;组播224.0.0.0/4
;全广播255.255.255.255/32
。
- 默认路由
- 意义:决定包从哪块网卡、交由哪个下一跳转发;多网卡/有 VPN 场景尤为关键;按最长前缀匹配优先选择最具体的路由。
8) OSI vs TCP/IP 模型与封装
- OSI 七层:物理、数据链路、网络、传输、会话、表示、应用(理论模型)。
- TCP/IP 四层:网络接口、网络层、传输层、应用层(互联网实际分层)。
- 封装链路:
应用数据 → [TCP/UDP头] → [IP头] → [以太网帧头/尾] → 物理信号
- 常见协议映射:HTTP/DNS(应用);TCP/UDP(传输);IP/ICMP/ARP/BGP(网络);Ethernet/Wi‑Fi(接口/物理)。
9) 应用层 Socket 与编程
- Socket 含义:应用调用 OS 的网络接口(BSD Sockets/Winsock)以使用 TCP/UDP。
- 不使用
import socket
的可能性:- 用
scapy
等库手工构造/发送包(底层仍调用内核接口)。 - 自己实现用户态协议栈 + 原始以太网发送(复杂度极高,仍需通过驱动/内核接口下发)。
- 用
- 现实:真正“发到网卡”必须经由操作系统提供的接口。
10) TCP/UDP 在理想与现实网络
- 理想:不掉包/不乱序/不拥塞 → 可直接用 UDP(轻量),TCP 的重传/拥塞控制少用或不需。
- 现实公网:不可避免抖动/丢包/拥塞 → 仍需 TCP 的可靠机制;实时应用常用 UDP + 应用层容错。
11) Linux 收发网络包(扩展认知)
- 接收:网卡 DMA → 环形缓冲 → 硬中断 → 软中断/NAPI 轮询 → 接口层 → IP 层 → TCP/UDP → 套接字缓冲 → 应用读取。
- 发送:应用写 Socket → 分配
sk_buff
→ 传输层/IP 层封装 → 接口层(ARP、帧头)→ 网卡队列/DMA 发送。 - 关键优化:NAPI 减少中断风暴;
sk_buff
头部预留减少拷贝;MTU/分片注意性能成本。
12) 命令与实验清单(可自测)
- DNS:
nslookup domain [dns]
;比较不同 DNS 的解析与 TTL。 - 连通性:
ping ip
;路由路径:tracert ip
。 - 端口:
nmap -sS -sV -O target
/nmap -sU -p 5000-5500 target
。 - ARP:
arp -a
;观察网关 MAC 与组播条目。 - 路由:
route print
;必要时route add
做定向路由实验(例如公司内网段走 VPN)。
13) 速记要点(一屏记忆)
- DNS:递归解析器能答就不向上;逻辑迭代根/TLD/权威仅在未命中时发生。
- FQDN:
www.xxx.com.
与www.xxx.com
等价于 DNS 层;HTTP Host 末尾点属异常,可能触发风控。 - ARP:只在二层广播域有效;发公网先 ARP 网关 MAC。
- NAT:家庭上网的关键;回包靠 NAT 表映射四元组复原。
- 路由:按最长前缀匹配;默认路由兜底,专网/多网卡要配静态路由。
- Nmap:SYN 扫描最常用;UDP 慢但观察对局端口必备;
-sV/-O
获取更多情报。 - 分层:OSI 理念、TCP/IP实用;封装顺序应用→传输→网络→链路/物理。
完。