子网划分与 VLAN
一句话总结:子网是三层的事,VLAN 是二层的事——一个用 IP+掩码切逻辑网络,一个用交换机切广播域,经常配合使用。 适用:IPv4、企业网/机房网络规划。
一、先分清两个概念
| 概念 | 层次 | 靠什么划分 | 决定什么 |
|---|---|---|---|
| 子网 Subnet | 三层 L3 | IP 地址 + 子网掩码 | 哪些 IP 属于同一逻辑网络,能否直接通信 |
| VLAN | 二层 L2 | 交换机端口/策略 | 哪些设备在同一个广播域 |
两者可以一一对应(一个 VLAN 配一个子网),也可以不同;实际组网常常“一 VLAN 一子网”。
二、IP 地址分类(看第一个字节的二进制前缀)
| 类别 | 第一字节前缀 | 范围 | 默认掩码 | 网络位/主机位 | 用途 |
|---|---|---|---|---|---|
| A | 0xxxxxxx |
0–127 | 255.0.0.0 /8 |
8 / 24 | 超大网络 |
| B | 10xxxxxx |
128–191 | 255.255.0.0 /16 |
16 / 16 | 中型网络 |
| C | 110xxxxx |
192–223 | 255.255.255.0 /24 |
24 / 8 | 小型网络 |
| D | 1110xxxx |
224–239 | 无 | 无 | 多播 |
| E | 1111xxxx |
240–255 | 无 | 无 | 保留/实验 |
三、特殊地址
| 地址 | 说明 |
|---|---|
0.0.0.0/8 |
本网络,保留 |
127.0.0.0/8 |
环回地址,如 127.0.0.1 |
169.254.0.0/16 |
链路本地地址,DHCP 失败时自动配置 |
10.0.0.0/8 |
私有 A 类 |
172.16.0.0/12 |
私有 B 类范围(172.16–172.31) |
192.168.0.0/16 |
私有 C 类范围 |
255.255.255.255 |
受限广播 |
四、掩码与网段计算
子网掩码的作用:区分网络位和主机位,1 是网络位,0 是主机位。
| 掩码 | 前缀 | 每网段地址数 | 可用主机数 |
|---|---|---|---|
| 255.255.255.0 | /24 | 256 | 254 |
| 255.255.255.128 | /25 | 128 | 126 |
| 255.255.255.192 | /26 | 64 | 62 |
| 255.255.255.224 | /27 | 32 | 30 |
| 255.255.255.240 | /28 | 16 | 14 |
| 255.255.255.252 | /30 | 4 | 2(常用于点对点链路) |
计算公式(主机位 h 位):
- 每网段地址数 =
2^h - 可用主机数 =
2^h - 2(去掉网络地址和广播地址) - 网段块大小 =
256 - 掩码最后一段的值,例如 /26 → 256-192=64
算一个地址属于哪个网段(例:192.168.10.130/26):
块大小 64 → 网段起点是 64 的倍数:128
网络地址 192.168.10.128
广播地址 192.168.10.191
可用范围 192.168.10.129 ~ 190
五、子网划分步骤(四步法)
- 确定需要多少个子网或每个子网多少台主机;
- 从主机位借位:借 n 位 → 2^n 个子网;剩余 h 位 → 每网段 2^h 个地址;
- 写出新的掩码;
- 按块大小列出每个网段的网络地址、可用范围、广播地址。
例题:把 192.168.1.0/24 平均划成 4 个子网。
需要 4 个子网 → 借 2 位(2^2=4),新前缀 /26
每网段 64 个地址,可用 62 台
子网1:192.168.1.0/26 可用 .1 ~ .62 广播 .63
子网2:192.168.1.64/26 可用 .65 ~ .126 广播 .127
子网3:192.168.1.128/26 可用 .129 ~ .190 广播 .191
子网4:192.168.1.192/26 可用 .193 ~ .254 广播 .255
VLSM(变长子网):不同部门需求不同,按“从大到小”的顺序划分,避免地址浪费。例如一个 /24 要划出 100 台、50 台、25 台三个网段:
100 台 → /25(126 可用):192.168.1.0/25
50 台 → /26(62 可用):192.168.1.128/26
25 台 → /27(30 可用):192.168.1.192/27
原本一个 /24 只用掉一半多,剩下还能继续分。
六、VLAN 基础
为什么需要 VLAN:交换机所有端口默认在同一个广播域,广播包会泛洪到所有端口;VLAN 把一台交换机逻辑上切成多个“虚拟交换机”,缩小广播域、隔离故障、方便管理。
VLAN 划分方式
| 划分方式 | 依据 | 优点 | 缺点 | 场景 |
|---|---|---|---|---|
| 基于端口 | 交换机端口 | 简单、高效、常用 | 移动不灵活 | 大多数企业网络 |
| 基于 MAC | 源 MAC 地址 | 移动后 VLAN 不变 | 维护 MAC 表麻烦 | 小型网络、特殊终端 |
| 基于协议 | 帧协议类型 | 可区分协议 | 现代网络少用 | 旧式多协议网络 |
| 基于 IP 子网 | 源 IP 子网 | 与 IP 规划一致 | 开销大、依赖 IP | IP 电话、混合接入 |
| 基于策略 | 认证/角色/时间 | 灵活、安全 | 复杂、依赖服务器 | 企业、校园、访客网络 |
Access 口与 Trunk 口
| 端口类型 | 收发规则 | 接什么 |
|---|---|---|
| Access | 收:打上本口 VLAN 标签;发:剥掉标签再发 | 电脑、打印机、服务器 |
| Trunk | 收:检查标签;发:带标签发出(native VLAN 除外) | 交换机之间、服务器多 VLAN |
VLAN 标记不会通过 access 口传输,所以个人电脑不会收到 VLAN 标签;交换机之间也不能用 access 口,必须用 trunk 口。
802.1Q 标签插在以太网帧的源 MAC 后面,4 字节,其中 VLAN ID 12 位,范围 1–4094(0 和 4095 保留)。
VLAN 间通信
不同 VLAN 属于不同广播域,二层不通,必须经过三层:
- 单臂路由:路由器一个物理口划多个子接口(
eth0.10、eth0.20),交换机连路由器的口配 trunk; - 三层交换机 SVI:给每个 VLAN 配一个 VLANIF 接口作为网关,性能更好,企业常用。
# Linux 上做一个 VLAN 子接口(了解)
ip link add link eth0 name eth0.10 type vlan id 10
ip addr add 192.168.10.1/24 dev eth0.10
ip link set eth0.10 up
大二层
两台服务器上的多台虚拟机如果也要各自划分 VLAN 通信,服务器就要接交换机的 Trunk 口而不是 Access 口——这时服务器的网卡相当于一台交换机,整个框架叫“大二层”。虚拟化平台里的“虚拟机交换机 + VLAN ID”就是这种思路。
七、子网与 VLAN 配合
| 场景 | 做法 |
|---|---|
| 部门隔离 | 每个部门一个 VLAN + 一个子网,网关在三层设备上 |
| 服务器区 | 服务器接 access 口,按业务划 VLAN |
| 跨交换机同 VLAN | 交换机互联口配 trunk,只放行需要的 VLAN |
| 无线 | SSID 映射到不同 VLAN,隔离访客与办公 |
速查表
/24 → 256 地址 254 可用
/25 → 128 地址 126 可用
/26 → 64 地址 62 可用
/27 → 32 地址 30 可用
/28 → 16 地址 14 可用
/30 → 4 地址 2 可用(点对点)
块大小 = 256 - 掩码最后一段
网络地址 = 起始块(IP 向下取整到块大小倍数)
广播地址 = 下一个网络地址 - 1
可用主机 = 2^主机位 - 2
| VLAN 要点 | 记法 |
|---|---|
| Access | 接终端,进出不带标签 |
| Trunk | 接交换机,带标签 |
| 802.1Q | 4 字节标签,VLAN ID 1–4094 |
| VLAN 间通信 | 必须过三层(单臂路由 / SVI) |
| 大二层 | 服务器网卡接 Trunk,虚拟机各自带 VLAN |
练习(14 题)
255.255.255.192 是多少位掩码?每个网段多少个地址、多少个可用主机?
查看答案
/26,每网段 64 个地址,可用 62 个(去掉网络地址和广播地址)。
192.168.5.0/24 划分成 8 个子网,新掩码是多少?每个子网多少可用主机?
查看答案
8 个子网需要借 3 位,/24 → /27,每网段 32 个地址、30 个可用主机。 网段分别是
192.168.5.0、.32、.64、.96、.128、.160、.192、.224。
判断 192.168.10.130/26 的网络地址、广播地址和可用范围。
查看答案
块大小 64,130 落在 128–191 之间:网络地址
192.168.10.128,广播192.168.10.191,可用.129 ~ .190。
172.16.8.0/22 的掩码是什么?包含多少个地址?
查看答案
/22 的掩码是
255.255.252.0,包含2^10 = 1024个地址(可用 1022 个)。
一个网段需要 60 台主机,最少用多少位掩码?
查看答案
需要 62 个可用地址,2^6-2=62,主机位 6 位,掩码为
/26(255.255.255.192)。
10.0.0.0/8、172.16.0.0/12、192.168.0.0/16 分别属于哪类私有地址?
查看答案
10.0.0.0/8 是私有 A 类;172.16.0.0/12 是私有 B 类范围;192.168.0.0/16 是私有 C 类范围。
169.254.x.x 是什么地址,什么时候出现?
查看答案
链路本地地址(APIPA),当主机启用 DHCP 但没拿到地址时会自动给自己配一个,只能同网段通信。
子网和 VLAN 分别工作在 OSI 的哪一层,靠什么划分?
查看答案
子网是三层 L3,靠 IP 地址 + 子网掩码划分;VLAN 是二层 L2,靠交换机的端口/策略划分广播域。
Access 口和 Trunk 口在收发包时对 VLAN 标签的处理有什么不同?
查看答案
Access 口收帧时打上本口 VLAN 标签,发帧时剥掉标签;Trunk 口收帧检查标签,发帧带标签(native VLAN 除外)。
VLAN ID 的范围是多少?802.1Q 标签占几个字节?
查看答案
VLAN ID 范围 1–4094(12 位),802.1Q 标签共 4 个字节。
两个不同 VLAN 的主机要通信,需要什么设备/配置?
查看答案
需要三层设备:路由器做单臂路由(子接口),或三层交换机配 SVI/VLANIF 作为各 VLAN 的网关。
VLAN 划分有哪几种方式?最常用的是哪种?
查看答案
基于端口、MAC、协议、IP 子网、策略;最常用的是基于端口。
什么是大二层?服务器网卡应该接 Access 还是 Trunk?
查看答案
大二层指服务器网卡接交换机 Trunk 口,网卡自身像一台交换机,承载多台虚拟机的多个 VLAN。应接 Trunk。
一台 24 口交换机,端口 1-12 划 VLAN 10,13-24 划 VLAN 20,要把另一台交换机接进来让两个 VLAN 都能通,应该怎么接?
查看答案
两台交换机之间用 Trunk 口互联,并在 Trunk 上放行 VLAN 10 和 VLAN 20。