目录
子网掩码详解
子网掩码定义
子网掩码进一步解释
子网掩码的作用
计算总结表
子网掩码计算
子网掩码对应IP数量计算
判断IP是否在同一网段
1. 计算步骤
2. 示例
3. 关键点
总结
不同网段通信原理与Ping流程
1. 同网段通信
2. 跨网段通信
网段计算示例
3. Ping命令的作用
总结
子网掩码详解
子网掩码定义
- 子网掩码(Subnet Mask)是一个32位二进制数,用于标识IP地址中网络号和主机号的分界。
- 示例:
255.255.255.0
(二进制:11111111.11111111.11111111.00000000
)表示前24位为网络号。
- 示例:
-
ip地址分为两个部分
-
网络部分:标识子网,也就是网络位或者说网段
-
主机部分:标识主机
-
-
注意:单纯的ip地址段只是标识了ip地址的种类
-
从网络部分或主机部分都无法辨识一个ip所处的子网
-
例:172.16.10.1与172.16.10.2并不能确定二者处于同一子网
-
子网掩码进一步解释
- 所谓"子网掩码",就是表示子网络特征的一个参数。
- 它在形式上等同于IP地址。
- 也是一个32位二进制数字,它的网络部分全部为1,主机部分全部为0。
- 比如,IP地址172.16.10.1。
如果已知网络部分是前24位
主机部分是后8位
上面说的是二进制
那么子网络掩码就是11111111.11111111.11111111.00000000
写成十进制就是255.255.255.0。
子网掩码的作用
- 划分网络:确定IP地址的网络部分和主机部分。
- 路由决策:路由器根据子网掩码判断目标是否在同一网段。
- 减少广播域:分割广播域,优化网络性能。
- 决定了一个网段的大小
- 网段大小决定了有多少个ip地址可以用,网段越大,ip地址越多
ip地址:192.168.2.110 子网掩码:255.255.255.0
上面两个还有一个等效的写法:192.168.2.110/24
计算总结表
CIDR值 | 子网掩码 | 主机位数 | 总地址数 | 可用地址数 | 常见场景 |
---|---|---|---|---|---|
/8 | 255.0.0.0 | 24 | 16,777,216 | 16,777,214 | 国家级网络 |
/16 | 255.255.0.0 | 16 | 65,536 | 65,534 | 中型企业 |
/24 | 255.255.255.0 | 8 | 256 | 254 | 家庭/小型办公室 |
怎么确定网段的大小呢,就要看子网掩码。
8位、16位、24位等就是代表子网掩码的值的。
数字越小的,表示网段越大
192.168.2.118/24 10.0.0.0/8 172.16.0.0/16
子网掩码计算
- 步骤示例(划分
192.168.1.0/24
为4个子网):- 确定需要的主机数:每个子网至少支持30台设备 → 主机号需5位(2^5=32,保留全0和全1地址)。
- 子网掩码:原为
/24
(255.255.255.0),新增2位网络号 → 变为/26
(255.255.255.192)。 - 子网划分结果:
- 子网1:192.168.1.0/26(可用地址1-62)
- 子网2:192.168.1.64/26(可用地址65-126)
- 子网3:192.168.1.128/26(可用地址129-190)
- 子网4:192.168.1.192/26(可用地址193-254)
子网掩码对应IP数量计算
255.255.255.0前面的255.255.255对应二进制就是24个1。
也就是对应的ip地址的前面24位是不变的,那么ip地址的这24位就是网络位。
剩余的8位是主机位,网络位不变,主机位是可变的,可变的ip数量。
就是这个网段的ip地址数量,共2的8次方=256个,就可以写为172.16.10.1/24
但是172.16.10.0和172.16.10.255都被保留下来不让主机使用
172.16.10.0作为网络号,通过网络号可以找到这个网络号对应网段的网络了,172.16.10.255是广播地址,这个广播地址我们一会说。
也就是可用ip地址个数为256-2=254个。
所以ip协议有两个作用
- 一个是为每一台计算机分配IP地址
- 另一个是确定哪些地址在同一个子网络。
判断IP是否在同一网段
1. 计算步骤
- 将IP地址和子网掩码转换为二进制。
- 对两者进行按位AND运算,得到网络地址。
- 比较两个IP地址的网络地址是否相同。
2. 示例
问题:判断以下两个IP地址是否在同一个子网。
- IP地址1:172.16.10.1
- IP地址2:172.16.10.2
- 子网掩码:255.255.255.0
计算过程:
-
转换为二进制:
- IP地址1:
10101100.00010000.00001010.00000001
- IP地址2:
10101100.00010000.00001010.00000010
- 子网掩码:
11111111.11111111.11111111.00000000
- IP地址1:
-
按位AND运算:
- IP地址1与子网掩码:
10101100.00010000.00001010.00000001 (172.16.10.1) AND 11111111.11111111.11111111.00000000 (255.255.255.0) ----------------------------------- 10101100.00010000.00001010.00000000 (172.16.10.0)
- IP地址2与子网掩码:
10101100.00010000.00001010.00000010 (172.16.10.2) AND 11111111.11111111.11111111.00000000 (255.255.255.0) ----------------------------------- 10101100.00010000.00001010.00000000 (172.16.10.0)
- IP地址1与子网掩码:
-
比较网络地址:
- 两个IP地址的网络地址均为
172.16.10.0
。
- 两个IP地址的网络地址均为
结论:两个IP地址在同一个子网中。
3. 关键点
- 子网掩码的作用:用于划分IP地址的网络部分和主机部分。
- 按位AND运算:通过逻辑运算提取网络地址。
- 网络地址相同:若两个IP地址的网络地址相同,则它们在同一个子网中。
总结
通过将IP地址和子网掩码转换为二进制并进行按位AND运算,可以快速判断两个IP地址是否在同一个子网中。这种方法简单高效,是网络配置和故障排查中的常用技巧。
不同网段通信原理与Ping流程
1. 同网段通信
- 原理:同一网段的IP地址,物理线路接通后可以直接通信。
- 流程:
- 设备A(192.168.1.10/24)向设备B(192.168.1.20/24)发送数据包。
- 检查目标IP是否在同一子网(网络号相同)。
- 通过ARP协议获取目标MAC地址。
- 直接通过交换机或Hub传输数据。
2. 跨网段通信
- 原理:不同网段的IP地址,即使物理线路接通,也不能直接通信,需要通过路由器转发。
- 流程:
- 设备A(192.168.1.10/24)向设备C(10.0.0.5/24)发送数据包。
- 发现目标IP不在同一子网。
- 将数据包发送至默认网关(如192.168.1.1)。
- 网关路由器根据路由表转发至目标网络。
- 目标网络的路由器通过ARP找到设备C并交付数据。
网段计算示例
- 问题:网络位25位,主机位7位,判断两个IP地址是否在同一网段。
- 计算过程:
- IP地址1:192.168.100.126
- 二进制:
11000000 10101000 01100100 01111110
- 子网掩码:
11111111 11111111 11111111 10000000
(255.255.255.128) - 逻辑与运算结果:
192.168.100.0
- 二进制:
- IP地址2:192.168.100.129
- 二进制:
11000000 10101000 01100100 10000001
- 子网掩码:
11111111 11111111 11111111 10000000
(255.255.255.128) - 逻辑与运算结果:
192.168.100.128
- 二进制:
- IP地址1:192.168.100.126
- 结论:两个IP地址的网络号不同(192.168.100.0 vs 192.168.100.128),不在同一网段,无法直接通信。
3. Ping命令的作用
- 验证连通性:通过发送ICMP Echo Request报文,检测目标设备是否可达。
- 路径诊断:结合
tracert
(Windows)或traceroute
(Linux)命令,分析数据包从源到目标的路径,帮助排查网络故障。
总结
- 同网段通信:直接通过ARP和交换机完成。
- 跨网段通信:依赖路由器转发,涉及默认网关和路由表。
- 网段计算:通过子网掩码和逻辑与运算判断IP地址是否在同一网段。
- Ping命令:用于测试连通性和诊断网络路径。
通过以上内容,您可以更好地理解不同网段通信的原理、网段计算方法以及Ping命令的实际应用。
喜欢本文的请动动小手点个赞,收藏一下,有问题请下方评论,转载请注明出处,并附有原文链接,谢谢!如有侵权,请及时联系。