获取本地IP地址的方法有很多,一种常见方法是使用Dns.GetHostName()
和Dns.GetHostEntry()
方法获取主机名和IP地址列表:
<code class="language-csharp">string strHostName = string.Empty; // 获取本地计算机的主机名 strHostName = Dns.GetHostName(); Console.WriteLine("本地计算机主机名: " + strHostName); // 使用主机名获取IP地址列表 IPHostEntry ipEntry = Dns.GetHostEntry(strHostName); IPAddress[] addr = ipEntry.AddressList; for (int i = 0; i < addr.Length; i++) { Console.WriteLine("IP Address {0}: {1}", i, addr[i].ToString()); }</code>
然而,如果您只想获取路由器分配的局域网IP地址,此方法可能无法提供理想结果。此外,还必须确定您的计算机是否已连接到网络。
获取本地IP地址
为此,请考虑使用以下方法:
<code class="language-csharp">public static string GetLocalIPAddress() { var host = Dns.GetHostEntry(Dns.GetHostName()); foreach (var ip in host.AddressList) { if (ip.AddressFamily == AddressFamily.InterNetwork) { return ip.ToString(); } } throw new Exception("系统中没有具有IPv4地址的网络适配器!"); }</code>
此方法遍历IP地址列表以检索第一个IPv4地址,该地址通常是局域网IP地址。
检查网络连接
要确定您的计算机是否已连接到网络,请使用以下表达式:
<code class="language-csharp">System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable();</code>
如果存在网络连接,此表达式返回true;否则返回false。
以上是如何有效检索我的本地IP地址并验证网络连接?的详细内容。更多信息请关注PHP中文网其他相关文章!