Jak sfałszować adres MAC adaptera USB-Ethernet w OS X


13

Niedawno kupiłem adapter USB-Ethernet (nie Apple) i otrzymuję połączenie z Internetem. Na mojej uczelni musimy podać konkretny adres mac, ale nie mogę go zmienić.

Próbowałem z

sudo ifconfig en4 ether xx:xx:xx:xx:xx:xx

i z

sudo ifconfig en4 lladdr xx:xx:xx:xx:xx:xx

i oboje mam ten sam wynik. Polecenie nie zwraca żadnego błędu, ale po ifconfigponownym uruchomieniu adres mac jest nadal taki sam.

Próbowałem także z Ubuntu i działało. Czy wiesz, jak mogę zrobić to samo w systemie OS X?

W Ubuntu nazwa adaptera brzmi, eth0ale w OS X jest en4zamiast en0.

Wyjście sudo ifconfig en4:

en4: flags=8863 mtu 1500 
    ether 00:e0:4c:36:21:92 
    inet6 fe80::2e0:4cff:fe36:2192%en4 prefixlen 64 scopeid 0x9 
    nd6 options=1 
    media: autoselect (100baseTX ) 
    status: active

sudo ifconfig en4 ether 10:0B:AD:C0:FF:EE nie ma żadnego wyjścia.

Wynik sudo ifconfig en4ponownie:

en4: flags=8863 mtu 1500 
    ether 00:e0:4c:36:21:92 
    inet6 fe80::2e0:4cff:fe36:2192%en4 prefixlen 64 scopeid 0x9 
    inet 192.168.1.38 netmask 0xffffff00 broadcast 192.168.1.255 
    nd6 options=1 
    media: autoselect (100baseTX ) 
    status: active 

Odpowiadając na kilka pytań, tak, próbowałem z sudo en4 down / up i myślę, że to nie jest ograniczenie, ponieważ mogę to zmienić w Ubuntu. Jeśli spróbuję zmienić adres MAC mojego Wi-Fi, mogę to zrobić.

Korzystam z systemu OS x Mavericks, a mój adapter USB-Ethernet to chiński, model to AX88772A


Z powodzeniem korzystałem z ifconfig do zmiany adresu MAC w OS X. Czy możesz podać wynik tego polecenia w swoim pytaniu? Może da to jakieś wskazówki. ifconfig en4; sudo ifconfig en4 ether 10:0B:AD:C0:FF:EE; ifconfig en4Coś w Console.app pod wszystkimi wiadomościami?
— miken32,

Mam dokładnie ten sam problem z OS X 10.9.2. Byłbym bardzo zainteresowany rozwiązaniem tego problemu.
— carlito

1
Czy próbowałeś najpierw wyłączyć adapter? sudo ifconfig en4 down; sudo ifconfig en4 ether 10:0B:AD:C0:FF:EE; sudo ifconfig en4 upJeśli to nie zadziała, podejrzewam, że może to być jedynie ograniczenie sprzętowe adaptera USB.
— miken32

Udało mi się wyłączyć adapter za pomocą ifconfig, ale wtedy, gdy próbuję zmienić adres MAC, ifconfigskarży się na wyłączenie adaptera:ifconfig: ioctl (SIOCAIFADDR): Network is down
— carlito

Jaką wersję OS X używasz? Jaka jest marka / model adaptera USB? Rutynowo zmieniam MAC na moim bezprzewodowym adapterze USB Alfa za pomocą tego samego polecenia w OS X ver. 10.7.5.
— Brian Duke

Odpowiedzi:


9

Rozwiązałem ten problem, instalując sterownik mikroukładu mojego adaptera na Mac OS X. Po ponownym uruchomieniu zwykłe polecenie (np. Sudo ifconfig en6 ether xx: xx: xx: xx: xx: xx) działa zgodnie z oczekiwaniami. Poniżej szczegółów.


Miałem ten sam problem z kartą Tecknet UL688G USB 3.0 na 10/100/1000 Gigabit Ethernet.

Zarówno w Mac OS X 10.10.5 (Yosemite), jak i 10.11.4 (El Capitan) polecenie zmiany adresu MAC zostało zignorowane, podczas gdy działało bezbłędnie na Ubuntu 15.10.

Więc nie, nie problem sprzętowy, przynajmniej w moim przypadku. Po kilku nieudanych próbach z oprogramowaniem innych firm i bezużytecznymi sterownikami dowiedziałem się, że mój adapter ma mikroukład Realtek 8153, co potwierdza raport systemowy Mac OS X:

RTL8153

Znalazłem sterownik mikroukładu na stronie innego producenta, w odniesieniu do innego produktu, który używa tego samego mikroukładu RTL8153, zainstalowałem go, uruchomiłem ponownie i voilà .. po tym można było zmienić adres MAC z wiersza poleceń.

wprowadź opis zdjęcia tutaj

PS. strona internetowa Realtek ma również sterownik; jest to prawdopodobnie najbardziej zaktualizowana wersja, chociaż dała mi pewne błędy podczas instalacji. Działa jednak również zgodnie z oczekiwaniami.


To nadal działa w systemie macOS 10.14.1. Trzeba będzie to jednak zmienić za każdym razem, gdy ponownie podłączasz urządzenie Ethernet USB.
— Cai

Dziękuję bardzo za uratowanie mi życia. A sterownik dla RTL8153 działa dobrze dla mnie.
— carton.swing

1

Sfałszowanie adresu MAC w OSX nie jest tak proste jak w Linuksie, więc możesz spróbować użyć skryptu python, takiego jak SpoofMAC .

Innym sposobem skonfigurowania / uzyskania informacji o usługach sieciowych w OSX jest użycie polecenia networksetup .


2
To jest tak proste jak w Linuksie; Robię to cały czas za pomocą jednego polecenia.
— miken32

Dziękujemy za zwrócenie uwagi na SpoofMAC. Jednak w przypadku tego konkretnego problemu działa on dokładnie tak, jak bezpośrednie wywołanie ifconfig: brak komunikatu o błędzie, ale adres MAC się nie zmienia.
— carlito

Właściwie to po prostu wywołuje ifconfig. Jeśli coś takiego jest zrobione w Pythonie, istnieje powód, aby go otoczyć.
— Max Ried

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.