linux下獲取本機ip位址,ipv4和ipv6

2021-06-07 16:50:54 字數 1548 閱讀 7845

#include #include #include #include #include #include #include #include 

int getip_v4_and_v6_linux(int family,char*address,int size)

if(getifaddrs(&ifap0))for(ifap=ifap0;ifap!=null;ifap=ifap->ifa_next)else break;

}else if(af_inet6==ifap->ifa_addr->sa_family)if(in6_is_addr_linklocal(&addr6->sin6_addr))if(in6_is_addr_loopback(&addr6->sin6_addr))if(in6_is_addr_unspecified(&addr6->sin6_addr))if(in6_is_addr_sitelocal(&addr6->sin6_addr))if(null!=inet_ntop(ifap->ifa_addr->sa_family,

(void*)&(addr6->sin6_addr),buf,ni_maxhost) )else break;

}}freeifaddrs(ifap0);return-1;

}

Linux下 獲取本機ip位址

查ip資訊可以使用ifconfig,但有時候我們需要使用指令碼語句來進行自動獲取。方法一 ifconfig a grep inet grep v 127.0.0.1 grep v inet6 awk tr d addr 當前語句可以排查出除了127.0.0.1之外的所有ip位址,但有些時候我們的虛擬...

Linux 獲取本機IP位址

linux 獲取本機ip位址 說明 family at inet ipv4 family at inet6 ipv6 address 提取得到的ip位址所要儲存的位址 size strlen sampleip 192.168.123.128 max ipv4 15 某些標頭檔案應在其他方面,在本程式...

獲取本機IP位址

cstring strlocalip char szhostname 64 memset szhostname,0x00,sizeof szhostname gethostname szhostname,sizeof szhostname phostent phost gethostbyname s...