반응형
Get Device name & network & subnetmask
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 | #include<pcap.h> #pragma comment(lib,"ws2_32.lib") #pragma comment(lib,"wpcap.lib") #pragma warning(disable:4996) int main(void) { char *dev; // device name; pcap_t *pd; // packet descripter bpf_u_int32 net, subnet; // network, subnetmask char errbuf[PCAP_ERRBUF_SIZE]; // error buffer struct in_addr net_addr, subnet_addr; // for print if (!(dev = pcap_lookupdev(errbuf))) // find device { printf("[!] Error : pcap_lookupdev\n"); return -1; } if (pcap_lookupnet(dev, &net, &subnet, errbuf) < 0) // get network, subnetmask { printf("[!] Error : pcap_lookupnet\n"); return -1; } net_addr.s_addr = net; subnet_addr.s_addr = subnet; printf("[*] Device : %s\n", dev); printf("[*] Network : %s\n", inet_ntoa(net_addr)); printf("[*] Subnetmask : %s\n", inet_ntoa(subnet_addr)); return 0; } | cs |