这一篇是 Networks and Network Security 课程的配套深度文,把 Module 1 的 IP 模型压成一张能审 AI 网络配置的速查。


为什么你需要这张图

你的电脑发一个请求到 google.com,中间发生的事远比你以为的复杂:

  1. 浏览器把”我要 google.com 的首页”打包成一个 HTTP 请求
  2. 操作系统给它套上一个 TCP 头(写明”用 443 端口、保证可靠到达”)
  3. 再套上 IP 头(写明”从你的 IP 到 google.com 的 IP”)
  4. 网卡再套上 MAC 地址 + 物理信号,扔到网线 / Wi-Fi 上

回来的时候反过来一层层拆。这一来一回的每一层,都可能出错、被拦、被改、被监听——AI 让你做的每一个网络相关配置,本质都是在某一层上动手脚。

不认层 = 你看 AI 的所有配置都像在背咒语。


TCP/IP 4 层 — AI 说话的位置坐标

从靠近你(用户)到靠近网线(物理):

#层名这一层做什么这层常见词汇(AI 提到就在这层)
4应用层 Application你和远程”对话”的语言HTTP · HTTPS · DNS · SSH · SFTP · SNMP
3传输层 Transport怎么可靠/不可靠地把消息传到对面TCP · UDP · 端口 (443/80/22/53)
2互联网层 Internet数据包怎么找到对面的”地址”IP · IP 地址 · 路由 · ICMP
1网络访问层 Network Access数据包”实际跑过”的物理介质MAC · Switch · Wi-Fi · WPA · ARP

工业界还有一个更细的 OSI 7 层模型,把应用层拆成 3 层、网络访问层拆成 2 层。但实战 99% 用 TCP/IP 4 层就够。你看到 AI 说”L7 负载均衡”,L7 = OSI 第 7 层 = TCP/IP 的应用层。

AI 说话时它在哪一层 — 一秒判别

"端口被防火墙拦了"           → L3 传输层
"DNS 解析失败"                → L4 应用层(DNS 在 L4)
"证书过期 / TLS 握手失败"     → L4 应用层(HTTPS)
"IP 被封 / 路由不通"          → L2 互联网层
"Wi-Fi 密码错 / WPA2 不安全"  → L1 网络访问层
"SSH 连不上"                  → L4 应用层(但常是 L3 端口问题)

数据包 — 网络上传的”信封”

任何在网络上跑的数据,都是一个 数据包 (packet),长这样:

+----------+----------+----------+
|  Header  |   Body   |  Footer  |
+----------+----------+----------+
  • Header(信封正面) — 写明:从哪儿来 / 到哪儿去 / 走什么协议 / 多大
  • Body(信封里的信) — 实际数据(你的 HTTP 请求 / 你看的 YouTube 视频帧 / 你在 chat 里打的字)
  • Footer(信封背面) — 校验码,确认中途没被改

每经过一层,这个包都会多套一层 header——就像写信寄到国外,信封外面套外包装,外包装外面再套海关申报单。

AI 提到的”包”几乎都在说 Header

  • 包嗅探” → 在某一层把包抓下来读 header(看你访问了哪些 IP)
  • 端口过滤” → 防火墙检查 TCP header 里的端口号,该不该放
  • IP 欺骗” → 伪造 IP header 里的”发件人地址”

HTTPS 加密的是 body,不加密 header——所以即便用 HTTPS,中间人还是知道你访问了哪个 IP 的哪个端口(只是不知道你具体看了什么内容)。这是为什么单 HTTPS 不够,有些场景还要套 VPN


IP 地址 vs MAC 地址 — 经常被混

IP 地址MAC 地址
像什么邮政地址(可换)身份证号(出厂烧死)
在哪一层L2 互联网层L1 网络访问层
长什么样203.0.113.422001:db8::100:1A:2B:3C:4D:5E
作用范围全球唯一(公网 IP)或私网内只在同一个局域网内有意义

关键认知:你连 Wi-Fi 时,路由器看到的是你设备的 MAC;你访问 google.com 时,Google 看到的是你的 IP(公网 IP,通常是 ISP 给你的)。两层是分开的。

AI 让你”换个 MAC 地址”——通常是为了在咖啡店 / 公司 Wi-Fi 上不被认出来。让你”换 IP”——通常是为了访问地域限制的服务。两件事在不同层,不能互相替代。


端口 — 同一台机器上的”门牌号”

端口 是 L3 传输层的概念。一台服务器一个 IP,但一台机器可以同时跑很多服务——网页、数据库、SSH、邮件——靠端口区分。

你必须认识的几个端口

端口协议是什么
22SSH远程登录服务器(AI 让你”改默认 SSH 端口”——把 22 改成 2222)
53DNS域名解析
80HTTP普通 http(明文,别用了)
443HTTPS加密 http(默认应该用这个)
3306MySQL数据库(绝不要对公网开)
5432PostgreSQL数据库(绝不要对公网开)
6379Redis缓存(绝不要对公网开)
27017MongoDB数据库(绝不要对公网开)

AI 让你做的”开端口”在做什么

# Vultr UFW 防火墙允许 SSH
sudo ufw allow 22/tcp
 
# 用 Linux 大白话讲它在干什么:
# "在 L3 传输层,允许从外部 → 本机 22 端口的 TCP 流量进来"

看到 AI 让你 ufw allow 3306 立刻警觉——它要把数据库直接暴露到公网。99% 的情况这是错的,数据库应该只让你的应用服务器访问,不该让全世界访问。


1-3-3-3 — 一个心智速查

读到 AI 任何一句网络相关的话,在脑里默念这 4 个槽位:

  • 哪一层? L1 物理 / L2 路由 / L3 端口 / L4 应用?
  • 谁的地址? IP(全球) 还是 MAC(局域网)?
  • 哪个端口? 该不该对公网开?
  • 包的什么部分? Header(谁去哪儿)还是 Body(说了什么)?

这 4 个槽,这门课后面所有的内容——防火墙 / VPN / 代理 / 攻击 / 加固——都是在它们上面盖房子。


你不需要会自己实现 TCP。 你需要的是:AI 说”TCP 重传率高”,你知道这是 L3 传输层的事,跟 DNS、跟应用代码、跟数据库都没关系——这一秒判断,省你两个小时排错。