如題,我在這方面不是很懂。都在說IPv4數量不夠,那為什麼IP最高被限制在了255.255.255.255而不能繼續擴大


其他回答講的都複雜了,又是引入協議的。又是。。

其實255.255.255.255是11111111.11111111.11111111.11111111

111111111為二進位表示。換成10進位就是255。他已經是8位二進位表示的最大值了,所以不能表示999等超過255的值

本質來說就是進位轉換帶來的問題而已


首先說結論,ip地址(ipv6)現在已經擴大到了2的128次方個,可以說近乎於無限

有人計算過,地球上每一平方米,都可以有10的26次方個地址

所以在ipv6網路中,相鄰的兩台電腦可以配置相隔100萬個地址,浪費掉99萬都沒問題。

有錢人的生活就是這樣的樸實無華且枯燥。

這樣分配除了壕還有其他好處嗎?

當然有,很多惡意的網路掃描工具(先掃描到在線主機,再攻擊或植入病毒),是按順序來掃描的,ipv6兩台主機之間間隔100萬,就要掃到天荒地老才能掃到第二台主機。

用上了ipv6,這些掃描工具就會有很多問號

所以用上了ipv6除了地址數量變多了,網路也更加安全了

再回到題主的問題

為什麼IP地址最高只能到255.255.255.255,而不能擴大到999.999.999.999?

這裡的4個255,是ipv4的地址範圍,為什麼只能到4個255而不是4個999,或者4個666

是因為ipv4在設計的時候,制定的地址格式為32位二進位,然後分成4段用十進位來表示

也就是說,ipv4最大為二進位的32個1,這樣

11111111.11111111.11111111.11111111

然後打開windows計算器,進位換算一下,發現變成十進位後,就是4個255了

這就是ipv4地址最大隻到255.255.255.255的原因

那麼問題又來了,為什麼要設置成32位,不設置成更多呢

因為當初設計Internet網的時候,是為了給軍方用的,誰知道網這麼好玩,大家都加進來玩了啊

這樣地址就遠遠不夠了

所以又發明了ipv6啊,ipv6就設置成了128位的地址,這下每粒沙子都能分個地址了,應該不會再不夠了

推薦閱讀

0.0.0.0和255.255.255.255這兩個IP地址到底有啥用??

www.zhihu.com圖標

因為計算機不認識十進位,只認識二進位,ipv4版本里ip地址是4個8位二進位組。

比如39.156.69.79這個地址其實應該這麼表示:00100111.10011100.01000101.01001111

理論上ip地址最高到255.255.255.255

其實中間還有組播地址、廣播地址、保留地址等等不能分配給組織或個人使用。

ipv4地址應該在2019年全部分配完畢,最後分配完畢的應該是非洲。

雖然有了ipv6,但是總要有個過度階段。那麼為什麼現在沒有因為ipv4地址分配完畢,ipv6沒有完全普及而導致網路不能使用,是因為有保留地址,大部分區域網使用的是保留地址。

例如平時看到的192.168.x.x 172.16.x.x 10.x.x.x ,這些都是RFC 1918規定的不能在互聯網使用,但是可以在組織內部使用的地址。

這些地址最後通過路由器、防火牆之類的網關設備實現地址轉換功能,代理內部用戶使用互聯網。

國家也在推動ipv6上面有《推進IPv6規模部署行動計劃》,具體到2020年普及到什麼程度我也懶得查數據了。

不過總的來說ipv4和ipv6將並行很長一段時間,ipv4現在雖然不夠用了但是也能通過技術手段勉強使用。ipv6的可分配兩套用一句話是地球上每一顆沙子都可以分配一個IP。

我回答好像超綱了。


不從複雜的原理出發,大白話講給不具備專業知識的人聽。

當然可以擴大,並且我們正在擴大,我們不僅要擴大到999.999.999.999,我們要擴大到4294967295.4294967295.4294967295.4294967295,這就是IPv6。IP最高被限制在255.255.255.255是因為當初制定協議的時候計算機並沒有普及,只有科學家們才可能接觸到計算機這種東西,所以磚家們以為這些IP足夠全世界用了,所以他們一拍腦門就決定了,255足夠了!因此之後的所有程序,硬體都把IP都限制在255以內,可以這樣理解,程序和硬體的廠商在製造他們產品的時候都按照255這個標準製作的,他們可以保證只要你IP不超過255,我的程序和硬體就能正常工作,就好比牛奶的保質期,廠家能保證你30天內喝是沒問題的,30天後他們就不能保證產品質量了。然而突然有一天你要增大這個數值,那麼所有產品都要進行升級才行,然而我們不可能將所有設備同時升級,我們要一步一步來慢慢過渡,這將是艱難且漫長的過程。


數據在傳輸的時候, 其實都是電信號, 理論上電路只存在通與不通, 我們將通定義為0, 將不通定義為1. 所以設備傳輸的是 0 , 1 , 0 , 1.... 的電信號. 網路設備或者說傳輸設備, 在接收到這些 0.1.0.1 的信號以後, 按照人類提前規劃好的某種協定去把它翻譯成對應的內容.

你可以理解成, 一次完整的發送數據, 裡面要包含 "目的地"跟"來源地"(方便目的地在收到數據的時候, 知道是誰發過的.) 然後才是實際發送的內容(是不是就像寫信一樣). 但是信紙不能無限大.我們要規定一下, 一次只能發送一張信紙. 所以我們就提前確定好. 目的地一共能寫多少字, 不能一個目的地就佔了一封信的所有內容. 所以我們在協定里說好了. 從信號里可以依次看到 ip地址, 埠號, 上層協議 ....等等的內容.

協議里規定了(就是很早的時候一群人商量好, 我們要這樣區分信號里的內容). 以32個電信號確定一個IP地址. 實際傳輸的時候其實就是 00000000000000000000000000000000(不用數, 一共是32個0 ) - 11111111111111111111111111111111(同樣為32個1) 這之間所有的組合. 在這裡的並不是二進位. 只是對應數據報文里的電信號(通, 不通...)的所有可能. 但是我們人類可以將它理解成二進位的數罷了. 也就是 2的32次方種可能. 也就是 2的32次方(4294967296?)個地址. 不用數了: 42.9億個. 這樣看起來就不覺得地址多了吧.[2019年年末中國大陸總人口突破14億人].

但是呢, 發送數據的時候. 人類太懶了, 腦子也不行. 覺得這麼多0跟1的組合, 根本記不住. 畢竟有的時候你可能只跟某一個人(目的地)發送或者接收數據. 可是 4294967296 這種一連串的數字也太麻煩. 人類還是喜歡十進位.所以我們在這中間做分割. 每8個(0, 1)為一個10進位數. 0000000 - 11111111這中間所有的組合其實不多. 也就255個. 聯想不到的話... :

8位二進位數轉10進位

32個(0, 1)組合你記不住, 現在 4個 10進位數. 你肯定好記的多了. (其實也不是很好記, 人類畢竟腦子不行: 所以之後又出現了域名). 其實這些數字只是給人類看的. 機器根本就不管這些亂七八糟的. 人類就是這樣, 腦子不行. 還啥都想搞簡單點.

接下來, 當你向某個目的地發送數據包的時候, 比如很常見的: 192.168.1.1 你發送數據的時候, 其實中間是有軟體程序(操作系統其實也是軟體程序.)在幫你把192.168.1.1 先轉換成 [公式]

192 的 8位二進位是 11000000

168 的 8 位二進位是 10101000

1 的 8 位二進位是 00000001

當然了, 這中間是沒有"."(點)的. 為什麼 "1" 是 "00000001"? 那是因為電路信號, 只有通與不通. 並不是"有"跟"無"的區別. 所以, 實際上軟體程序會幫你轉換成:

[公式]

.....折騰了這麼半天, 你只要記住你找的"人" 是 192.168.1.1 而不是 "11000000101010000000000100000001"

題主所說的, 9999.9999.9999.9999 是典型的十進位使用習慣下衍生出來的想法.

不過IPv6還在推進當中, 雖然由於某些國情或者固有複雜場景的更替影響了 IPv6的推進. 但是終歸有一天,大家會拋棄IPv4, 徹底擁抱 IPv6的. 就像無情的男人...


IPv6 是否需要解釋一下呢?

演員?

music.163.com圖標

好吧, IPv6 就是, IPv6是英文「Internet Protocol Version 6」(互聯網協議第6版)

IPv6 與 IPv4 的"點分十進位"不同, 它是"冒分十六進位表示法". 所以你會看到電腦或者設備獲取的IPv6地址 , 存在 [ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, A, B, C, D, E, F ]

IPv4 是由 3 個 "."(點) 分割開 32個(0, 1)來進行展示的.

IPv6 是由 7 個 ":"(冒號) 分割開 128個(0, 1)來進行展示的.

所以 IPv6 是 "0000000000000000 : ...... : 0000000000000000" - "1111111111111111: ....... : 1111111111111111"

IPv4 的地址數量是 2的 32次方 = 4,294,967,296?

IPv6 的地址數量是 2的 128次方 = %$^*()*^%$@!

為什麼一開始 IPv4 沒有設計足夠數量的IP地址呢. 因為當時電腦都還是奢侈品. 沒有人能想像到互聯網會發展成今天這個樣子. 互聯網的設備能發展到今天這個樣子. 這中間靠的是教育, 科學, 製造業..等等的進步所步進而來的. 也或許制定這個協議的時候, 那些外國人沒想到中國有這麼好些個人吧 : )


好像跑題了...人類果然腦子不太行.


推薦閱讀:
相关文章