C#?獲取本機(jī)IP地址(IPv4和IPv6)
前言:
在我們使用C# WinForm中,我們有時(shí)候是需要或者自己本機(jī)的IP地址進(jìn)行處理,今天我們學(xué)習(xí)一下如何使用C# Winform獲取主機(jī)的IP地址。現(xiàn)在博主手把手教你獲取,很簡(jiǎn)單的。
操作步驟
一,創(chuàng)建文件
創(chuàng)建Winform窗體文件,這里我就不多做介紹,你們可以看看我之前的文章,都是保姆級(jí)的。

二,窗體設(shè)計(jì)
我們從winform 工具箱拖動(dòng)textbox,和一個(gè)按鈕,對(duì)按鈕重命名

三,代碼設(shè)計(jì)
3.1雙擊按鈕進(jìn)入代碼設(shè)計(jì)窗口,添加命名空間,也可不添加,等下輸入代碼時(shí)使用快捷鍵也是可以的,Alt+Enter,使用ALT鍵+回車(chē)。
using System.Net; using System.Net.Sockets;

3.2輸入代碼
IPAddress[] ip = Dns.GetHostAddresses(Dns.GetHostName());
foreach (IPAddress address in ip)
{
if (address.AddressFamily == AddressFamily.InterNetwork)
{
textBox1.Text += address.ToString() + "\r\n";
}
}

3.3 Dns的方法字段
BeginGetHostAddresses(String, AsyncCallback, Object) 異步返回指定主機(jī)的 Internet 協(xié)議 (IP) 地址。 BeginGetHostEntry(IPAddress, AsyncCallback, Object) 將 IP 地址異步解析為 IPHostEntry 實(shí)例。 BeginGetHostEntry(String, AsyncCallback, Object) 將主機(jī)名或 IP 地址異步解析為 IPHostEntry 實(shí)例。 EndGetHostAddresses(IAsyncResult) 結(jié)束對(duì) DNS 信息的異步請(qǐng)求。 EndGetHostEntry(IAsyncResult) 結(jié)束對(duì) DNS 信息的異步請(qǐng)求。 GetHostAddresses(String) 返回指定主機(jī)的 Internet 協(xié)議 (IP) 地址。 GetHostAddresses(String, AddressFamily) 返回指定主機(jī)的 Internet 協(xié)議 (IP) 地址。 GetHostAddressesAsync(String) 返回指定主機(jī)的 Internet 協(xié)議 (IP) 地址以作為異步操作。 GetHostAddressesAsync(String, AddressFamily, CancellationToken) 返回指定主機(jī)的 Internet 協(xié)議 (IP) 地址以作為異步操作。 GetHostAddressesAsync(String, CancellationToken) 返回指定主機(jī)的 Internet 協(xié)議 (IP) 地址以作為異步操作。 GetHostEntry(IPAddress) 將 IP 地址解析為 IPHostEntry 實(shí)例。 GetHostEntry(String) 將主機(jī)名或 IP 地址解析為 IPHostEntry 實(shí)例。 GetHostEntry(String, AddressFamily) 將主機(jī)名或 IP 地址解析為 IPHostEntry 實(shí)例。 GetHostEntryAsync(IPAddress) 將 IP 地址解析為 IPHostEntry 實(shí)例以作為異步操作。 GetHostEntryAsync(String) 將主機(jī)名或 IP 地址解析為 IPHostEntry 實(shí)例以作為異步操作。 GetHostEntryAsync(String, AddressFamily, CancellationToken) 將主機(jī)名或 IP 地址解析為 IPHostEntry 實(shí)例以作為異步操作。 GetHostEntryAsync(String, CancellationToken) 將主機(jī)名或 IP 地址解析為 IPHostEntry 實(shí)例以作為異步操作。 GetHostName() 獲取本地計(jì)算機(jī)的主機(jī)名。
3.4 AddressFamily方法字段
| AppleTalk | 16 | AppleTalk 地址。 |
|---|---|---|
| Atm | 22 | 本機(jī) ATM 服務(wù)地址。 |
| Banyan | 21 | Banyan 地址。 |
| Ccitt | 10 | CCITT 協(xié)議(如 X.25)的地址。 |
| Chaos | 5 | MIT CHAOS 協(xié)議的地址。 |
| Cluster | 24 | Microsoft 群集產(chǎn)品的地址。 |
| ControllerAreaNetwork | 65537 | 控制器區(qū)域網(wǎng)絡(luò)地址。 |
| DataKit | 9 | Datakit 協(xié)議的地址。 |
| DataLink | 13 | 直接數(shù)據(jù)鏈接接口地址。 |
| DecNet | 12 | DECnet 地址。 |
| Ecma | 8 | 歐洲計(jì)算機(jī)制造商協(xié)會(huì) (ECMA) 地址。 |
| FireFox | 19 | FireFox 地址。 |
| HyperChannel | 15 | NSC Hyperchannel 地址。 |
| Ieee12844 | 25 | IEEE 1284.4 工作組地址。 |
| ImpLink | 3 | ARPANET IMP 地址。 |
| InterNetwork | 2 | IP 版本 4 的地址。 |
| InterNetworkV6 | 23 | IP 版本 6 的地址。 |
| Ipx | 6 | IPX 或 SPX 地址。 |
| Irda | 26 | IrDA 地址。 |
| Iso | 7 | ISO 協(xié)議的地址。 |
| Lat | 14 | LAT 地址。 |
| Max | 29 | MAX 地址。 |
| NetBios | 17 | NetBios 地址。 |
| NetworkDesigners | 28 | 支持網(wǎng)絡(luò)設(shè)計(jì)器 OSI 網(wǎng)關(guān)的協(xié)議的地址。 |
| NS | 6 | Xerox NS 協(xié)議的地址。 |
| Osi | 7 | OSI 協(xié)議的地址。 |
| Packet | 65536 | 低級(jí)別數(shù)據(jù)包地址。 |
| Pup | 4 | PUP 協(xié)議的地址。 |
| Sna | 11 | IBM SNA 地址。 |
| Unix | 1 | Unix 本地到主機(jī)地址。 |
| Unknown | -1 | 未知的地址族。 |
| Unspecified | 0 | 未指定的地址族。 |
| VoiceView | 18 | VoiceView 地址。 |
四 效果展示
IP V4 效果展示

IP V6效果展示

總結(jié):
通過(guò)獲取IP地址簇的方式,來(lái)到達(dá)我們的需求,雖然有點(diǎn)簡(jiǎn)單,但是還是值得我們學(xué)習(xí)的,技術(shù)有限,希望能幫到大家,更多相關(guān)C# 獲取本機(jī)IP地址內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
C#連接SQL?Sever數(shù)據(jù)庫(kù)詳細(xì)圖文教程
C#是Microsoft公司為.NET Framework推出的重量級(jí)語(yǔ)言,和它搭配最完美的數(shù)據(jù)庫(kù)無(wú)疑就是Microsoft SQL Server了,下面這篇文章主要給大家介紹了關(guān)于C#連接SQL?Sever數(shù)據(jù)庫(kù)的詳細(xì)圖文教程,需要的朋友可以參考下2023-06-06
winform 使用Anchor屬性進(jìn)行界面布局的方法詳解
這篇文章主要介紹了winform 使用Anchor屬性進(jìn)行界面布局的方法,有需要的朋友可以參考一下2013-12-12
C#中WebBrowser.DocumentCompleted事件多次調(diào)用問(wèn)題解決方法
這篇文章主要介紹了C#中WebBrowser.DocumentCompleted事件多次調(diào)用問(wèn)題解決方法,本文講解了3種情況和各自情況的解決方法,需要的朋友可以參考下2015-01-01
unity實(shí)現(xiàn)場(chǎng)景跳轉(zhuǎn)
這篇文章主要為大家詳細(xì)介紹了unity實(shí)現(xiàn)場(chǎng)景跳轉(zhuǎn),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2021-04-04
C#使用foreach語(yǔ)句遍歷集合類(lèi)型的方法
這篇文章主要介紹了C#使用foreach語(yǔ)句遍歷集合類(lèi)型的方法,可實(shí)現(xiàn)通過(guò)foreach語(yǔ)句遍歷集合類(lèi)的功能,需要的朋友可以參考下2015-06-06

