獲取網絡卡資訊

2021-06-05 02:26:30 字數 846 閱讀 4240

在windows中獲取網路介面卡相關資訊是很方便的,可以通過getadaptersinfo函式獲取並儲存在ip_adapter_info結構體中,再對結構休進行解析得到介面卡資訊。有關函式和結構體的詳細說明可以參考msdn,這裡就不再複述。下面直接給出具體示例程式。

//引入標頭檔案

#include #include #include #pragma comment(lib, "iphlpapi.lib")

#pragma comment(lib, "ws2_32.lib")

int main()

else

}ip_addr_string *paddrstring = &(padapterinfo->ipaddresslist);

while(paddrstring)

paddrstring = &(padapterinfo->gatewaylist);

while(paddrstring)

padapterinfo = padapterinfo->next;

} }//未能正確獲取介面卡資訊時的返回值,列印的內容是對應的錯誤資訊描述

else if(error_buffer_overflow == dwres)

else if(error_invalid_data == dwres)

else if(error_no_data == dwres)

else if(error_not_supported == dwres)

else

return 0;

}

結構體中還有其他介面卡資訊在上述程式中沒有解析,但是都可以根據需要做相應解析。

網絡卡裝置資訊獲取

網絡卡工作在osi七層協議中的鏈路層,是主機與網路對接的重要介面,它完成了網路連線的物理和電訊號之間的轉換,同時還對網路資料報幀進行傳送 接收 校驗等,是上層網路應用的基石。在計算機架構中,通常是cpu通過內部匯流排 ahb bus 或者 pci bus 與mac控制單元通訊,然後由mac控制單元通...

linux 獲取網絡卡資訊

sar n dev 2 10 41 37 am iface rxpck s txpck s rxkb s txkb s rxcmp s txcmp s rxmcst s 10 41 39 am eth0 1.50 1648.00 0.15 117.54 0.00 0.00 1.00 10 41 39...

Linux下如何獲取網絡卡資訊

有時候,寫程式的時候需要獲取計算機的網路資訊,比如ip位址 電腦名稱 dns等資訊。ip位址和電腦名稱是比較容易獲取到的,而要想獲取位址掩碼 dns 閘道器等資訊就有些麻煩了。在windows下我們一般都是通過從登錄檔讀取這些資訊。在linux怎麼做呢?其實,linux下更加容易一些。因為我們可以拿...