📜  C#程序查找机器的IP地址(1)

📅  最后修改于: 2023-12-03 14:59:44.320000             🧑  作者: Mango

C#程序查找机器的IP地址

在开发网络应用程序时,经常需要获取本机的IP地址。本文介绍如何使用C#程序查找机器的IP地址。

获取本机IP地址

以下示例代码演示了如何使用C#程序获取本机的IP地址。首先,需要引用System.Net命名空间,然后使用Dns类的GetHostEntry()方法获取本机的主机入口。

using System;
using System.Net;

class Program
{
    static void Main(string[] args)
    {
        string hostname = Dns.GetHostName();
        IPHostEntry ipEntry = Dns.GetHostEntry(hostname);

        foreach (IPAddress ip in ipEntry.AddressList)
        {
            Console.WriteLine(ip);
        }
    }
}
查找指定主机的IP地址

以下示例代码演示了如何使用C#程序根据指定的主机名称获取它的IP地址。

using System;
using System.Net;

class Program
{
    static void Main(string[] args)
    {
        string hostname = "www.google.com";
        IPHostEntry ipEntry = Dns.GetHostEntry(hostname);

        foreach (IPAddress ip in ipEntry.AddressList)
        {
            Console.WriteLine(ip);
        }
    }
}

以上示例代码将输出谷歌网站的IP地址。

查找本机的IPv4地址

以下示例代码演示了如何使用C#程序获取本机的IPv4地址。

using System;
using System.Net;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        string hostname = Dns.GetHostName();
        IPHostEntry ipEntry = Dns.GetHostEntry(hostname);

        IPAddress ipAddressV4 = ipEntry.AddressList.FirstOrDefault(a => a.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork);

        Console.WriteLine(ipAddressV4);
    }
}

以上示例代码将输出本机的IPv4地址,即第一个AddressFamily属性等于System.Net.Sockets.AddressFamily.InterNetwork的地址。

查找本机的IPv6地址

以下示例代码演示了如何使用C#程序获取本机的IPv6地址。

using System;
using System.Net;
using System.Linq;

class Program
{
    static void Main(string[] args)
    {
        string hostname = Dns.GetHostName();
        IPHostEntry ipEntry = Dns.GetHostEntry(hostname);

        IPAddress ipAddressV6 = ipEntry.AddressList.FirstOrDefault(a => a.AddressFamily == System.Net.Sockets.AddressFamily.InterNetworkV6);

        Console.WriteLine(ipAddressV6);
    }
}

以上示例代码将输出本机的IPv6地址,即第一个AddressFamily属性等于System.Net.Sockets.AddressFamily.InterNetworkV6的地址。