# 网络基础
# 概述
计算机网络是互联的、自治的计算机集合,通过协议实现数据交换与资源共享。常见分类:按范围(LAN/WAN/MAN)、按拓扑(星型/总线/环型)、按传输(有线/无线)。
# OSI 七层与 TCP/IP 四层
| OSI 七层 | TCP/IP 四层 | 典型协议/设备 |
|---|---|---|
| 应用层 | 应用层 | HTTP、DNS、FTP |
| 表示层 | ||
| 会话层 | ||
| 传输层 | 传输层 | TCP、UDP |
| 网络层 | 网络层 | IP、ICMP、路由器 |
| 数据链路层 | 链路层 | Ethernet、交换机 |
| 物理层 | 网线、光纤、网卡 |
数据发送:自上而下每层加头部(封装);接收:自下而上每层去头部(解封装)。
# IP 地址与子网
- IPv4:32 位,点分十进制,如
192.168.1.1。分 A/B/C/D/E 类,常用 C 类/24。 - 子网掩码:与 IP 按位与得网络号,如
255.255.255.0表示前 24 位为网络位。 - 私有网段:
10.0.0.0/8、172.16.0.0/12、192.168.0.0/16,仅内网使用。 - IPv6:128 位,冒号十六进制,解决 IPv4 地址耗尽。
# 端口
0–65535。0–1023 为熟知端口(如 80/HTTP、443/HTTPS、22/SSH、53/DNS);1024–49151 为注册端口;其余为动态/私有。
# DNS
将域名解析为 IP。查询顺序:浏览器缓存 → 本地 hosts → 本地 DNS → 递归查询(根→顶级域→权威域)。记录类型:A、AAAA、CNAME、MX、TXT、NS。
nslookup baidu.com
dig baidu.com
1
2
2
# TCP 与 UDP
- TCP:面向连接、可靠、有序、字节流、有拥塞与流量控制。三次握手建立、四次挥手释放。
- UDP:无连接、不可靠、无拥塞控制,适合实时、多播、简单请求(DNS 查询等)。
# 三次握手与四次挥手
三次握手(建立连接)
- 客户端 → SYN → 服务端
- 服务端 → SYN+ACK → 客户端
- 客户端 → ACK → 服务端
四次挥手(断开连接)
- 客户端 → FIN → 服务端
- 服务端 → ACK → 客户端
- 服务端 → FIN → 客户端
- 客户端 → ACK → 服务端(后进入 TIME_WAIT)
# HTTP 基础
- 请求/响应模型,无状态。默认端口 80。
- 请求方法:GET(幂等)、POST、PUT、PATCH、DELETE、HEAD、OPTIONS。
- 状态码:1xx 信息、2xx 成功、3xx 重定向、4xx 客户端错误、5xx 服务端错误。常见:200、301/302、400、401、403、404、500。
- 请求/响应头:Host、Content-Type、Content-Length、Cookie、Set-Cookie、Cache-Control、Connection 等。
# 常用命令
ping 192.168.1.1
tracert baidu.com
ipconfig / ifconfig
netstat -an
telnet host 80
curl -v http://example.com
1
2
3
4
5
6
2
3
4
5
6
# 抓包与工具
- Wireshark:按协议/IP/端口过滤,看各层包头与 payload。
- 浏览器 F12 → Network:看 HTTP 请求/响应、时序、状态码。
- Postman/curl:构造并发送 HTTP 请求。