数字IP的作用以及转换

数字IP的作用以及转换

数字IP的作用以及转换

1、什么是数字地址?与IP地址有什么区别? 简单的说,数字地址就是IP地址的另一种表现形式。都可以被浏览器、ping命令识别还原和访问。 区别:IP地址用“点分十进制”表示,用“.”分成4部分;数字地址是一串用“十进制”表示的数字。

比如:百度的IP地址“119.75.218.77”转换成数字地址就是“2001459789”。在浏览器中输入2001459789就可以访问百度网站,彰显个性!

2、数字地址有什么用?

主要用于快速查询该IP地址或IP段属于哪个城市,从而进行流量统计、根据来访IP显示天气预报、根据IP显示不同的页面等。将IP地址或IP段转换成数字保存在数据库中,可以提高检索速度。要知道,在数据库中数字类型的要比文本类型的检索速度快得多,从而提高网站性能。

现在很多服务器都有IP白名单限制,只有对应的IP地址才能访问对应的服务器,提高安全性。那么就需要区分不同的IP地址段,给出的是192.168.1.1-192.168.255.255.

这种字符串的IP比较起来会很麻烦,最简单的方式就是转为数字类型的直接比较大小,提高效率。

3、数字IP的转换

public class IPToNumber {

public static void main(String[] args){

String ip1 = "192.168.1.100";

long ip = ipToLong(ip1);

System.out.println("ip= " + ip);

String IP = longToIP(ip);

System.out.println("IP= " + IP);

}

public static long ipToLong(String iP){

String[] ipArr = iP.split("\\.");

long result = 0;

for(int i = 0; i < ipArr.length; i ++){

int power = ipArr.length - 1 - i;

int ip = Integer.parseInt(ipArr[i]);

result += ip * Math.pow(256, power);

}

return result;

}

public static String longToIP(long ip){

String[] ipArr = new String[4];

String result = "";

for(int i = 0; i < ipArr.length; i ++){

ipArr[i] = ip % 256 + "";

ip = ip / 256;

if(i == 0){

result = ipArr[i];

}else{

result = ipArr[i] + "." + result;

}

}

return result;

}

}

输出结果为ip= 3232235876

相关推荐

蒙牛优益C,才是世界杯赞助商里最亮眼的一颗!
365体育亚洲官方入口app下载

蒙牛优益C,才是世界杯赞助商里最亮眼的一颗!

📅 06-30 👁️ 789
行動支付
365体育亚洲官方入口app下载

行動支付

📅 07-20 👁️ 8090
天诛系列
365体育亚洲官方入口app下载

天诛系列

📅 08-23 👁️ 569
火影忍者香磷怎么死的?
bt365手机官方网址

火影忍者香磷怎么死的?

📅 08-02 👁️ 9419
魔兽世界怀旧服逐日刷新时间及频率
365bet.com官网

魔兽世界怀旧服逐日刷新时间及频率

📅 07-27 👁️ 1657
三星w789怎么样?三星w789配置曝光
365体育亚洲官方入口app下载

三星w789怎么样?三星w789配置曝光

📅 08-25 👁️ 3400