C#Winform 如何获取本机IP

//获取本机第一个可用的IP地址IPAddressmyIPAddress=(IPAddress)Dns.GetHostAddresses(Dns.GetHostName(... // 获取本机第一个可用的IP地址
IPAddress myIPAddress = (IPAddress)Dns.GetHostAddresses(Dns.GetHostName()).GetValue(0);
学习书上写的方法,此方法应该比较旧了吧

问题1,我有使用路由器的且手动配置IP地址(即192.168.1.101这样),但是用上面的方法,不能获取实际的IP地址(即119.X.X.X这样的),只能获取在路由器上的IP,请问怎么修改上面的代码?

问题2,(与问题1无关)上面的方法,我在WIN7下获取IP地址是一段奇怪的数字,请问这也怎么修改上面的代码?
展开
 我来答
cheamy
推荐于2018-02-27 · TA获得超过300个赞
知道答主
回答量:268
采纳率:0%
帮助的人:154万
展开全部
如果是在vs2008中会发现楼上的方法已过期 ,但是强制使用的话也不会报错
vs2008中可以这样获取ip地址:
IPHostEntry ipe = Dns.GetHostEntry(Dns.GetHostName());
IPAddress ipa=ipe.AddressList[0];

关于win7的问题,
因为在win7中已经启用了IPv6,所以 ipe.AddressList[0]返回的是IPv6格式的地址,应该使用 ipe.AddressList[1] 返回 IPv4 格式地址
如果有多个网卡,可以设断点监视 ipa的值,看是否是需要的地址
Storm代理
2023-07-25 广告
StormProxies是一家提供动态代理服务器服务的企业,旨在帮助用户更好地管理网络访问和安全。以下是一些关于StormProxies的IP动态代理服务的特点:1. 高匿名性:StormProxies的动态代理服务器具有高匿名性,可以有效... 点击进入详情页
本回答由Storm代理提供
冲浪网站优化
高粉答主

推荐于2016-03-30 · SEO资深专家,互联网知名专家。
冲浪网站优化
采纳数:10812 获赞数:90554

向TA提问 私信TA
展开全部
C#Winform 获取本机IP程序代码:
System.Net.IPHostEntry myEntry = System.Net.Dns.GetHostEntry;(System.Net.Dns.GetHostName());
string ipAddress = myEntry.AddressList[0].ToString();
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
bjddd192
2010-09-11 · TA获得超过416个赞
知道小有建树答主
回答量:496
采纳率:0%
帮助的人:435万
展开全部
using System.Net;

public static string GetHostName()
{
return Dns.GetHostName();
}

public static IPAddress[] GetLocalIP()
{
string name = Dns.GetHostName();
IPHostEntry me = Dns.GetHostEntry(name);
return me.AddressList;
}

public static IPAddress GetFirstIP()
{
IPAddress[] ips = GetLocalIP();
foreach (IPAddress ip in ips)
{
if (ip.AddressFamily == System.Net.Sockets.AddressFamily.InterNetworkV6)
continue;
return ip;
}
return ips != null && ips.Length > 0 ? ips[0] : new IPAddress(0x0);
}
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
陈学阳
2010-09-13 · TA获得超过2.8万个赞
知道大有可为答主
回答量:2.1万
采纳率:14%
帮助的人:5611万
展开全部
要获得自己的外网IP,需要借助外界的一个IP返回点,否则单凭自身是不能获得的(当然,如果你本机有公网IP的情况除外)

具体的实现,可以参见下面的内容
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
swn997
2010-09-12 · TA获得超过245个赞
知道小有建树答主
回答量:275
采纳率:50%
帮助的人:106万
展开全部
在线真实IP互踩开刷
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式