一道面试题搞懂网络地址的计算

网络地址的计算

面试题

判断A和B是否在同一网段,B和A是否在同一网段?

A:192.168.26.129/24
B:192.168.26.3/27

分析

  • 点分十进制表示法(Dotted Decimal Notation):用四个字节表示一个IP地址,每个字节按照十进制表示为0-255。
  • IP地址:用4个从0-255的数字表示
  • 子网掩码:32位地址(二进制表示:8*4),缩写为连续的1的个数,例如:
#一个字节8位,8个1的十进制为255,/24:即前面24个1加后面8个0
A:192.168.26.129/255.255.255.0
#/27:即前面24个1加后面3个1(1110 0000)
#二进制1110 0000 转十进制:前四位转十六进制(1110 -> 14*16)+ 后四位转十进制(0000 -> 0)
B:192.168.26.3/255.255.255.224
#十进制224转二进制:224除以16,整数商转为二进制的前四位,余数转为二进制的后四位

1.根据IP地址和子网掩码计算出网络位和主机位

网络位:子网掩码为1的连续位对应的IP为网络位(前)
A:192.168.26
/24指24位子网掩码,对应前24位(8位一字节,即一个十进制位)
B:192.168.26
/27指27位子网掩码,对应前24位+后3位,“后3位”表示如下
1110 0000
0000 0011
3的二进制表示如上,与子网掩码“1”位无交集,不影响网络位

主机位:子网掩码为0的连续位对应的IP为网络位(后)
A:.129
B:.3

2.网络地址(网段)和广播地址

将主机位全部置为0得到网络地址:
A:192.168.26.0
B:192.168.26.0
将主机位全部置为1得到广播地址:
A:192.168.26.255
B:192.168.26.255

3.判断IP地址是否是同一网段?

  • 自身IP + 自身子网掩码 -> 网络地址X
  • 目的IP + 自身子网掩码 -> 目的地的网络地址Y
  • 若X=Y,则在同一网段,否则不在
问题一:A和B是否在同一网段?
A是“自身IP”,B是“目的地IP”
网络地址 X = 192.168.26.129/24 = 192.168.26.0
目的地的网络地址 Y = 192.168.26.3/24 = 192.168.26.0
结论:A和B在同一网段,A可直接向B进行通信

问题二:B和A是否在同一网段?
B是“自身IP”,A是“目的地IP”
网络地址 X = 192.168.26.3/27 = 192.168.26.0
目的地的网络地址 Y = 192.168.26.129/27 = 192.168.26.128
结论:A和B不在同一网段,B需要借助网关才能向A发起通信

结论

  • 根据IP地址和子网掩码计算出网络位(掩码为“1”)和主机位(掩码为“0”)
  • 将主机位全部置为0得到网络地址
  • 将主机位全部置为1得到广播地址
  • 位于同一网段的IP可直接进行通信,否则需要借助网关
  • 主机范围数量:2的n次方(n表示主机位个数)
  • 可用主机范围数量:2的n次方 - 2(一个网络地址,一个广播地址,不可用)
  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值