计算网络地址

时间:2019-01-06 22:25:23

标签: ip-address subnet

问题如下。

考虑一个路由器,该路由器互连三个子网:A,B和C。假设每个接口中的所有接口 这些子网必须具有前缀119.61.96.0/19。假设子网A和B每个都需要 支持2000个接口,并且子网C需要支持4000个接口。提供以下地址 满足这些约束的A,B和C(形式为a.b.c.d / x)。

我对A的回答是119.61.112.0/21。

我认为这是可以接受的。我有点理解/ 21部分,即2 ^ 11,所以请从/ 21的32位来考虑。符合逻辑的东西。令我感到困惑的是为什么112可以接受。我试图将整个事情转换为二进制,但仍然看不到为什么。我知道您必须对2 ^ 11做一些事情,像这样吗? 0/000 0000 0000

无论如何,如果有人可以用正确的方式指我,如果我理解第一个,我应该能够弄清楚其余的人。如果我走了,我会道歉。

我很感激, 谢谢。

1 个答案:

答案 0 :(得分:0)

IPv4是4个字节(32位)。每个字节可以取0到255之间的值。

119.61.96.0/19表示最高的19位将始终相同:

二进制表示形式(左侧的高位):

01110111.00111101.01100000.00000000 

前19位:

01110111.00111101.011

子网A和B需要2000个地址,最接近的2的幂是11(2048)。这意味着他们需要11位的地址。

子网C需要4000个地址,最接近2的幂是12(4096)。这意味着他们需要12位地址。

对于C子网:

32 bits of IPv4 address 
- 19 bits (fixed) 
- 12 bits (address space) 
-------------------------
= 1 bits we can use to divide in subnets of 4096 addresses

如果(方便地用于OP)我们选择值为0的第20位作为C子网,则C定义为:

01110111.00111101.0110 = 119.61.96.0/20

对于A和B子网

32 bits of IPv4 address 
- 19 bits (fixed) 
- 11 bits (address space) 
-------------------------
= 2 bits we can use to divide in subnets of 2048 addresses

由于C子网将A和B的第20位设置为0,因此该位的值为1。 第21位(对于OP来说也是很方便的),我们将为子网A定义值为0,为子网B定义值为1。

子网A

01110111.00111101.01110 = 119.61.112.0/21

子网B

01110111.00111101.01111 = 119.61.120.0/21
相关问题