日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

获取本机网卡信息

發布時間:2025/7/25 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 获取本机网卡信息 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

/*
獲取本地ip地址,子網掩碼,默認網關,mac地址,網絡適配器信息,hostname,域名dns,網絡接口信息*/ #include<WinSock2.h> #include<IPHlpApi.h> #include<stdio.h>#pragma comment(lib,"ws2_32.lib") #pragma comment(lib,"iphlpapi.lib")void main() {/*typedef struct _IP_ADAPTER_INFO {struct _IP_ADAPTER_INFO* Next;DWORD ComboIndex;char AdapterName[MAX_ADAPTER_NAME_LENGTH + 4];char Description[MAX_ADAPTER_DESCRIPTION_LENGTH + 4];UINT AddressLength;BYTE Address[MAX_ADAPTER_ADDRESS_LENGTH];DWORD Index;UINT Type;UINT DhcpEnabled;PIP_ADDR_STRING CurrentIpAddress;IP_ADDR_STRING IpAddressList;IP_ADDR_STRING GatewayList;IP_ADDR_STRING DhcpServer;BOOL HaveWins;IP_ADDR_STRING PrimaryWinsServer;IP_ADDR_STRING SecondaryWinsServer;time_t LeaseObtained;time_t LeaseExpires; } IP_ADAPTER_INFO, *PIP_ADAPTER_INFO;*/IP_ADAPTER_INFO* pAdapterInfo;PIP_ADAPTER_INFO pAdapter;ULONG bufferLength;DWORD status;pAdapterInfo = (IP_ADAPTER_INFO*)malloc(sizeof(IP_ADAPTER_INFO));bufferLength = sizeof(IP_ADAPTER_INFO);//根據該函數先故意失敗獲取,得到鏈表真正大小if (GetAdaptersInfo(pAdapterInfo, &bufferLength)!=ERROR_SUCCESS){free(pAdapterInfo);pAdapterInfo = (IP_ADAPTER_INFO*)malloc(bufferLength);}//獲取網卡信息結構體第一個節點.if (GetAdaptersInfo(pAdapterInfo, &bufferLength) != ERROR_SUCCESS){printf("error\n");}//因為網卡之間鏈接成一個單鏈表,通過一個指針遍歷該鏈表pAdapter = pAdapterInfo;while (pAdapter){printf("網卡名: %s\n", pAdapter->AdapterName);printf("網卡描述: %s\n", pAdapter->Description);printf("網卡MAC地址: ");for (int i = 0; i < pAdapter->AddressLength; i++){if (i == (pAdapter->AddressLength - 1))printf("%.2x\n", (int)pAdapter->Address[i]);elseprintf("%.2x-", (int)pAdapter->Address[i]);}printf("ip地址: %s\n", pAdapter->IpAddressList.IpAddress.String);printf("子網掩碼: %s\n", pAdapter->IpAddressList.IpMask.String);printf("網關: %s\n", pAdapter->GatewayList.IpAddress.String);if (pAdapter->DhcpEnabled){printf("啟用DHCP: 是\n");printf("DHCP服務器地址: %s\n\n", pAdapter->DhcpServer.IpAddress.String);}else{printf("啟用DHCP: 否\n\n");}pAdapter = pAdapter->Next;}if (pAdapterInfo)free(pAdapterInfo);getchar();}

?

?

?

獲取dns相關信息:

#include<WinSock2.h> #include<IPHlpApi.h> #include<stdio.h>#pragma comment(lib,"ws2_32.lib") #pragma comment(lib,"iphlpapi.lib")void main() { ULONG bufferLength;DWORD status;FIXED_INFO* fixedInfo;IP_ADDR_STRING* pIpAddr;/*typedef struct {char HostName[MAX_HOSTNAME_LEN + 4] ;char DomainName[MAX_DOMAIN_NAME_LEN + 4];PIP_ADDR_STRING CurrentDnsServer;IP_ADDR_STRING DnsServerList;UINT NodeType;char ScopeId[MAX_SCOPE_ID_LEN + 4];UINT EnableRouting;UINT EnableProxy;UINT EnableDns;} FIXED_INFO_W2KSP1, *PFIXED_INFO_W2KSP1;*/fixedInfo = (FIXED_INFO*)GlobalAlloc(GPTR, sizeof(FIXED_INFO));bufferLength = sizeof(FIXED_INFO);if (ERROR_BUFFER_OVERFLOW == GetNetworkParams(fixedInfo, &bufferLength)){GlobalFree(fixedInfo);fixedInfo = (FIXED_INFO*)GlobalAlloc(GPTR, sizeof(FIXED_INFO));}if (GetNetworkParams(fixedInfo, &bufferLength) != ERROR_SUCCESS){printf("error\n");}else{printf("主機名: %s\n", fixedInfo->HostName);printf("域名: %s\n", fixedInfo->HostName);char* nodeType;switch (fixedInfo->NodeType){case BROADCAST_NODETYPE:nodeType = "broadcase node";break;case PEER_TO_PEER_NODETYPE:nodeType = "peertopeer node";break;case MIXED_NODETYPE:nodeType = "mixed node";break;case HYBRID_NODETYPE:nodeType = "hybrid node";break;default:nodeType = "unkowntype node";break;}printf("節點類型 %d - %s\n", fixedInfo->NodeType, nodeType);printf("是否啟用路由功能 %s\n", fixedInfo->EnableRouting ? "" : "");printf("是否啟用arp代理功能 %s\n", fixedInfo->EnableProxy ? "" : "");printf("是否啟用dns服務器 %s\n", fixedInfo->EnableDns ? "" : "");printf("dns服務器列表\n");printf("%s\n", fixedInfo->DnsServerList.IpAddress.String);pIpAddr = fixedInfo->DnsServerList.Next;while (pIpAddr){printf("%s\n", pIpAddr->IpAddress.String);pIpAddr = pIpAddr->Next;}}getchar();}

?

獲取網絡接口數量API: GetNumberOfInterfaces(pdwNumIf)

轉載于:https://www.cnblogs.com/freesec/p/6193957.html

總結

以上是生活随笔為你收集整理的获取本机网卡信息的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。