Como obter o endereço MAC correto do comando ARP?

Como obter o endereço MAC correto do comando ARP?

Isenção de responsabilidade: novo no Linux, usando Raspbian Light em um Pi 3. Somente acesso SSH.

Estou tentando procurar o endereço mac usando ping/arp:

ping 192.168.1.7
arp 192.168.1.7

Ele retorna:

Address                  HWtype  HWaddress           Flags Mask            Iface
192.168.1.7              ether   02:0f:b5:ed:9e:5c   C                     eth0

O HWaddress é diferente do endereço MAC que vejo no Windows:

ping 192.168.1.7
arp -a 192.168.1.7

Isto resulta em:

Internet Address      Physical Address      Type
192.168.1.7           c0-ee-fb-ed-9e-5c     dynamic

Topologia de rede

Pi no cabo (.27) → ligar o cabo → roteador (.1)
Telefone em wifi (.7) → roteador (.1)
Windows em wifi (.30) → roteador (.1)

Como posso fazer com que meu Pi retorne o mesmo Mac?

Nota: parece que a parte do 'fornecedor' é diferente. Então é 'quase' certo?

Responder1

Melhor palpite: seu RaspPi está conectado ao roteador via LAN, enquanto o telefone “alvo” e o PC com Windows estão conectados via WLAN. Isso significa que embora o telefone e o PC com Windows estejam no mesmo segmento e o ARP funcione conforme o esperado, normalmente a LAN e a WLAN não estariam no mesmo segmento.

Desde que elesparecerestar no mesmo segmento (mesmo prefixo /24), presumo que o roteador faça algumas coisas sofisticadas para fazer isso funcionar, como MAC NAT viatabelas de débito. O fato de o endereço MAC "falsificado" diferir apenas no prefixo do fornecedor, e o prefixo do fornecedor não parecer válido, também aponta para isso.

Você pode testar isso conectando seu PC com Windows ao roteador via LAN (cabo) e ver qual endereço MAC ele relata nesse caso.

Outra maneira de testá-lo é obter acesso root ao seu roteador e dar uma olhada no que está acontecendo lá dentro.

Editar

Se esta suposição estiver correta, é puramente umaroteadorproblema, não um problema de Linux versus Windows. O Windows também encontrará o endereço MAC “errado” se o PC com Windows estiver conectado via LAN, enquanto o telefone de destino estiver conectado via WLAN.Tododispositivo conectado via WLAN verá o endereço MAC "errado" detododispositivo conectado via LAN e vice-versa.

E você não pode "contornar" isso, a menos que possa configurar seu roteador para desativá-lo. Nesse caso você provavelmente terá sub-redes diferentes para LAN e WLAN, e o RaspPi na LAN não verá o MAC de nenhum dispositivo na WLANde forma alguma(e vice-versa), embora possam se comunicar entre si.

É assim que a rede funciona.

A questão é: por que você precisa do endereço MAC “correto” em primeiro lugar? Você não deveria precisar.

Responder2

O arpcomando fornecerá o endereço MAC correto da interface de rede RPI e você poderá verificá-lo da seguinte maneira:

ssh [email protected]
sudo cat /sys/class/net/eth0/address

Este c0-ee-fb-ed-9e-5cé o endereço MAC do seu telefone One Plus.

informação relacionada