IP 地址与子网掩码的计算方法
一、基础概念
1. IP 地址
IP地址是用于标识网络中设备的逻辑地址,由32位(IPv4)或128位(IPv6)二进制数组成IPv4地址通常表示为点分十进制(如192.168.1.1)分为网络部分和主机部分
关键结论:IP地址 = 网络标识 + 主机标识
2. 子网掩码
子网掩码(Subnet Mask)用于区分IP地址中的网络部分和主机部分由连续的1(网络位)和连续的0(主机位)组成常见表示形式:
点分十进制:255.255.255.0CIDR表示法:/24
二、核心计算方法
1. 网络地址计算
网络地址 = IP地址 AND 子网掩码
示例:
IP: 192.168.1.100
掩码: 255.255.255.0
计算过程:
192.168.1.100 → 11000000.10101000.00000001.01100100
255.255.255.0 → 11111111.11111111.11111111.00000000
AND运算结果 → 11000000.10101000.00000001.00000000 → 192.168.1.0
2. 广播地址计算
广播地址 = 网络地址 OR (NOT 子网掩码)
示例:
网络地址: 192.168.1.0
掩码: 255.255.255.0
NOT掩码: 0.0.0.255
OR运算: 192.168.1.255
关键结论:广播地址是子网内最后一个IP地址
3. 可用主机范围
起始地址 = 网络地址 + 1结束地址 = 广播地址 - 1
示例:
网络地址: 192.168.1.0
广播地址: 192.168.1.255
可用范围: 192.168.1.1 - 192.168.1.254
三、高级计算技巧
1. CIDR与子网掩码转换
CIDR表示法:/n表示前n位是网络位转换公式:掩码 = 256 - 2^(32-n)
示例:
/24 → 255.255.255.0
/25 → 255.255.255.128
/26 → 255.255.255.192
2. 子网划分
步骤:
确定需要的子网数计算需要借用的主机位数:2^m ≥ 子网数新的子网掩码 = 原掩码 + 借用的位数
示例:
原网络:192.168.1.0/24
需要划分4个子网
计算:
2^2=4 → 需要借用2位
新掩码:/26 (24+2)
子网块大小:256/4=64
子网列表:
192.168.1.0/26
192.168.1.64/26
192.168.1.128/26
192.168.1.192/26
3. VLSM计算
可变长子网掩码允许不同子网使用不同掩码
示例:
需求:
- 子网A:60主机
- 子网B:30主机
- 子网C:10主机
计算:
子网A:/26 (62主机) → 192.168.1.0/26
子网B:/27 (30主机) → 192.168.1.64/27
子网C:/28 (14主机) → 192.168.1.96/28
四、典型面试题解析
1. 基础计算题
题目:给定IP地址172.16.35.123/20,求:
网络地址广播地址可用IP范围
解答:
/20掩码:255.255.240.0网络地址:
172.16.35.123 AND 255.255.240.035 = 00100011240 = 11110000AND结果:00100000 → 32→ 172.16.32.0
广播地址:
主机位全1:172.16.47.255
可用范围:172.16.32.1 - 172.16.47.254
2. 子网划分题
题目:将192.168.0.0/24划分为至少5个子网,每个子网至少30台主机
解答:
需要5子网 → 借用3位(2^3=8)新掩码:/27每个子网主机数:2^5-2=30子网列表:
192.168.0.0/27192.168.0.32/27…192.168.0.224/27
关键结论:实际工程中应考虑未来扩展,建议预留20%余量
五、实用工具推荐
二进制转换技巧:
记住关键位权值:128 64 32 16 8 4 2 1快速判断子网边界
速查表:
CIDR掩码主机数/24255.255.255.0254/25255.255.255.128126/26255.255.255.19262/27255.255.255.22430
验证工具:
Linux: ipcalcWindows: 在线子网计算器Cisco Packet Tracer
六、常见误区
网络地址与网关混淆:
网络地址是计算得出的网关通常是网络地址+1(但不强制)
全0全1地址:
传统网络:主机位全0/全1不可用现代设备:通常支持全0全1地址
公有/私有地址混淆:
私有地址范围:
10.0.0.0/8172.16.0.0/12192.168.0.0/16
面试建议:明确区分理论规范与实际工程实践的差异