判断对方主机是否在同一个网段

本文详细介绍了IP地址的构成及其子网划分方法,包括网络ID与主机ID的概念、CIDR表示法、子网掩码的应用等,并通过实例演示如何确定网络ID、计算主机数量及判断是否在同一网段。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

IP地址由两部分组成:
网络 ID:标识网络,每个网段分配一个网络ID,处于高位
主机 ID:标识单个主机,由组织分配给各设备,处于低位

CIDR 无类域间路由表示法:IP/网络ID位数,如:172.16.0.100/16

netmask子网掩码:32位(IPv4)或128位(IPv6)的数字,和IP成对使用,用来确认IP地址中的网络ID和主机ID,对应网络ID的位为1,对应主机ID的位为0

子网掩码的八位:
10000000 128
11000000 192
11100000 224
11110000 240
11111000 248
11111100 252
11111110 254
11111111 255 


常用公式:
一个网络的最多的主机数=2^主机ID位数-2
网络(段)数=2^网络ID中可变的位数
网络ID=IP与netmask
网络ID+主机ID=32位
与运算:和0相与结果为0;和1相与结果保留原值


1、一个主机:203.101.123.163/28
子网掩码:255.255.255.240
主机数:2^(32-28)-2=14
网络ID=160,即203.101.123.160
IP范围:203.101.123.161~203.101.123.174

解析:
网络ID=IP与netmask
163转化为二进制为10100011
240转化为二进制为11110000
相与的结果为:10100000,转化为十进制为160
此网段的主机中最小的IP:203.101.123.161(160+1),最大的IP为:203.101.123.174(160+14)

2、一个主机:172.16.1.100/28
子网掩码:255.255.255.240
主机数=2^(32-28)-2=14
网络ID=96,即172.16.1.96
IP范围:172.16.1.97~172.16.1.110

解析:
IP和子网掩码相与
100转化为二进制为1100100
240转化为二进制为11110000
相与的结果为:1100000,转化为十进制为96
此网段的主机中最小的IP:172.16.1.97(96+1),最大的IP为:172.16.1.110(96+14)


判断对方主机是否在同一个网段:
判断方法:用自已的子网掩码分别和自已的IP及对方的IP相与,比较结果,相同则同一网络,不同则不同网段


判断A和B是否在同一个网段?
A:10.0.0.1/24
B:10.0.0.2/24
前24位一样,属于同一网段

A:10.0.1.1/24
B:10.0.2.2/24
前24位不一样,不在同一网段


A: 10.0.1.1/16
B: 10.0.2.2/24

A:(1)用自已的IP和自己的子网掩码相与
10.0.0.1和255.255.0.0相与,相与的结果为:10.0.0.0
(2)用对方的IP和自己的子网掩码相与
10.0.0.2和255.255.0.0相与,相与的结果为:10.0.0.0
(3)10.0.0.0=10.0.0.0
所以,A访问B,属于同一网段

B:(1)用自已的IP和自己的子网掩码相与
10.0.2.2和255.255.255.0相与,相与的结果为:10.0.2.0
(2)用对方的IP和自己的子网掩码相与
10.0.1.1和255.255.255.0相与,相与的结果为:10.0.1.0
(3)10.0.2.0 !=10.0.1.0
所以,B访问A,不属于同一网段

A: 210.123.222.100/20
B: 210.123.198.100/20

222转换成二进制为:11011110
198转换成二进制为:11000110
分别取前4位
1101 !=1100
所以,A和B,不属于同一网段


A: 172.18.0.100/24
B: 172.18.10.100/16
A和B相互不能通信,但可以上网,因为都在同一网关,都是172.18.0.1网段

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一直在努力学习的菜鸟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值