什麼是IP轉換?
IP地址和Int數字地址是可以相互轉換的。 IPv4地址是一個32位的二進制數,通常用“點分十進制”表示成a.b.c.d的形式。而Int地址是一個整數,也是IP地址的一種,即IP地址的數字化形式,它指某一地點在國際數字地址網上的數字化地理位置。
為什麼要進行IP轉換?
前面我們已經講到,IPv4地址是一個32位的二進制數,如果用String類型表示的話,存儲時會佔用7-15個字節,如0.0.0.0需要7個字節,255.255.255.255需要15個字節,佔用的空間比較大。而一個Int數字剛好是4個字節32位,所以剛好可以使用一個Int數字來表示一個IPv4地址,從而大大節省存儲空間。
如何進行IP轉換?
把一個IPv4地址的每段可以看成是一個0-255的整數,先把每段拆分成一個二進制形式組合起來,然後把這個二進制數轉變成一個長整數。
以10.0.3.193這個IP地址為例:
每段數字 | 相對應的二進制數 |
---|---|
10 | 00001010 |
0 | 00000000 |
3 | 00000011 |
193 | 11000001 |
組合起來即為:00001010 00000000 00000011 11000001,轉換為十進制數就是:167773121,所以10.0.3.193這個IPv4地址轉換為Int數字就是167773121。你也可以通過下面的工具自己轉換試一試。