2011-03-29 48 views
1

我只是在CIDR notaion subneting网络地址的问题,任何人都可以为我解释吗? 比如我怎样才能解决这个问题:subid在cidr符号

给子网地址在CIDR标记,如果网络地址197.23.37.128/25 分为4个子网(可以使用第一和最后一个子网)

任何帮助,将不胜感激

+0

这是一个功课问题吗?如果是这样,请添加标签'homework'。 – sarnold 2011-03-29 04:22:00

+0

不,我有答案,但我不知道如何计算它!!!!! – Tara 2011-03-29 04:23:44

回答

0

你可能会看看关于CIDR的维基百科文章。/25表示地址的前25位用于识别网络。这留下7位来标识单个主机或128个主机地址。如果你划分(4)剩余的地址,那么你得到32个主机的块。

1

有一个伟大的perl script available,这将帮助你想象它是如何工作的。输出示例:

$ ./ipcalc 197.23.37.128/25 
Address: 197.23.37.128  11000101.00010111.00100101.1 0000000 
Netmask: 255.255.255.128 = 25 11111111.11111111.11111111.1 0000000 
Wildcard: 0.0.0.127   00000000.00000000.00000000.0 1111111 
=> 
Network: 197.23.37.128/25  11000101.00010111.00100101.1 0000000 
HostMin: 197.23.37.129  11000101.00010111.00100101.1 0000001 
HostMax: 197.23.37.254  11000101.00010111.00100101.1 1111110 
Broadcast: 197.23.37.255  11000101.00010111.00100101.1 1111111 
Hosts/Net: 126     Class C 

问题中掩码的网络部分长度为25位。如果你想把它分成4个子网,你需要两个比特。 (因为math.pow(2,2) == 4)所以你必须把它扩展到/ 27,具体如下:

$ ./ipcalc 197.23.37.128/27 
Address: 197.23.37.128  11000101.00010111.00100101.100 00000 
Netmask: 255.255.255.224 = 27 11111111.11111111.11111111.111 00000 
Wildcard: 0.0.0.31    00000000.00000000.00000000.000 11111 
=> 
Network: 197.23.37.128/27  11000101.00010111.00100101.100 00000 
HostMin: 197.23.37.129  11000101.00010111.00100101.100 00001 
HostMax: 197.23.37.158  11000101.00010111.00100101.100 11110 
Broadcast: 197.23.37.159  11000101.00010111.00100101.100 11111 
Hosts/Net: 30     Class C 

得到5位的下一组,添加一个网络掩码:

$ python 
>>> 128 + 0b100000 
160 

所以你的下一个子网是197.23.37.160/27,依此类推。