Estoy escribiendo un programa donde se conecta, por varias razones, a otras computadoras en una LAN. Sin embargo, en lugar de tener que ingresar la dirección IP de varias computadoras (un dolor en el trasero), me preguntaba si hay una forma de listar las direcciones IP de todas las computadoras en una LAN. He investigado todo el día, y hasta el momento no he encontrado nada adecuado. ¿Es esto porque no existe nada de este tipo? Gracias de antemano.Lista de la dirección IP de todas las computadoras conectadas a una sola LAN
EDITAR: Parecería que con las muchas vistas que está recibiendo esta publicación, debería publicar mi solución real. En general, las convenciones de nomenclatura para direcciones IP de computadoras en una LAN son las mismas. ejemplo siendo 192.168.2. *, * siendo reemplazado con cualquier número válido. Mi programa detecta la dirección IP, la muestra al usuario y luego solicita los primeros 3 bloques de IP. A continuación, escanea secuencialmente hasta 200 en la convención de nomenclatura de IP dada haciendo un ping y esperando una respuesta. Sin respuesta, sin computadora. Puede hacer todo lo que puede hacer con un IP una vez que sabe que tiene una computadora detrás.
Puede obtener la subred y recorrer las direcciones disponibles para hacer ping. Pero eso no ayudaría a los que simplemente están apagados. Si tuviera acceso, podría ver los archivos de arrendamiento de DHCP –
'ARPing', como describió Jason, es la única solución multiplataforma y de protección de firewall. El enfoque WNetEnumResource() de BlueRaja es razonable si está limitado a Windows boxen. Los enfoques de escaneo/nmap tienen demasiados dragones con firewalls basados en host. No hay una llamada mágica/API. Es probable que SendARP() de la API de iphelper sea su mejor opción: http://msdn.microsoft.com/en-us/library/aa366358%28VS.85%29.aspx –
¿Por qué no 254? (255 en subredes más grandes) – Deanna