最開始的IP地址分為ABCDE五類。除了D類是組播地址和E類是保留地址外,ABC都是可分配給主機的IP,其中A類前8位是net-id,後24位是host-id,顯然咯,那A類地址最大可用網路數是2的7次方-2對吧(127是迴環地址,從00000001到11111110)就是126個,那A類的最大主機數顯然是2的24次方-2個吧(主機號不可以是全0或者全1)。那這樣整個A類網路的地址就是這兩個數再相乘,大約是21億多。
依次類推,B類前16位是網路號(net-id),後16位是主機號(host-id),所以B類網路總共的主機數是(2^14-1)*(2^16-2)大約等於10億多;C類前24位是網路號,後8位是主機號,C類總共主機數是(2^21-1)*(2^8-2)大約等於5億多。
總共加起來是37億2千萬多,也就是IPV4總共有37億多可分配的IP地址。
但IPV4以前的使用效率是極其低下的,若僅僅用這5類地址來劃分廣播域,那A類地址的利用率就慘不忍睹了,哪怕一個公司只有幾臺機器,他也要分配一個獨一無二的網路號,而正如你所見,A類地址的網路號只有126個,每個網路號能承受的主機號卻異常多,有1600多萬,難道世界上只有126家公司,每個超級大公司又有1600多萬臺電腦?顯然不可能,問題就出在主機號太長上。
接下來就是三級IP的概念,從主機號中拿出前幾位來做子網號(可以透過IP跟子網掩碼進行與運算得到分配的子網號有幾位),繼續劃分廣播域,這樣子利用率上升了一些,但也不是很高,舉個例子,一個大公司,有33個部門,每個部門有大約600臺機器,若要分配給他們公司一個B類地址,部門33個也就是2^5到2^6之間,要6位子網號,機器數600臺,在2^9到2^10之間,要10位主機號,你可以看到使用率是多麼低下,因為6位子網號和10位主機號,最大可以供64個部門,每個部門1022臺機器使用,現在呢,33個部門,每個部門600臺機器就要佔掉這麼多位數。利用率僅僅是50%多一點。樓主說的“為什麼IP地址類只可以容納1千多萬臺主機”,雖然你的表述有誤,但意思應該是表達的這個,就是IP地址的利用效率低下。
後來又有了CIDR(無分類編制)和NAT(網路地址轉換),CIDR是消除了ABC類的概念,用變長子網掩碼的方式劃分子網,反正IP和子網掩碼與運算就得到子網號,那我純粹用子網號的位數劃分廣播域就好了,幹嗎還要ABC來強行規定多少位網路號呢。這樣子使利用率再次提升。NAT就更牛了,它原先是為了安全考慮隱藏IP,而隨機分配給主機一個私有IP,而私有IP與網際網路通訊時經過一個NAT路由器轉換成一個公用IP,它的牛逼之處就是不同NAT路由下的各個主機的IP可以重複使用!!就像咱們給檔案命名,同一個資料夾內的檔案不能叫同一個名字,但只要是兩個不用的資料夾,就可以有同一個名字的檔案。要知道,在NAT出現之前,要求的是整個網際網路都不能有重複的IP,就像要求你整個電腦都不能有兩個同樣名字的檔案一樣,你可想而知以前給主機分配IP有多麼蛋疼了。
有了CIDR和NAT,現在的IP利用率已經好多了,不過顯然IPV4的總數並不多,只有37億多點,CIDR和NAT只是提高利用率,NAT分配的私有IP網段的主機數也不是很多,實際上增加的主機數也沒多多少,所以目前能解決IP地址耗盡的根本方法就是推廣IPV6了(主要是跟老美協商儘快推進IPV6的使用,他們手裡有大量的A類B類地址,主機數大的很,一點都不擔心地址耗盡,反而是我們,13億人分那麼點C類地址,緊張的很),IPV6的地址從4位元組漲到了16位元組,總共的主機數是IPV4的2^96倍,是個很大很大的數,足夠用了。
最開始的IP地址分為ABCDE五類。除了D類是組播地址和E類是保留地址外,ABC都是可分配給主機的IP,其中A類前8位是net-id,後24位是host-id,顯然咯,那A類地址最大可用網路數是2的7次方-2對吧(127是迴環地址,從00000001到11111110)就是126個,那A類的最大主機數顯然是2的24次方-2個吧(主機號不可以是全0或者全1)。那這樣整個A類網路的地址就是這兩個數再相乘,大約是21億多。
依次類推,B類前16位是網路號(net-id),後16位是主機號(host-id),所以B類網路總共的主機數是(2^14-1)*(2^16-2)大約等於10億多;C類前24位是網路號,後8位是主機號,C類總共主機數是(2^21-1)*(2^8-2)大約等於5億多。
總共加起來是37億2千萬多,也就是IPV4總共有37億多可分配的IP地址。
但IPV4以前的使用效率是極其低下的,若僅僅用這5類地址來劃分廣播域,那A類地址的利用率就慘不忍睹了,哪怕一個公司只有幾臺機器,他也要分配一個獨一無二的網路號,而正如你所見,A類地址的網路號只有126個,每個網路號能承受的主機號卻異常多,有1600多萬,難道世界上只有126家公司,每個超級大公司又有1600多萬臺電腦?顯然不可能,問題就出在主機號太長上。
接下來就是三級IP的概念,從主機號中拿出前幾位來做子網號(可以透過IP跟子網掩碼進行與運算得到分配的子網號有幾位),繼續劃分廣播域,這樣子利用率上升了一些,但也不是很高,舉個例子,一個大公司,有33個部門,每個部門有大約600臺機器,若要分配給他們公司一個B類地址,部門33個也就是2^5到2^6之間,要6位子網號,機器數600臺,在2^9到2^10之間,要10位主機號,你可以看到使用率是多麼低下,因為6位子網號和10位主機號,最大可以供64個部門,每個部門1022臺機器使用,現在呢,33個部門,每個部門600臺機器就要佔掉這麼多位數。利用率僅僅是50%多一點。樓主說的“為什麼IP地址類只可以容納1千多萬臺主機”,雖然你的表述有誤,但意思應該是表達的這個,就是IP地址的利用效率低下。
後來又有了CIDR(無分類編制)和NAT(網路地址轉換),CIDR是消除了ABC類的概念,用變長子網掩碼的方式劃分子網,反正IP和子網掩碼與運算就得到子網號,那我純粹用子網號的位數劃分廣播域就好了,幹嗎還要ABC來強行規定多少位網路號呢。這樣子使利用率再次提升。NAT就更牛了,它原先是為了安全考慮隱藏IP,而隨機分配給主機一個私有IP,而私有IP與網際網路通訊時經過一個NAT路由器轉換成一個公用IP,它的牛逼之處就是不同NAT路由下的各個主機的IP可以重複使用!!就像咱們給檔案命名,同一個資料夾內的檔案不能叫同一個名字,但只要是兩個不用的資料夾,就可以有同一個名字的檔案。要知道,在NAT出現之前,要求的是整個網際網路都不能有重複的IP,就像要求你整個電腦都不能有兩個同樣名字的檔案一樣,你可想而知以前給主機分配IP有多麼蛋疼了。
有了CIDR和NAT,現在的IP利用率已經好多了,不過顯然IPV4的總數並不多,只有37億多點,CIDR和NAT只是提高利用率,NAT分配的私有IP網段的主機數也不是很多,實際上增加的主機數也沒多多少,所以目前能解決IP地址耗盡的根本方法就是推廣IPV6了(主要是跟老美協商儘快推進IPV6的使用,他們手裡有大量的A類B類地址,主機數大的很,一點都不擔心地址耗盡,反而是我們,13億人分那麼點C類地址,緊張的很),IPV6的地址從4位元組漲到了16位元組,總共的主機數是IPV4的2^96倍,是個很大很大的數,足夠用了。