C# 获取本机内网 IPv4 地址

复制代码
using System.Linq;
using System.Net;
using System.Net.Sockets;

        /// <summary>
        /// 获取本机内网 IPv4 地址
        /// </summary>
        /// <returns></returns>
        public static string GetLocalIPv4()
        {
            var ipv4s = Dns.GetHostAddresses(Dns.GetHostName()) //根据主机名称解析主机ip地址
                        .Where(p => p.AddressFamily == AddressFamily.InterNetwork) //筛选出所有ipv4地址
                        .Select(p => p.MapToIPv4().ToString());
            if (ipv4s.Count() > 1)
                return ipv4s.Where(p => p.StartsWith("192")).FirstOrDefault(); //如果有多个,返回192开头的ipv4地址
            else
                return ipv4s.FirstOrDefault();
        }
复制代码

 

posted @   Vaynedy  阅读(338)  评论(2编辑  收藏  举报
编辑推荐:
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~
点击右上角即可分享
微信分享提示