原文地址:http://blog.csdn.net/zgyulongfei/article/details/48845373
转载请注明出处!!
ip可以转换成数字,这个可能有许多人还不知道哦,今天博主就来道破此不可泄露之天机
比如百度解析的ip为 112.80.248.73:
我们也可以通过ip的方式来访问此网页,就是说:
http://www.baidu.com 与 http://112.80.248.73 的效果是等价的。
本次泄漏的天机就是把ip转换为数字,且听我娓娓道来。
这个ip是10进制表示的,我们可以用一个字符串显示,我们来看一下效果
咦?那几行结果是个什么东西?
来,我截图给大家感受一下啊:
我了个擦,怎么全部都解析到112.80.248.73呢?
所以现在要访问百度,用以下的方式都可以访问哦:
http://www.baidu.com
http://112.80.248.73
http://1884354633
http://0016024174111
http://0x7050f849
-------------------------------问答环节-----------------------------------
Q:那这个东西有什么用呢?
A:我不能再多说了,否则叶良辰要来找我麻烦了!
------------------------------------------------------------------------------
附件1:
乖乖交出源代码:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace ipToNumber
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
string ip = textBox1.Text.Trim();
long num10 = ipToLong(ip);
string num8 = Convert.ToString(num10, 8);
string num16 = Convert.ToString(num10, 16);
string result = "http://" + num10;
result += "\r\nhttp://00" + num8;
result += "\r\nhttp://0x" + num16;
textBox2.Text = result;
}
public long ipToLong(String ipAddress)
{
//将目标IP地址字符串strIPAddress转换为数字
string[] arrayIP = ipAddress.Split('.');
long sip1 = Int64.Parse(arrayIP[0]);
long sip2 = Int64.Parse(arrayIP[1]);
long sip3 = Int64.Parse(arrayIP[2]);
long sip4 = Int64.Parse(arrayIP[3]);
long r1 = sip1 * 256 * 256 * 256;
long r2 = sip2 * 256 * 256;
long r3 = sip3 * 256;
long r4 = sip4;
long result = r1 + r2 + r3 + r4;
return result;
}
}
}