公交车上荫蒂添的好舒服的电影-公用玩物(np双xing总受)-公用小荡货芊芊-公与妇仑乱hd-攻把受做哭边走边肉楼梯play-古装一级淫片a免费播放口

LOGO OA教程 ERP教程 模切知識交流 PMS教程 CRM教程 開發文檔 其他文檔  
 
網站管理員

如何在C#中獲取計算機的IP地址

admin
2024年12月26日 10:4 本文熱度 906

前言

 IP地址(Internet Protocol Address)是網絡上設備的唯一標識符。IP 地址主要有本地IP地址網IP地址兩種類型。本文將介紹如何在C#中實現獲取IP地址的方法。

獲取本地IP地址

本地IP地址是用于本地網絡中的設備(192.168.x.x)。如果我們要獲取本地IP地址,則可以通過使用System.Net命名空間提供用于處理與網絡相關的操作的類和方法。

示例:使用DNS的GetHostEntry方法獲取主機IP地址:

using System.Net;
namespace Fountian.WinConsole.IPDemo{    internal class Program    {        /// <summary>        ///         /// </summary>        /// <param name="args"></param>        /// <returns></returns>              static async Task Main(string[] args)        {            string localIP = LocalIPAddress();            Console.WriteLine($"本地 IP 地址: {localIP}");            Console.Read();        }    }}
/// <summary>/// 獲取本地 IP 地址/// </summary>/// <returns></returns>/// <exception cref="Exception"></exception>public static string LocalIPAddress(){    var host = Dns.GetHostEntry(Dns.GetHostName());    // 獲取第一個IP地址    var ipAddress = host.AddressList    .FirstOrDefault(ip => ip.AddressFamily == System.Net.Sockets.AddressFamily.InterNetwork);    if (ipAddress == null)    {        throw new Exception("找不到此計算機的IPv4地址");    }    return ipAddress.ToString();}

如果電腦有多個網絡接口(例如:以太網或Wi-Fi),則需要通過指定要查詢的網絡接口。可以使用NetworkInterface類進行更精細的控制。

示例:枚舉所有網絡接口的IP地址:

using System.Net;using System.Net.NetworkInformation;using System.Net.Sockets;
namespace Fountian.WinConsole.IPDemo{    internal class Program    {        /// <summary>        ///         /// </summary>        /// <param name="args"></param>        /// <returns></returns>              static async Task Main(string[] args)        {            foreach (var localIP in GetAllLocalIPAddresses())            {                Console.WriteLine($"本地IP地址: {localIP}");            }            Console.Read();        }    }}
/// <summary>///  獲取本地IP地址列表/// </summary>/// <returns></returns>public static string[] GetAllLocalIPAddresses(){    var ipAddressList = NetworkInterface.GetAllNetworkInterfaces()        .Where(n => n.OperationalStatus == OperationalStatus.Up)        .SelectMany(n => n.GetIPProperties().UnicastAddresses)        .Where(a => a.Address.AddressFamily == AddressFamily.InterNetwork)        .Select(a => a.Address.ToString())        .ToArray();    return ipAddressList;}

獲取外網IP地址

獲取外網IP地址無法直接從本地系統獲取,因為它是由路由器或ISP管理。如果我們需要獲取外網IP地址,則可以通過使用調用外部服務查詢。

示例:使用 HttpClient 類調用外部服務的方法查詢外網IP地址,下面是通過訪問 http://ifconfig.me/ip 獲取,當然還可以使用其它的外部服務。

using System.Net;
namespace Fountian.WinConsole.IPDemo{    internal class Program    {        /// <summary>        ///         /// </summary>        /// <param name="args"></param>        /// <returns></returns>              static async Task Main(string[] args)        {            string publicIP = await GetPublicIPAddressAsync();            Console.WriteLine($"外網 IP 地址: {publicIP}");            Console.Read();        }    }}
/// <summary>/// 獲取外網 IP 地址/// </summary>/// <returns></returns>public static async Task<string> GetPublicIPAddressAsync(){    using (var client = new HttpClient())    {        string url = "http://ifconfig.me/ip";        var response = await client.GetStringAsync(url);        return response.Trim();    }}
注意:網絡請求可能由于各種原因(如沒有 Internet)而失敗。需要正常處理異常。

小結

以上使用C#實現獲取本地IP地址與外網IP地址方法中的其中一種方式,如果需要兼容IPv6,那我們獲取時則需考慮IPv6。


該文章在 2024/12/26 10:04:17 編輯過
關鍵字查詢
相關文章
正在查詢...
點晴ERP是一款針對中小制造業的專業生產管理軟件系統,系統成熟度和易用性得到了國內大量中小企業的青睞。
點晴PMS碼頭管理系統主要針對港口碼頭集裝箱與散貨日常運作、調度、堆場、車隊、財務費用、相關報表等業務管理,結合碼頭的業務特點,圍繞調度、堆場作業而開發的。集技術的先進性、管理的有效性于一體,是物流碼頭及其他港口類企業的高效ERP管理信息系統。
點晴WMS倉儲管理系統提供了貨物產品管理,銷售管理,采購管理,倉儲管理,倉庫管理,保質期管理,貨位管理,庫位管理,生產管理,WMS管理系統,標簽打印,條形碼,二維碼管理,批號管理軟件。
點晴免費OA是一款軟件和通用服務都免費,不限功能、不限時間、不限用戶的免費OA協同辦公管理系統。
Copyright 2010-2025 ClickSun All Rights Reserved

主站蜘蛛池模板: 91精品国产茄子在线观看 | 大白屁股白浆一区二区 | 成人午夜精品网站在线观看 | 91麻豆精品国产剧情 | 91久久久久精品无码专区 | 91麻豆国产视频一级片 | 国产成a人亚洲精ⅴ品无码樱花 | 国产v日本v欧美v一二三四区 | 按摩av无码专区 | 69精彩对白视频国产 | 国产av秘无码一区区三区 | 国产精品视频一区二区猎奇 | 国产精品免费久久久久久久久 | 国产精品美女久久久久网站 | 成人无码区免费av毛 | 国产成年无码久久久久下载 | 92国产福利一区二区三区 | 97人妻精品 | 国产精品视频熟女韵味 | 2025最新久久久视精品爱 | 国产av无码专区亚洲av麻豆 | 精品精品无码在线视频 | 国产精品亲子乱子伦 | 成年午夜在线无码福利 | 国产精品久在线观不 | 成人黄色毛片一级 | 91精品国产综合久久婷婷 | 国产成a人亚洲精ⅴ品无码性色 | 国产黄频在线观看高清免费 | 国产三级国产精品国产普男人 | 99精品久久久久久水蜜桃免 | 国产三级精品三级在专区性色 | www亚洲精品少妇裸乳一区二区 | 国产成人a在一区线观看高清 | 国产性按摩视频在线观看 | 囯产精品一品二区三区 | 国产欧美精品一区二区三区 | 国产美女爆乳呻吟视频 | 国产成人综合亚洲欧洲色就色 | 国产精品国产三级国v麻豆 国产精品国产三级国产 | 国产黄色大片网站 |