看到很多人都再求这个。我就把原理贴出来,其实有工具不如懂原理的好。
ip转换原理
根据TCP/IP协议,IP地址是以二进制来表示,目前广泛使用的IPv4(Internet Protocol version 4:网际协议版本4)中规定IP地址长度为32bit(比特位)(如:11000000101010000000000100000010),为了方便使用,人们将二进制IP地址转换为四个十进制数字用点号分隔的形式,1bit × 8=1byte(字节),32bit换算成字节就是4byte,二进制形式IP 11000000101010000000000100000010换算成十进制形式即为192.168.1.2,这种形式即最常见的IP表示方式:点分十进制表示法(Dotted decimal notation)。
下面介绍IP地址不常见的几种形式
1、整数型:
IP 192.168.1.2的二进制为11000000101010000000000100000010(注:点分十进制IP转二进制时,四个十进制数字转二进制不足8位的用0补足8位),将11000000101010000000000100000010换算成十进制为3232235778,得到其整数型IP形式:3232235778。
另一种换算方法:192 × 256^3 + 168 × 256^2 + 1 × 256 + 2 = 3232235778
我们可以在CMD命令行下输入:ping 3232235778 ,会显示跟 ping 192.168.1.2 同样的回显,说明两者是等价的。
2、八进制型:
IP 192.168.1.2换算成八进制为300.250.1.2,每位在前面加0表示是八进制,结果为:0300.0250.01.02,同样可通过ping测试下证明两者 相等。由此可见,IP 0127.0.0.1并不像表面上看到的似乎等同127.0.0.1,而等于IP 87.0.0.1。
3、十六进制型:
换算方法跟八进制相同,不同的是前面加0x表示十六进制,如IP 192.168.1.2转换为十六进制型IP为:0xc0.0xA8.1.2。
4、混合型:
即以上几种进制的混合,如IP 0300.0xA8.1.0×02,这种纯属为视觉混淆,没什么实质意义。
以上四种相比而言,整数型IP相对实用些,下面附整数型IP一个简单应用实例:
谷歌www.google.com.hk的IP是74.125.128.94,换算成整数型为1249738846,在浏览器内输入http://1249738846,即可正常访问该地址。
ip转换成16进制实例:
我们来假设,我的网站ip为10.10.10.10,那么我们来用window自带的计算机来计算16进制即可,计算出得a,那么我们可以知道10.都是等于A,ok,那么就是a.a.a.a那么他们的为什么那么长?而我的就只有4个?这里我们要随机调用0x0,0x00,0x0000000000,即可那么我们的ip地址就是0x0a,0x00a,0x0000000000a,了,当然目前这种手法可能已经准备被淘汰了,现在本人也已经研发出从这个手法升级的升级版的手法。手法主要的是0x0000000000是放在转换后的前面。
参考资料:
原创文章,作者:老D,如若转载,请注明出处:https://laod.cn/194.html
评论列表(6条)
请问那个黑侠站群能加吗,是你贴的吗
这是一个有意思的网站!
http://www.heimaoxuexi.com/thread-137-1-1.html,对这篇文章来说我找到一个有意思的网站。
http://www.qq.com
你的博客非常不错 我的博客:http://www.javaxxz.com 有机会交流下。
这个了解过一点点