目录
如何换算
ip的二进制
每个IPv4地址通常以点分十进制表示,也可以用32位二进制表示。如192.168.10.10,将其化作32位二进制数为:11000000.10101000.00001010.00001010,分别将192、168、10、10化作二进制
与、或、取反运算
1、按位与运算符(&)
0&0=0 0&1=0 1&0=0 1&1=1
即有0为0,全1为1
例:10&198=00001010&11000110=00000010=2
2、按位或运算符( | )
0|0=0 0|1=1 1|0=1 1|1=1
即有1为1,全0为0
3、取反(~)
~0=1 ~1=0
掩码,子网地址,广播地址换算
掩码:有三种表现形式xxx.xxx.xxx.xxx和32位二进制数和/十进制数
例:255.255.255.0 -> 转化为二进制 -> 11111111.11111111.11111111.00000000 -> 有24个1 -> /24
例2:/12 -> 有12个1 -> 11111111.11110000.00000000.00000000 -> 转化十进制 -> 255.240.0.0
子网/网络地址:即ip和子网掩码的与运算
例:求192.168.1.100/25的子网地址
ip地址: 11000000.10101000.00000001.01100100
子网掩码:11111111.11111111.11111111.10000000
按位与运算求得网络地址:11000000.10101000.00000001.00000000即192.168.1.0
广播地址:即子网掩码取反后和网络地址或运算,即(~掩码)| 网络地址=广播地址。另一种方法:将网络地址的主机位(掩码为0的部分即是主机位)置为1即是广播地址
例:求192.168.1.100/25的广播地址
ip:11000000.10101000.00000001.01100100
掩码:11111111.11111111.11111111.10000000
网络地址:11000000.10101000.00000001.00000000
掩码取反:00000000.00000000.00000000.01111111
广播地址:11000000.10101000.00000001.01111111即192.168.1.127
子网数,主机数
子网数=2^n,其中n为子网位数(即A类地址:子网掩码-8,B类地址:子网掩码-16,C类地址:子网掩码-24)。例:/26,n=26-24=2,子网数为4。
主机数(可用IP)=2^N-2,其中N为主机部分位数(即32-子网掩码)。例:/26,N=32-26=6,主机数为62。
例题
1、求61.59.64.20/14,124.122.60.50/18,172.16.41.255/21,192.168.100.5/23的掩码,子网地址,广播地址
61.59.64.20/14
IP地址 00111101.00111011.01000000.00010100
掩码 11111111.11111100.00000000.00000000即255.252.0.0
子网地址 00111101.00111000.00000000.00000000即61.56.0.0
掩码取反 00000000.00000011.11111111.11111111
广播地址 00111101.00111011.11111111.11111111即61.59.255.255
124.122.60.50/18
IP地址 01111100.01111010.00111100.00110010
掩码 11111111.11111111.11000000.00000000即255.255.192.0
子网地址 01111100.01111010.00000000.00000000即124.122.0.0
掩码取反 00000000.00000000.00111111.11111111
广播地址 01111100.01111010.00111111.11111111即124.122.63.255
172.16.41.255/21
IP地址 10101100.00010000.00101001.11111111
掩码 11111111.11111111.11111000.00000000即255.255.248.0
子网地址 10101100.00010000.00101000.00000000即172.16.40.0
掩码取反 00000000.00000000.00000111.11111111
广播地址 10101100.00010000.00101111.11111111即172.16.47.255
192.168.100.5/23
IP地址 11000000.10101000.01100100.00000101
掩码 11111111.11111111.11111110.00000000即255.255.254.0
子网地址 11000000.10101000.01100100.00000000即192.168.100.0
掩码取反 00000000.00000000.00000001.11111111
广播地址 11000000.10101000.01100101.11111111即192.168.101.255
2、网络192.168.1.0/24,对其通过/27掩码做子网划分,请写出划分后子网数和每个子网有效主机数
子网数:2^(27-24)=8
有效主机数:2^(32-27)-2=30
3、某公司使用192.168.0.0/24网段,公司部门情况:财务部:20台主机,综合部:16台主机,销售部:60台主机,生产部46台主机。通过子网划分给部门分配网络地址,子网掩码及广播地址
财务部:192.168.0.0/26~192.168.0.63/26
综合部:192.168.0.64/26~192.168.0.127/26
销售部:192.168.0.128/26~192.168.0.191/26
生产部:192.168.0.192/26~192.168.0.255/26
4、某公司使用192.168.0.0/24网段,公司部门情况:财务部:20台主机,综合部:16台主机,销售部:65台主机,生产部:46台主机。通过子网划分给部门分配网络地址、子网掩码以及可用主机范围
财务部:192.168.0.0/27~192.168.0.31/27 192.168.0.1~192.168.0.30
综合部:192.168.0.32/27~192.168.0.63/27 192.168.0.33~192.168.0.62
销售部:192.168.0.128/25~192.168.0.255/25 192.168.0.129~192.168.0.254
生产部:192.168.0.64/26~192.168.0.127/26 192.168.0.65~192.168.0.126
5、使用掩码/23对172.16.0.0/16进行子网划分,划分后的子网数和每个子网中可用主机数分别是多少?
子网数:2^(23-16)=128
可用主机数:2^(32-23)-2=510
6、IP地址172.16.10.100/22所在子网号和所在子网的广播地址分别是什么?
IP地址:10101100.00010000.00001010.01100100
掩码:11111111.11111111.11111100.00000000
网络地址:10101100.00010000.00001000.00000000即172.16.8.0/22
掩码取反:00000000.00000000.00000011.11111111
广播地址:10101100.00010000.00001011.11111111即172.16.11.255/22
答:子网地址:172.16.8.0/22
广播地址:172.16.11.255/22
7、掩码为255.240.0.0,255.255.240.0,255.255.255.240的各个网络中可以容纳多少台主机?
255.240.0.0 -> /12 容纳主机数:2^(32-12)-2 = 2^20-2 = 1028574
255.255.240.0 -> /20 容纳主机数:2^(32-20)-2 = 2^12-2 = 4094
255.255.255.240-> /28 容纳主机数:2^(32-28)-2 = 14
8、如果一个网络中,最多可以容纳29个主机,请算出该网络的子网掩码是多少?
2^(32-x)-2=29显然算不通,2^N一般是指ip数量,而减去2则是网络地址和主机地址,网关可能还要用一个,所以用2^(32-x)-3=29公式
所以子网掩码/27