C# 操作網(wǎng)絡(luò)適配器的示例
更新時間:2020年10月28日 11:56:55 作者:一只獨行的猿
這篇文章主要介紹了C# 操作網(wǎng)絡(luò)適配器的示例,幫助大家更好的理解和學(xué)習(xí)c#,感興趣的朋友可以了解下
1、對網(wǎng)絡(luò)適配器進行配置
string ethernetIP = System.Configuration.ConfigurationManager.AppSettings["LocalEthernetIP"].Trim().ToString(); string ethernetSubnetMask = System.Configuration.ConfigurationManager.AppSettings["LocalEthernetSubnetMask"].Trim().ToString(); string ethernetGateway = System.Configuration.ConfigurationManager.AppSettings["LocalEthernetGateway"].Trim().ToString(); string ethernetDNS = System.Configuration.ConfigurationManager.AppSettings["LocalEthernetDNS"].Trim().ToString(); ManagementBaseObject outPar = null; ManagementClass mc = new ManagementClass("Win32_NetworkAdapterConfiguration"); ManagementObjectCollection moc = mc.GetInstances(); foreach (ManagementObject mo in moc) { if (!(bool)mo["IPEnabled"]) { continue; } //設(shè)置IP地址 ManagementBaseObject inPar = mo.GetMethodParameters("EnableStatic"); if (!string.IsNullOrEmpty(ethernetIP)) { inPar["IPAddress"] = new string[] { ethernetIP }; } if (!string.IsNullOrEmpty(ethernetSubnetMask)) { inPar["SubnetMask"] = new string[] { ethernetSubnetMask }; } outPar = mo.InvokeMethod("EnableStatic", inPar, null); //設(shè)置網(wǎng)關(guān) inPar = mo.GetMethodParameters("SetGateways"); if (!string.IsNullOrEmpty(ethernetGateway)) { inPar["DefaultIPGateway"] = new string[] { ethernetGateway }; outPar = mo.InvokeMethod("SetGateways", inPar, null); } //設(shè)置DNS inPar = mo.GetMethodParameters("SetDNSServerSearchOrder"); if (!string.IsNullOrEmpty(ethernetDNS)) { inPar["DNSServerSearchOrder"] = new string[] { ethernetDNS }; outPar = mo.InvokeMethod("SetDNSServerSearchOrder", inPar, null); } break; }
2、獲取網(wǎng)絡(luò)適配器等相關(guān)信息
//獲取說有網(wǎng)卡信息 NetworkInterface[] nics = NetworkInterface.GetAllNetworkInterfaces(); foreach (NetworkInterface adapter in nics) { //判斷是否為以太網(wǎng)卡 //Wireless80211 無線網(wǎng)卡 Ppp 寬帶連接 //Ethernet 以太網(wǎng)卡 //這里篇幅有限貼幾個常用的,其他的返回值大家就自己百度吧! if (adapter.NetworkInterfaceType == NetworkInterfaceType.Ethernet) { //獲取以太網(wǎng)卡網(wǎng)絡(luò)接口信息 IPInterfaceProperties ip = adapter.GetIPProperties(); //獲取單播地址集 UnicastIPAddressInformationCollection ipCollection = ip.UnicastAddresses; foreach (UnicastIPAddressInformation ipadd in ipCollection) { //InterNetwork IPV4地址 InterNetworkV6 IPV6地址 //Max MAX 位址 if (ipadd.Address.AddressFamily == AddressFamily.InterNetwork) //判斷是否為ipv4 label1.Text = ipadd.Address.ToString();//獲取ip } } }
NetworkInterfaceType的返回值如下(以下表格來自msdn): 成員名 說明 Unknown 接口類型是未知的。 Ethernet 網(wǎng)絡(luò)接口使用以太網(wǎng)連接。 以太網(wǎng)在 IEEE 標準 802.3 中定義。 TokenRing 網(wǎng)絡(luò)接口使用令牌環(huán)連接。 令牌環(huán)在 IEEE 標準 802.5 中定義。 Fddi 網(wǎng)絡(luò)接口使用分布式光纖數(shù)據(jù)接口 (FDDI) 連接。 FDDI 是一組用于局域網(wǎng)中光纖線路上的數(shù)據(jù)傳輸?shù)臉藴省? BasicIsdn 網(wǎng)絡(luò)接口使用基本速率接口綜合業(yè)務(wù)數(shù)字網(wǎng) (ISDN) 連接。 ISDN 是一組通過電話線傳輸數(shù)據(jù)的標準。 PrimaryIsdn 網(wǎng)絡(luò)接口使用主速率接口綜合業(yè)務(wù)數(shù)字網(wǎng) (ISDN) 連接。 ISDN 是一組通過電話線傳輸數(shù)據(jù)的標準。 Ppp 網(wǎng)絡(luò)接口使用點對點協(xié)議 (PPP) 連接。 PPP 是使用串行設(shè)備進行數(shù)據(jù)傳輸?shù)膮f(xié)議。 Loopback 網(wǎng)絡(luò)接口是環(huán)回適配器。 此類接口通常用于測試;不通過電纜發(fā)送流量。 Ethernet3Megabit 網(wǎng)絡(luò)接口使用以太網(wǎng) 3 兆位/秒連接。 以太網(wǎng)的此版本在 IETF RFC 895 中定義。 Slip 網(wǎng)絡(luò)接口使用串行線路 Internet 協(xié)議 (SLIP) 連接。 SLIP 在 IETF RFC 1055 中定義。 Atm 網(wǎng)絡(luò)接口使用異步傳輸模式 (ATM) 傳輸數(shù)據(jù)。 GenericModem 網(wǎng)絡(luò)接口使用調(diào)制解調(diào)器。 FastEthernetT 網(wǎng)絡(luò)接口使用基于雙絞線的 Fast Ethernet 連接,其數(shù)據(jù)速率為 100 兆位/秒。 此連接類型也稱為 100Base-T。 Isdn 網(wǎng)絡(luò)接口使用為 ISDN 和 X.25 協(xié)議配置的連接。 X.25 允許公用網(wǎng)絡(luò)上的計算機使用中間計算機通信。 FastEthernetFx 網(wǎng)絡(luò)接口使用基于光纖的 Fast Ethernet 連接,其數(shù)據(jù)速率為 100 兆位/秒。 此連接類型也稱為 100Base-FX。 Wireless80211 網(wǎng)絡(luò)接口使用無線 LAN 連接(IEEE 802.11 標準)。 AsymmetricDsl 網(wǎng)絡(luò)接口使用非對稱數(shù)字用戶線路 (ADSL)。 RateAdaptDsl 網(wǎng)絡(luò)接口使用速率自適應(yīng)數(shù)字用戶線路 (RADSL)。 SymmetricDsl 網(wǎng)絡(luò)接口使用對稱數(shù)字用戶線路 (SDSL)。 VeryHighSpeedDsl 網(wǎng)絡(luò)接口使用超高數(shù)據(jù)速率數(shù)字用戶線路 (VDSL)。 IPOverAtm 網(wǎng)絡(luò)接口使用 Internet 協(xié)議 (IP) 與異步傳輸模式 (ATM) 相結(jié)合來傳輸數(shù)據(jù)。 GigabitEthernet 網(wǎng)絡(luò)接口使用 Gigabit Ethernet 連接,其數(shù)據(jù)速率為 1,000 兆位/秒(1 吉比特/秒)。 Tunnel 網(wǎng)絡(luò)接口使用隧道連接。 MultiRateSymmetricDsl 網(wǎng)絡(luò)接口使用多速率數(shù)字用戶線路。 HighPerformanceSerialBus 網(wǎng)絡(luò)接口使用高性能串行總線。 AddressFamily的返回值如下(以下表格來自msdn): 成員名稱 說明 AppleTalk AppleTalk 地址。 Atm 本機 ATM 服務(wù)地址。 Banyan Banyan 地址。 Ccitt CCITT 協(xié)議(如 X.25)的地址。 Chaos MIT CHAOS 協(xié)議的地址。 Cluster Microsoft 群集產(chǎn)品的地址。 DataKit Datakit 協(xié)議的地址。 DataLink 直接數(shù)據(jù)鏈接接口地址。 DecNet DECnet 地址。 Ecma 歐洲計算機制造商協(xié)會 (ECMA) 地址。 FireFox FireFox 地址。 HyperChannel NSC Hyperchannel 地址。 Ieee12844 IEEE 1284.4 工作組地址。 ImpLink ARPANET IMP 地址。 InterNetwork IP 版本 4 的地址。 InterNetworkV6 IP 版本 6 的地址。 Ipx IPX 或 SPX 地址。 Irda IrDA 地址。 Iso ISO 協(xié)議的地址。 Lat LAT 地址。 Max MAX 地址。 NetBios NetBios 地址。 NetworkDesigners支持網(wǎng)絡(luò)設(shè)計器 OSI 網(wǎng)關(guān)的協(xié)議的地址。 NS Xerox NS 協(xié)議的地址。 Osi OSI 協(xié)議的地址。 Pup PUP 協(xié)議的地址。 Sna IBM SNA 地址。 Unix Unix 本地到主機地址。 Unknown 未知的地址族。 Unspecified 未指定的地址族。 VoiceView VoiceView 地址。
以上就是C# 操作網(wǎng)絡(luò)適配器的示例的詳細內(nèi)容,更多關(guān)于C# 操作網(wǎng)絡(luò)適配器的資料請關(guān)注腳本之家其它相關(guān)文章!
您可能感興趣的文章:
- C#設(shè)置本地網(wǎng)絡(luò)如DNS、網(wǎng)關(guān)、子網(wǎng)掩碼、IP等等
- C# 網(wǎng)絡(luò)編程之UDP
- c# 網(wǎng)絡(luò)編程之tcp
- c# 網(wǎng)絡(luò)編程之http
- 深入學(xué)習(xí)C#網(wǎng)絡(luò)編程之HTTP應(yīng)用編程(下)
- 深入學(xué)習(xí)C#網(wǎng)絡(luò)編程之HTTP應(yīng)用編程(上)
- C#訪問網(wǎng)絡(luò)共享文件夾的方法
- C#利用SharpPcap實現(xiàn)網(wǎng)絡(luò)包捕獲嗅探
- 淺談C#網(wǎng)絡(luò)編程詳解篇
- c# 如何對網(wǎng)絡(luò)信息進行相關(guān)設(shè)置(ip,dns,網(wǎng)關(guān)等)
相關(guān)文章
C#Process的OutputDataReceived事件不觸發(fā)問題及解決
這篇文章主要介紹了C#Process的OutputDataReceived事件不觸發(fā)問題及解決方案,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2023-02-02C#使用opencv截取旋轉(zhuǎn)矩形區(qū)域圖像的實現(xiàn)示例
這篇文章主要介紹了C#使用opencv截取旋轉(zhuǎn)矩形區(qū)域圖像,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2021-03-03Unity?Shader編輯器工具類ShaderUtil?常用函數(shù)和用法實例詳解
Unity的Shader編輯器工具類ShaderUtil提供了一系列函數(shù),用于編譯、導(dǎo)入和管理著色器,這篇文章主要介紹了Unity?Shader編輯器工具類ShaderUtil?常用函數(shù)和用法,需要的朋友可以參考下2023-08-08c#實現(xiàn)從字符串?dāng)?shù)組中把數(shù)字的元素找出來
下面小編就為大家分享一篇c#實現(xiàn)從字符串?dāng)?shù)組中把數(shù)字的元素找出來的方法,希望對大家有所幫助。一起跟隨小編過來看看吧2017-12-12C#使用Consul集群進行服務(wù)注冊與發(fā)現(xiàn)
這篇文章主要介紹了C#使用Consul集群進行服務(wù)注冊與發(fā)現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2019-12-12