ARP 명령을 통해 올바른 MAC 주소를 얻는 방법은 무엇입니까?

ARP 명령을 통해 올바른 MAC 주소를 얻는 방법은 무엇입니까?

면책조항: Pi 3에서 Raspbian Light를 사용하는 Linux의 새로운 기능입니다. SSH 액세스만 가능합니다.

ping/arp를 사용하여 Mac 주소를 찾으려고 합니다.

ping 192.168.1.7
arp 192.168.1.7

다음을 반환합니다.

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

HWaddress는 Windows에 표시되는 Mac 주소와 다릅니다.

ping 192.168.1.7
arp -a 192.168.1.7

그 결과는 다음과 같습니다.

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

네트워크 토폴로지

Pi 연결 케이블(.27) → 케이블 열기 → 라우터(.1)
Wi-Fi에 휴대폰 연결(.7) → 라우터(.1)
Wi-Fi에 Windows 연결(.30) → 라우터(.1)

내 Pi를 동일한 Mac으로 다시 가져오려면 어떻게 해야 하나요?

참고: '공급업체' 섹션이 다른 것 같습니다. 그럼 "거의"가 맞나요?

답변1

최선의 추측: RaspPi는 LAN을 통해 라우터에 연결되어 있고 "대상" 전화와 Windows PC는 WLAN을 통해 연결되어 있습니다. 이는 휴대폰과 Windows PC가 동일한 네트워크 세그먼트에 있고 ARP가 예상대로 작동하더라도 일반적으로 LAN과 WLAN이 동일한 네트워크 세그먼트에 있지 않음을 의미합니다.

그 이후로 그들은~인 것 같다동일한 네트워크 세그먼트(동일한 /24 접두사)에 있기 위해 라우터가 MAC을 통한 NAT와 같이 작동하도록 멋진 작업을 수행한다고 가정합니다.ebtables. 이는 또한 "스푸핑된" MAC 주소가 유효하지 않은 것처럼 보이는 공급업체 접두사만 다르다는 사실로도 알 수 있습니다.

LAN(케이블)을 통해 Windows PC를 라우터에 연결하여 이를 테스트하고 이 경우 어떤 MAC 주소가 보고되는지 확인할 수 있습니다.

테스트하는 또 다른 방법은 라우터에 대한 루트 액세스 권한을 얻고 내부에서 무슨 일이 일어나고 있는지 확인하는 것입니다.

편집하다

이 추측이 맞다면 이것은 순전히라우터문제는 Linux 대 Windows 문제가 아닙니다. 또한 Windows PC가 LAN을 통해 연결되어 있고 대상 전화가 WLAN을 통해 연결된 경우 Windows는 "잘못된" MAC 주소를 찾습니다.모든WLAN을 통해 연결된 장치에는 "잘못된" MAC 주소가 표시됩니다.모든LAN을 통해 연결된 장치 또는 그 반대의 경우.

그리고 이를 비활성화하도록 라우터를 구성하지 않는 한 이를 "수정"할 수 없습니다. 이 경우 LAN과 WLAN의 서브넷이 다를 수 있으며 LAN의 RaspPi는 WLAN에 있는 어떤 장치의 MAC도 볼 수 없습니다.별말씀을요(그 반대의 경우도 마찬가지) 서로 통신할 수는 있지만.

이것이 웹이 작동하는 방식입니다.

문제는 애초에 왜 "올바른" MAC 주소가 필요한가입니다. 이렇게 할 필요는 없습니다.

답변2

arp명령은 rpi 네트워크 인터페이스의 올바른 mac 주소를 제공하며 다음과 같이 확인할 수 있습니다.

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

이것은 c0-ee-fb-ed-9e-5cOnePlus 휴대폰의 Mac 주소입니다.

관련 정보