C 小技巧系列之四 獲取本地網路資訊

2021-09-04 22:10:26 字數 3834 閱讀 7392

說明:本人準備寫一些c#有關的小技巧系列文章,這些文章含金量並不高,**難度不大,不過因為問的次數比較多,從而導致本人決定用自己所知的方式寫這一系列文章,可以看做「趣味導學」系列吧。

這是乙個獲取系統所有服務的程式,為了簡化程式,**仍以控制台形式提供,大家可以另外封裝自己希望的功能。

核心**:

using system;

using system.collections.generic;

using system.data.sql;

using system.net;

using system.net.networkinformation;

namespace allsqlserver

public static void shownetworkinte***ces()

.     ",

computerproperties.hostname, computerproperties.domainname);

if (nics == null || nics.length < 1)

console.writeline("  number of inte***ces .................... : ", nics.length);

foreach (networkinte***ce adapter in nics)

", adapter.networkinte***cetype);

console.writeline("  mac位址 ........................ : ",

adapter.getphysicaladdress().tostring());

console.writeline("  operational status ...................... : ",

adapter.operationalstatus);

string versions = "";

if (adapter.supports(networkinte***cecomponent.ipv4))

if (adapter.supports(networkinte***cecomponent.ipv6))

versions += "ipv6"; }

console.writeline("  ip version .............................. : ", versions);

showipaddresses(properties);

if (adapter.networkinte***cetype == networkinte***cetype.loopback)

console.writeline("  dns suffix .............................. : ",

properties.dnssuffix);

string label;

if (adapter.supports(networkinte***cecomponent.ipv4))

", ipv4.mtu);

if (ipv4.useswins)

} }

console.writeline("是否被配置為向網域名稱系統 (dns) 伺服器傳送名稱解析查詢:............................. : ",

properties.isdnsenabled);

properties.isdynamicdnsenabled);

console.writeline("  receive only ............................ : ",

adapter.isreceiveonly);

console.writeline("  multicast ............................... : ",

adapter.supportsmulticast);

console.writeline(); }

}private static void showipaddresses(ipinte***ceproperties properties)

private static void showipaddresses(string label,ipaddresscollection winsservers)

private static void showipaddressinformationcollection(ipaddressinformationcollection collection)

} private static void showipaddresscollection(ipaddresscollection collection)

} private static void showmulticastipaddressinformationcollection(multicastipaddressinformationcollection collection)

} private static string getipaddressinfo(ipaddress address)

} } } 

在我本機的執行結果如下:

inte***ce information for zhoufoxcn.sooyie

number of inte***ces .................... : 2

nvidia nforce networking controller

***********************************

網路型別 .......................... : ethernet

mac位址 ........................ : 003018adb71c

operational status ...................... : up

ip version .............................. : ipv4

255.255.255.255

dns伺服器 :

192.168.3.3

202.99.192.66

閘道器 :

192.168.3.1

是否被配置為向網域名稱系統 (dns) 伺服器傳送名稱解析查詢:false

224.0.0.1

0.0.0.0

0.0.0.0

dns suffix .............................. :

mtu...................................... : 1500

是否被配置為向網域名稱系統 (dns) 伺服器傳送名稱解析查詢:...........................

.. : false

receive only ............................ : false

multicast ............................... : true

ms tcp loopback inte***ce

*************************

網路型別 .......................... : loopback

mac位址 ........................ :

operational status ...................... : up

ip version .............................. : ipv4

dns伺服器 :

閘道器 :

是否被配置為向網域名稱系統 (dns) 伺服器傳送名稱解析查詢:false

224.0.0.1

C 小技巧系列之四 獲取本地網路資訊

本文 自http blog.csdn.net zhoufoxcn using system using system.collections.generic using system.data.sql using system.net using system.net.networkinformat...

C 小技巧系列之四 獲取本地網路資訊

說明 本人準備寫一些c 有關的小技巧系列文章,這些文章含金量並不高,難度不大,不過因為問的次數比較多,從而導致本人決定用自己所知的方式寫這一系列文章,可以看做 趣味導學 系列吧。這是乙個獲取系統所有服務的程式,為了簡化程式,仍以控制台形式提供,大家可以另外封裝自己希望的功能。核心 using sys...

冷門 C 小技巧之獲取變數名稱

今天在自我規範程式設計的時候,變數名匹配字串來自配置檔案,網上找了一會兒發現也有朋友在找尋這種方式,很不容易找到乙個解決方案來自 下面就是今天找到的進行詳細解答 首先需要自定義乙個靜態方法 擴充套件 獲取變數名稱 字串 return string public static string getva...