通信的对象不是"那台电脑",而是它的 IP 地址——网络世界里认地址、不认机器。IP 地址分两截:网络部分(在哪个网络)+ 主机部分(网里的哪台设备),中间的分界线由子网掩码(或 /24 这种前缀长度)标出来。路由器之所以敢把包往某个方向扔,就是因为它只看网络部分。
一、通信的对象是"地址",不是"设备"
寄快递时,收件栏写的是地址,不是"张三本人"。网络里一模一样:包的头上写的是 IP 地址,沿途所有设备都只认这个号。
- 1.2 说它是"门牌"
- 3.2 说 MAC 是身份证、IP 是快递面单上的地址
因为 IP 地址跟着位置走,不跟着机器走。同一台笔记本:在家是 192.168.1.101,到公司变成 10.0.0.37,连手机热点又换一个。它是"当前接入位置的门牌"——人还是那个人,门牌换了。
二、IP 地址长什么样
- 本质是 32 位二进制,太长不好念,于是切成 4 段十进制,每段就是一个字节(0~255),中间用点隔开
- 例:
192.168.1.101 - 收 Java 13.1 的旧账:那节说过"IPv4 四段数字、每段 0~255",本节来讲它为什么要这么排
三、本节核心:IP 地址分成两截
(对应上面第一张图)
| 部分 | 位置 | 回答的问题 |
|---|---|---|
| 网络部分 | 前面若干位 | 这台设备在哪个网络里 |
| 主机部分 | 后面剩下的位 | 这个网络里的哪台设备 |
两个类比:
- 小区名 + 楼栋房号——"阳光小区"是全小区共用的,"3 栋 801"才定位到你
- 区号 + 电话号码——"0717"是宜昌,"6221234"才是具体某台电话
为什么非要这么分(本节最值钱的一句):
路由器只需要看网络部分,就能决定往哪个方向送。
所以路由表里存的全是网段,而不是一台台设备的地址——3.7 那张表里「网络目标」那一列的 192.168.1.0/24,正是这个设计的结果。
顺带把 2.4 那句话升级成正式说法:同一网络部分 = 同一个 LAN(同一个网段)。
四、分界线画在哪:子网掩码与前缀长度
同一件事,两种写法(完全等价):
| 写法 | 样子 | 读法 |
|---|---|---|
| 前缀长度 | 192.168.1.0/24 |
前 24 位是网络部分,剩下 8 位是主机部分 |
| 子网掩码 | 255.255.255.0 |
是 1 的位 = 网络部分;是 0 的位 = 主机部分 |
换算窍门一句话:255 就是 8 个 1。所以 255.255.255.0 = 24 个 1 = /24。
常见三档(教材里的 A/B/C 类,会认即可):
| 掩码 | 前缀 | 网络部分 | 主机部分能装多少台 | 历史分类 |
|---|---|---|---|---|
255.0.0.0 |
/8 |
前 8 位 | 一千六百多万台 | A 类(1~126 开头) |
255.255.0.0 |
/16 |
前 16 位 | 六万五千多台 | B 类(128~191 开头) |
255.255.255.0 |
/24 |
前 24 位 | 254 台 | C 类(192~223 开头) |
早期按开头数字固定分 A/B/C 类,切得又粗又浪费(一个 B 类带六万多台,多数公司根本用不满)。现在改成按需任意切分(前缀长度想设多少设多少,/25、/26 都行)。A/B/C 用来认脸,实际工程看前缀长度。
另外两个特殊值:127.x.x.x 是本机回环(Java 13.1 的 127.0.0.1),224 以上是组播和保留段。
五、判断"是不是一个网段"——排障第一步
(对应上面第二张图)
拿到两台设备的地址 + 掩码,把各自的网络部分取出来一比:
- 相同 → 同一个网段:查本网段就有结果,经交换机直接送达,不用过路由器(3.2 接口层的活)
- 不同 → 不同网段:本网段查不到 → 命中默认路由
0.0.0.0/0→ 交给默认网关转发(3.7)
这就是 2.4 那句"同前缀 = 同一个 LAN"的正式算法,也是排查"为什么这台能连、那台不能连"时最先算的一步。
顺带把 2.5 的设计意图坐实了——给网络分段是为了:
- 隔离广播:一个网段里的广播不会淹到别的网段
- 限制故障范围:某段出问题不至于全网瘫
- 方便管理:访客网络单独划一段、办公区一段、服务器一段(2.5 的 IP 规划表)
所以家里路由器常见两段:主网 192.168.1.x、访客 Wi-Fi 192.168.2.x——访客设备压根不在你的网段里,这才叫隔离。
六、私有 IP 与全局 IP(收 1.2 旧账)
- 私有 IP 的三大姓氏:
192.168.x.x、10.x.x.x、172.16~31.x.x - 为什么全世界能重复用:它们是国际标准专门留出来的保留段,只在自家网内有效;出门由 NAT 换成全家共用的公网 IP(1.2 的总机)
对照本节的知识点说:私有 IP 的网络部分,只在自家门里算数——出了围墙,路由器看的是 NAT 换过的那套号。
七、IPv4 不够用了 → 才有 IPv6
- 32 位理论上约 43 亿个,实际可用还要少(分段浪费 + 早期分配不均)
- IPv6 是 128 位,写成 8 组十六进制(如
2001:db8::1),数量级上够用很久很久 - 会认就行:看到带冒号的地址,那是 v6。现在多数设备是两套并存,优先走 v6、不通再退回 v4
八、动手 Demo22:算出自己的网段
- 打开命令行(Win+R → cmd),看三件套:
ipconfig /all - 找三行:IPv4 地址、子网掩码、默认网关
-
1.2 看过 IP、3.7 用过网关,本节把掩码这一行补上——它告诉你"前多少位是网络部分"
-
手工判断同网段(假设你的是
192.168.1.101,掩码255.255.255.0): - 你的网络部分 =
192.168.1 - 手机若拿到
192.168.1.102→ 网络部分同为192.168.1→ 同段,互相直接送 - 打印机若被设成了
192.168.2.5→ 网络部分192.168.2→ 不同段,它每次通信都得先过路由器 -
坑点提醒:打印机配错网段是最常见的"能开机但连不上"原因之一(收 2.5 的静态 IP 规划)
-
回看路由表,这回看得懂了:
route print -4 - 「网络目标」那一列写的就是"网络部分 + 前缀长度",例如
192.168.1.0/24——3.7 你看过这张表,本节终于看懂它的写法了 -
每一行代表一个网段的方向,而不是一台设备的方向
-
30 秒实验:把掩码改成
/25,看世界怎么变 192.168.1.100/25的网络部分是192.168.1.0192.168.1.200/25的网络部分却是192.168.1.128-
结论:同样一串地址,掩码一变,网段的划法就变——所以"前 3 段一样就同网段"这句话只在
/24下成立(见误区 3) -
可选:
ping 192.168.1.255(本网段的广播地址,主机部分全 1) - 有回音、没回音都正常(多数系统默认不响应),主要是体会"网段"这个范围的存在
- 对照记忆:主机部分全 0 = 网络地址(如
192.168.1.0,代表整个网段);全 1 = 广播地址(192.168.1.255,代表"网段里所有设备")
- 为什么说"通信的对象是 IP 地址,不是设备"?
- IP 地址分成哪两截?两者的分界线由什么决定?
192.168.1.0/24和255.255.255.0是什么关系?- 掩码
255.255.255.0换成前缀长度是多少?为什么? 192.168.1.101/24和192.168.2.101/24是同一个网段吗?判定的后果是什么?- 路由器为什么不需要记住每一台设备的地址?
答案:
① 因为 IP 跟着接入位置走、换网络就换号(MAC 才是跟着机器走的那张身份证);网络里所有转发决策都基于地址。
② 网络部分(在哪个网络)+ 主机部分(网里哪台设备);分界线由子网掩码 / 前缀长度决定,不由数字本身决定。
③ 两者完全等价,都在说"前 24 位是网络部分":/24 是速记写法,255.255.255.0 是展开写法(255 = 8 个 1)。
④ /24。因为 255 对应 8 个 1,三个 255 就是 24 个 1,正好是网络部分的位数。
⑤ 不是。前者网络部分是 192.168.1,后者是 192.168.2——不同段,它们之间通信必须经过路由器(各自先把包交给自己的默认网关)。
⑥ 因为它只需要看网络部分就能决定方向;表里存网段(如 192.168.1.0/24)比存几百万台设备省太多,这也是 IP 地址切成两截的根本理由。
常见误区:
- ❌ "IP 地址是设备的身份证/名字" → IP 是位置,换网络就换号;跟机器绑定的是 MAC(3.2)
- ❌ "子网掩码是另一个 IP 地址" → 它是一把尺子,只用来量"前多少位算网络部分",不能当门牌用
- ❌ "前 3 段一样就一定是同一个网段" → 只在
/24下成立。掩码是/25时,192.168.1.100和192.168.1.200就分属两个网段了 - ❌ "网络部分和主机部分由数字本身定死" → 由掩码 / 前缀长度决定,同一串地址配不同掩码能划出不同的段
- ❌ "同一个网段里通信也要过路由器" → 同段走交换机直接送达(3.2 接口层),只有跨段才交给网关(3.7)
- ❌ "IPv4 地址够用" → 早就不够,正因为如此才有 NAT(1.2)和 IPv6
九、下一步学什么
- ☑ 3.9 接收方是1个还是多个(单播、广播、组播) ✅ 已完成 —— 点此复习:本节算出来的"网段",下一节用来圈定广播的范围。
相关笔记
- 接收方是1个还是多个(单播、广播、组播) —— 本节划出的"网段",下一节用来圈定广播的活动范围
- 数据的发送和接收(IP、IP数据包、路由) —— 路由表里的
/24和"最长前缀匹配",本节讲清了它凭什么这么写 - 网络为谁而生的(私有网络与互联网) —— 私有 IP 三大姓氏与 NAT,本节补上"为什么能重复用"
- 组成网络(局域网的构建) —— "同前缀 = 同一个 LAN"的正式算法,就在本节第五节
- 如何构建网络(网络的设计) —— IP 规划表为什么分段,本节给出了三条理由
- 负责传输数据的网络分层(网络接口层与网际层) —— IP 与 MAC 这套"双层门牌",本节的"位置 vs 身份证"是它的续写
- Java 13.1 网络基础 —— IPv4 四段、
127.0.0.1回环、IPv6 的原始出处