Hola estoy intentando conseguir el local ip de mi red con la que estoy conectado para hacer una petición arp. Lo intento con GetAdaptersInfo o GetAdaptersAddresses o gethostbyname.
Pero ninguno me sirve. Bueno consigo la ip pero no se la manera de saber si es la ip correcta. Si lo imprimo por la descripción pero dependiendo del pc sera diferente.
Saludos
como que no sabes si es la correcta?
Cita de: patilanz en 10 Enero 2015, 17:03 PM
Hola estoy intentando conseguir el local ip de mi red con la que estoy conectado para hacer una petición arp. Lo intento con GetAdaptersInfo o GetAdaptersAddresses o gethostbyname.
Pero ninguno me sirve. Bueno consigo la ip pero no se la manera de saber si es la ip correcta. Si lo imprimo por la descripción pero dependiendo del pc sera diferente.
Saludos
Pon code y te podremos ayudar,
Saludos
Con GetAdaptersAddresses no se obtener la ip:
ULONG family = AF_UNSPEC;
IP_ADAPTER_ADDRESSES * adresses = 0;
ULONG size;
int ret = GetAdaptersAddresses(family, 0, 0, adresses, &size);
if (ret != ERROR_BUFFER_OVERFLOW){
cout << "Error";
exit(1);
}
adresses = new IP_ADAPTER_ADDRESSES[size];
ret = GetAdaptersAddresses(family, 0, 0, adresses, &size);
if (ret == NO_ERROR){
IP_ADAPTER_ADDRESSES * adress = adresses;
while (adress){
cout << adress->Description << endl;
//Como obtengo la ip?
adress = adress->Next;
}
}
Con IP_ADAPTER_INFO no se cual de todas las ipes es correcta:
IP_ADAPTER_INFO *info = 0;
ULONG size;
int ret = GetAdaptersInfo(info, &size);
if (ret != ERROR_BUFFER_OVERFLOW){
cout << "Error";
exit(1);
}
info = new IP_ADAPTER_INFO[size];
GetAdaptersInfo(info, &size);
IP_ADAPTER_INFO *adapter = info;
while (adapter){
cout << adapter->IpAddressList.IpAddress.String << endl;
adapter = adapter->Next;
}
La ip que busco es 192.168.1.6 que es la primera pero no creo que en todos los pc sera la primera.
Saludos
cada adaptador tiene una descripción, puede acceder a ellas?
Si pero son así:
Citar192.168.1.6
Conexi¾n de red Gigabit Intel(R) 82578DC
192.168.56.1
VirtualBox Host-Only Ethernet Adapter
192.168.134.1
VMware Virtual Ethernet Adapter for VMnet
192.168.179.1
VMware Virtual Ethernet Adapter for VMnet
25.118.200.151
LogMeIn Hamachi Virtual Ethernet Adapter
Todos están con ethernet.
pero puedes confiar en "conexión de red" que es el texto base normalmente en windows... alguna otras información que puedas sacar?
Cita de: engel lex en 11 Enero 2015, 01:42 AMalguna otras información que puedas sacar?
Bueno todo de http://msdn.microsoft.com/en-us/library/windows/desktop/aa366062
Y con
IP_ADAPTER_ADDRESSES como obtengo la ip ?
no estoy en windows XD y en el windows no tengo instalado nada de eso jejeje