精品秘无码一区二区三区老师-精品秘一区二三区免费雷安-精品蜜桃秘一区二区三区-精品蜜桃秘一区二区三区粉嫩-精品蜜桃一区二区三区-精品蜜臀国产aⅴ一区二区三区

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

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

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

前言

 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

主站蜘蛛池模板: 国产美日韩精品一区二区在线观看 | 国产精品久久久爽爽爽麻豆色哟哟 | 边吃奶边狠狠躁日韩A片 | 国内精品视频在线播放一区 | 成人年无码av片在线观看 | 亚洲精品美女免费 | 亚洲 暴爽 AV人人爽日日碰 | 欧美日本精品一区二区三区 | 日韩欧美精品亚洲一级在线 | 人妻在厨房被色诱 中文字幕 | 亚洲2025国产成人精品无码区 | 女人毛多水多高潮A片 | 在线观看有码制服中文 | 亚洲国产成人99精品激情在线 | 人妻中文字幕乱人伦在线 | 国产精品户露av在线户外直播 | 欧美成人r级一级二级三级 欧美成人h在线观看完整版 | 无码福利一区亚洲热香蕉在线 | 国产成人久久精品区一区二 | 精品亚洲欧美高清不卡高清 | 国产成人久久综合热 | 免费在线视频一区 | 国产欧美日韩综合aⅴ天堂 国产欧美日韩资源在线观看 | 日本熟妇乱人伦A片精品软件 | 插我舔内射18免费视频 | 欧美午夜福利在线点播视频 | 国产美日韩精品一区二区在线观看 | 中文字幕日韩精品有码视频 | 最新无码国产在线视频 | 2025琪琪午夜理论电影网 | 亚洲男人的天堂一区二区 | 亚洲国产精品一区二区久久a片区 | 亚洲综合无码一区二区456 | 成人试看120秒体验区 | 欧日韩国产无码专区 | 麻豆久久久久久久 | 久久久久免费精品视频 | 久久久久人妻一区精品色欧美 | 波多野结衣一区二区三区四区视频 | 国产成人免费高清激情视频 | 日韩欧美一区二区不卡看片 |