Obtener una dirección MAC de IP desde detrás de un enrutador

8

Quiero saber, si es posible, cómo obtener una dirección MAC de una dirección IP si estoy detrás de un enrutador.

Intenté hacer un ping a la IP y verificar la tabla arp, pero la única entrada es el MAC del enrutador.

¿Algunas ideas?

Gracias por leer.

Macarse
fuente

Respuestas:

20

Los enrutadores no transmiten las direcciones MAC. Debe mirar la tabla ARP del enrutador.

Editar:

A menos que tenga alguna otra forma de acceso a la máquina, sí, es imposible. Si puede acceder a la red que está activada (VNC, RDP, SSH), puede hacerlo, pero de lo contrario no.

Si su enrutador no le proporciona la tabla ARP en su interfaz web, puede ver si puede hacer telnet: muchos enrutadores domésticos tienen funciones más avanzadas que ocultan de la interfaz web.

Dentrasi
fuente
Si no tengo acceso a la tabla arp del enrutador, ¿es imposible?
Macarse el
1
Si. ARP se conoce como un protocolo no enrutable: nunca saldrá de la red local. Si desea ver las direcciones MAC, debe estar en un dispositivo local de enlace, ya sea directamente conectado o con suficiente acceso remoto para enumerar la tabla ARP.
Kyle Brantley
5

No se puede garantizar que pueda ver la dirección MAC de las máquinas detrás de un enrutador. Pero hay algunos protocolos que pueden ayudarlo a encontrar la dirección MAC desde cualquier lugar de la red. Por ejemplo, para encontrar la dirección MAC de una PC con Windows en otra red cuando conoce su dirección IP, puede usar el comando

nbtstat -A <IP Address>

Para hacer lo mismo desde una máquina Linux (con samba instalada) use el comando

nmblookup -R -S -A <IP Address>

Si la máquina en cuestión no es una máquina de Windows y no hay forma de formar parte de otra subred. Entonces, las únicas opciones son ver la tabla de direcciones MAC en el enrutador, o si hay un servidor DHCP común en toda la red, puede ver la dirección MAC en los registros de DHCP. Pero supongo que debe ser administrador para acceder al enrutador o al servidor DHCP.

Por lo tanto, si hay muchas máquinas Windows en su red, puede encontrar la dirección MAC para ellas incluso cuando no están en su subred. Pero si la red tiene muchas máquinas Linux, entonces no hay una buena forma muy común de encontrar MAC desde otras redes.

La técnica anterior no funcionará en servidores samba de Linux. Siempre devolverán la dirección MAC como 00-00-00-00-00-00.

Saurabh Barjatiya
fuente
3

Si la IP en cuestión no está en una subred conectada directamente del enrutador, entonces el MAC no estará en la tabla ARP de su enrutador.

ARP solo es visible / relevante para el último salto de una conexión IP (capa 2). Todo entre la primera entidad de enrutamiento y la última entidad de enrutamiento es la capa 3, que no utiliza el ARP de las entidades de origen o destino, sino el ARP de la siguiente entidad de enrutamiento conectada directamente.

James F
fuente
2

Creo que lo que quieres saber es ...

¿Cómo puede encontrar el MAC para una IP (máquina) particular que no es parte de su subred?

Para todas las máquinas / IP en su subred, la tabla IP-MAC se almacena en la caché ARP, localmente en su máquina. Este es el mismo caché que da "conflictos de resolución de IP". hacer un simple

$ arp -a | grep particularIP

Ahora, para la máquina fuera de su subred, no hay un estándar de la aplicación de estante que haga eso, traté de pensar si algún mensaje ICMP puede hacerlo, pero a partir de ahora creo que no hay ninguno. Bueno, la forma en que se diseñan las redes, en lugar de las capas, es un comportamiento deliberadamente no deseado. Para escapar o eliminar la información que es relevante para las capas por debajo del presente, y a medida que se utiliza la red IP, no se utiliza MAC.

Vea si tiene cooperación en la otra máquina, puede escribir una pequeña aplicación, que encapsula el encabezado de la Mac y le envía ... por supuesto, si tiene cooperación de la otra máquina, ¿por qué este esfuerzo es un ifconfig simple? hace el trabajo, eso para todas las interfaces en esa máquina.

Vivek Sharma
fuente
1

Solo puede "ver" las direcciones mac de los hosts que están en la misma subred. Luego, puede enumerar todas las direcciones mac con el comando arp:

arp -a

o para una sola dirección IP:

arp -a 192.168.0.1
splattne
fuente
Dije que estoy detrás de un enrutador, así que no estoy en la misma subred.
Macarse el
0

Si tiene acceso a la PC remota, o cualquier PC en la red remota, puede usar WMI o ejecutar varias aplicaciones para darle la dirección MAC. No se me ocurre otra forma de obtener la dirección MAC.

JR

John Rennie
fuente
No, no tengo ningún tipo de acceso a la subred :(
Macarse
0

Bueno, como dijeron las personas en la otra respuesta, ARP es un protocolo de capa dos y no es enrutable, por lo que el escaneo en métodos convencionales no le devolverá las direcciones MAC. ejemplo

nmap -sn target

solo proporcionará direcciones MAC de dispositivos que estén en el mismo segmento de red. Hay dos scripts nmap que usan ayudantes como nbtstat y snmp

NBTSTAT esto requiere que el puerto UDP 137 esté abierto en el destino donde se encuentra el comando nmap

nmap -sU --script nbtstat.nse -p 137 target

SNMP este protocolo tiene que estar funcionando, es un puerto abierto, para darnos cualquier información sobre el MAC del objetivo. También el puerto UDP 161

nmap -sU -p 161 --script=snmp-interfaces target

Direcciones IPV6 esto funciona en la recuperación de MAC de IPv6 o direcciones similares (teredo, 6to 4, etc.). Solo lo he probado en la dirección IPv6 que tiene parte de la Mac en ellos

nmap -sV -sC target

(este es el comando de nmap https://nmap.org/nsedoc/scripts/address-info.html ) pero al probarlo (en hosts internos fe80), requería un -6

nmap -sV -sC -6 target 
nassim
fuente
-2

Prueba Namp Intense Scan: nmap -T4 -A -v IP-address

Mohammad Hessamzadeh
fuente
1
O no has entendido la pregunta, o no tienes idea de lo que estás hablando. No veo evidencia que sugiera que este comando vería la dirección MAC en el otro lado de cualquier enrutador. Incluso si funcionó, no habría sido una buena respuesta, porque le falta información sobre cómo funciona.
kasperd
-2

No sé sobre el enrutador, pero si tiene una dirección IP, puede usar nmap para obtener la dirección MAC incluso en su host local, también puede hacerlo, así que ¿por qué demonios quiere obtener eso del enrutador o algo así? Si su sistema operativo es Linux, puede usar Macchanger o muchas otras aplicaciones, así que no tengo idea de por qué quiere hacer esto de esa manera.

M01
fuente
Creo que te perdiste la palabra enrutador en la pregunta.
kasperd