using System;
using System.Net;
using System.Net.Sockets;
class Program
{
static void Main()
{
// 获取本机IP地址
string localIP = GetLocalIPAddress();
Console.WriteLine("本机IP地址: " + localIP);
}
static string GetLocalIPAddress()
{
IPHostEntry host;
string localIP = "?";
try
{
// 获取主机信息
host = Dns.GetHostEntry(Dns.GetHostName());
// 遍历所有IP地址,找到IPv4地址
foreach (IPAddress ip in host.AddressList)
{
if (ip.AddressFamily == AddressFamily.InterNetwork)
{
localIP = ip.ToString();
break;
}
}
}
catch (SocketException ex)
{
Console.WriteLine("获取IP地址时发生错误: " + ex.Message);
}
return localIP;
}
}
Dns.GetHostEntry(Dns.GetHostName()): 该方法用于获取当前计算机的主机信息,包括其名称和所有关联的IP地址。host.AddressList: 包含了所有与主机关联的IP地址(包括IPv4和IPv6)。AddressFamily.InterNetwork: 用于筛选出IPv4地址。如果需要获取IPv6地址,可以使用 AddressFamily.InterNetworkV6。try-catch 块来捕获可能发生的网络异常,并输出错误信息。这段代码会打印出本机的IPv4地址。如果无法获取IP地址,则返回默认值 "?"。
上一篇:c#全局变量
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站