获取本机公网IP 有没有在不借助一些查询网站的基础上(例如:http://www.ikaka.com/ip/index.asp)获取本机公网IP的方法?注:机器属于一个局域网,不是直接拨号的 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 获取本机(网关)的外网IP,在C#里面实现的方法,通常是遍历获取到的本机的IP地址,然后判断,不过这种方式只能取得独立拨号或具有独立公网IP的地址,对于局域网的方式,是取不到的,这种方式的代码大致如下:System.Net.IPHostEntry ips = System.Net.Dns.GetHostEntry(System.Net.Dns.GetHostName());foreach (System.Net.IPAddress ip in ips.AddressList){ Console.WriteLine(ip.ToString());}要获取本机出口的外网IP,实际是需要利用访问某个可以返回本机出口的外网IP的internet资源,例如: 本站的ip提供程序访问此IP提供程序,将只返回一个你的出口IP的字符串,使用起来是超简单的,代码如下:using (System.Net.WebClient wc = new System.Net.WebClient()){ Console.WriteLine(wc.DownloadString("http://www.zu14.cn/ip/"));}Console.ReadLine(); 机器属于局域网,也就是说是通过网关代理上网那你的机器从来就不会有公网IP,只有你的代理网关有公网IP因此你现在不是要获取你自己机器的公网IP,而是代理网关出口的公网IP我之所以写的是“代理网关出口”,那是因为你的代理网关可能也有好几层,你要获取的是出口的公网IP然后你再仔细想想,只适用你的局域网,不借助外面帮助,能获取带代理网关出口的外网IP么?详细的学习下网络基础知识吧 纠正一下 route print 不行..好像还真得需要Internet来查询。 你不访问下外部,就不知道自己的公网IP,而访问外部最简单的就是访问查询IP的网站,你可以使用WebRequest访问下,然后截获返回的信息分析里面提供的你公网IP信息。 问个弱智问题 求教,关于删除数据库中整表的问题 什么时候要用Using释放资源? 关于执行.dat文件的C#方法 导入DLL时出现DllNotFoundException 我现在VS.net2003,是否可以安装.net框架2.0? 如何改变窗体的顶级顺序~? 如何在windows窗体上动态绘制折线图 又是C#调用API的问题,大家进来讨论一下。 100分求:为什么使用Sockte接受传送的中文字符串是乱码???? string的Split的regex的Split有什么区别啊? RecordSet问题
foreach (System.Net.IPAddress ip in ips.AddressList)
{
Console.WriteLine(ip.ToString());
}
要获取本机出口的外网IP,实际是需要利用访问某个可以返回本机出口的外网IP的internet资源,例如: 本站的ip提供程序访问此IP提供程序,将只返回一个你的出口IP的字符串,使用起来是超简单的,代码如下:using (System.Net.WebClient wc = new System.Net.WebClient())
{
Console.WriteLine(wc.DownloadString("http://www.zu14.cn/ip/"));
}Console.ReadLine();
机器属于局域网,也就是说是通过网关代理上网
那你的机器从来就不会有公网IP,只有你的代理网关有公网IP
因此你现在不是要获取你自己机器的公网IP,而是代理网关出口的公网IP我之所以写的是“代理网关出口”,那是因为你的代理网关可能也有好几层,你要获取的是出口的公网IP然后你再仔细想想,只适用你的局域网,不借助外面帮助,能获取带代理网关出口的外网IP么?详细的学习下网络基础知识吧
纠正一下 route print 不行..
好像还真得需要Internet来查询。