Laravel  
laravel
文档
数据库
架构
入门
php技术
    
Laravelphp
laravel / php / java / vue / mysql / linux / python / javascript / html / css / c++ / c#

c# 获取本机ip

作者:妳明白莪還在等待嗎?   发布日期:2026-02-07   浏览:89

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;
    }
}

解释说明:

  1. Dns.GetHostEntry(Dns.GetHostName()): 该方法用于获取当前计算机的主机信息,包括其名称和所有关联的IP地址。
  2. host.AddressList: 包含了所有与主机关联的IP地址(包括IPv4和IPv6)。
  3. AddressFamily.InterNetwork: 用于筛选出IPv4地址。如果需要获取IPv6地址,可以使用 AddressFamily.InterNetworkV6
  4. 异常处理: 使用 try-catch 块来捕获可能发生的网络异常,并输出错误信息。

这段代码会打印出本机的IPv4地址。如果无法获取IP地址,则返回默认值 "?"

上一篇:c#全局变量

下一篇:c# datatable.select()

大家都在看

c# 二进制

c# 创建目录

c# datatable group by

c# tcp client

c# type.gettype

c# sqlconnection

c# string.format 小数位数

.net和c#

c#获取系统时间

c#游戏开发

Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3

Laravel 中文站