Estoy usando un solo Arduino Ethernet Shield con un chip Wiznet W5100 para escanear una red para todos los dispositivos. ( Encuentre el código fuente del proyecto en Github ).
Todos los dispositivos están en el mismo segmento Ethernet. Están conectados a un enrutador de consumo estándar. Todos fueron asignados a direcciones IP en un rango de 10.0.1.0 - 10.0.1.20. El objetivo es identificar los dispositivos en la misma red, incluso si la IP ha cambiado y el protocolo cuando un dispositivo está en línea.
Estuve investigando sobre este problema durante semanas y no he encontrado nada útil en Internet. Esta es la única pieza de código que he encontrado hasta ahora: http://mbed.org/users/va009039/code/w5200NetIf/file/a8df39b4f3aa/MyNetUdpSocket.cpp , línea 124 W5100.readSnDHAR(_socket, mac)
pero no funciona.
¿Es posible obtener una dirección MAC para un dispositivo encontrado (entonces se conoce la IP) en la misma red?
PedroJ
powtac
PedroJ
powtac
Wouter van Ooijen
powtac
Wouter van Ooijen
david tweed
david tweed
yippie
arp HP5180.local
si HP5180.local es mi impresora, pero puede ser cualquier dirección IP en la red.Address HWtype HWaddress Flags Mask Iface
seguido deHP5180.local ether 02:0f:b5:52:73:65 C eth0
. Entonces lo que tienes que hacer es usar el protocolo ARP .powtac
powtac