Как подделать MAC-адрес адаптера USB-Ethernet в OS X

13

Я недавно купил адаптер USB-Ethernet (не Apple), и я получаю подключение к Интернету. В моем университете мы должны указать конкретный MAC-адрес, но я не могу его изменить.

Я пробовал с

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

и с

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

и с обоими я получил тот же результат. Команда не возвращает никаких ошибок, но при ifconfigповторном запуске mac-адрес остается прежним.

Я также пытался с Ubuntu, и это сработало. Знаете ли вы, как я могу сделать то же самое в OS X?

В Ubuntu имя адаптера есть, eth0но в OS X оно en4вместо en0.

Выход из 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 не имеет выхода.

Выход 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 
    inet 192.168.1.38 netmask 0xffffff00 broadcast 192.168.1.255 
    nd6 options=1 
    media: autoselect (100baseTX ) 
    status: active 

Отвечая на некоторые вопросы, да, я пробовал с sudo en4 down / up, и я думаю, что это не ограничение, потому что я могу изменить его в Ubuntu. Если я пытаюсь изменить MAC-адрес моего Wi-Fi, я могу это сделать.

Я использую OS x Mavericks и мой адаптер USB-Ethernet - китайский, модель AX88772A

Хорхе Ньето
источник
Я успешно использовал ifconfig, чтобы изменить свой MAC-адрес в OS X прежде. Можете ли вы включить вывод этой команды в свой вопрос? Может быть, это даст некоторые подсказки. ifconfig en4; sudo ifconfig en4 ether 10:0B:AD:C0:FF:EE; ifconfig en4Кроме того, что-нибудь в Console.app под всеми сообщениями?
miken32
У меня точно такая же проблема с OS X 10.9.2. Я был бы очень заинтересован в решении этой проблемы.
Карлито
1
Вы пытались сначала отключить адаптер? sudo ifconfig en4 down; sudo ifconfig en4 ether 10:0B:AD:C0:FF:EE; sudo ifconfig en4 upЕсли это не сработает, я подозреваю, что это может быть аппаратное ограничение USB-адаптера.
miken32
Мне удалось отключить адаптер с помощью ifconfig, но потом при попытке сменить mac addres ifconfigжалуется на отключение адаптера:ifconfig: ioctl (SIOCAIFADDR): Network is down
carlito
Какая версия OS X у вас работает? Что делает / модель USB-адаптера? Я обычно меняю MAC на моем беспроводном USB-адаптере Alfa, используя ту же команду на OS X ver. 10.7.5.
Брайан Дьюк

Ответы:

9

Я исправил эту проблему, установив драйвер набора микросхем моего адаптера на Mac Os X. После перезагрузки обычная команда (например, sudo ifconfig en6 ether xx: xx: xx: xx: xx: xx) работает должным образом. Ниже детали.


У меня была такая же проблема с гигабитным Ethernet-адаптером Tecknet UL688G USB 3.0 - 10/100/1000.

В Mac Os X 10.10.5 (Yosemite) и 10.11.4 (El Capitan) команда смены MAC-адреса была проигнорирована, хотя она работала безупречно в Ubuntu 15.10.

Так что нет, не проблема с оборудованием, по крайней мере, в моем случае. После нескольких неудачных попыток использования стороннего программного обеспечения и бесполезных драйверов, я обнаружил, что мой адаптер имеет чипсет Realtek 8153, что подтверждается системным отчетом Mac Os X:

RTL8153

Я нашел драйвер набора микросхем на веб-сайте другого производителя относительно другого продукта, который использует тот же набор микросхем RTL8153, установил его, перезагрузил и вуаля… после этого можно было изменить MAC-адрес из командной строки.

введите описание изображения здесь

PS. на сайте Realtek также есть драйвер; это, вероятно, самая обновленная версия, хотя она дала мне некоторые ошибки во время установки. Тем не менее, это также работает как ожидалось.

Мартин
источник
Это все еще работает на macOS 10.14.1. То есть вам придется менять его каждый раз при повторном подключении USB-устройства Ethernet.
Цай
Большое спасибо за спасение моей жизни. И драйвер для RTL8153 у меня хорошо работает.
carton.swing
1

Подделка MAC-адреса в OSX не так проста, как в Linux, поэтому вы можете попробовать использовать скрипт на python, такой как SpoofMAC .

Другой способ настройки / получения информации о сетевых службах в OSX - с помощью команды networksetup .

rchrdg
источник
2
Это так же просто, как в Linux; Я делаю это все время одной командой.
miken32
Спасибо, что указали на SpoofMAC. Тем не менее, для этой конкретной проблемы он ведет себя как прямой вызов ifconfig: нет сообщения об ошибке, но MAC-адрес не меняется.
Карлито
На самом деле, он просто вызывает ifconfig. Если что-то подобное делается в python, есть причина обернуть python.
Макс Рид
1

Наткнулся на изменение mac-адресов перед ~

Несколько ответов, чтобы попробовать:

  1. Попробуйте перейти en4наen0
  2. http://www.macspoofer.com/
  3. http://sweetpproductions.com/wifispoof/ (это для Wi-Fi - но это может помочь?)
MRU
источник
en<x>это идентификатор сетевого устройства. Изменение en4к en0не будет иметь желаемый эффект.
Вольск,