在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在後面的文章中會有說到的)
假設我們知道一段位址的首位址和未位址,那怎麼怎麼這個位址段的位址個數呢?看看下面你就知道怎麼做了哦
看了上面兩個題目我們就知道用什麼算法求位址個數,以及首位址、末位址了吧。可以用我們熟悉的程式設計語言根據這個算法做個小工具。