在tcp/ip协议中,用于在ip层识别连接到因特网设备的标识符称为因特网地址或ip地址.ipv4地址是一个32位的地址。
像ipv4这种定义了地址的协议都有一个地址空间。地址空间就是协议所使用的地址的总数。如果一个协议用b位来定义地址。那么这个协议的地址空间就是2^b。根据这个我们就知道ipv4的地址空间是2^32 (超过了40亿)。
ipv4地址的记法有下面三种方式:
二进制记法
点分10进制记法 (我们最常见的)
16进制记法
在二进制记法中,ipv4的地址表现为32位。为了使这个地址有更好的可读性,通常每8位之间加一空格。 下面试ivp4地址二进制记法的一个例子
01110001 10001111 11110000 10101001
我们看上面的二进制记法不怎么方便阅读,那现实生活中经常采用的就是点分10进制记法。因为1个字节表示的最大数字是0-255。那么我们采用10进制记法来记ipv4地址。就可以采用4个0-255的10机制数字来表示。如:
192.168.2.3
一个16进制可以用来表示4位2进制数据,那么ipv4用16进制记就需要用8个16进制的数来表示。将二进制记法的每4位转成16进制就是ipv4的16进制的记法。这种记法在ipv4中很少见。但是ipv6就是采用16进制记的。(关于ipv6在后面的文章中会有说到的)
假设我们知道一段地址的首地址和未地址,那怎么怎么这个地址段的地址个数呢?看看下面你就知道怎么做了哦
看了上面两个题目我们就知道用什么算法求地址个数,以及首地址、末地址了吧。可以用我们熟悉的编程语言根据这个算法做个小工具。