РЕШЕНО: Смена MAC - адреса

Автор vladimir_ar, 27 июля 2012, 19:57:39

« назад - далее »

0 Пользователи и 1 гость просматривают эту тему.

vladimir_ar

Выложу порядок действий, которые мне помогли и работают.
Понадобилось сменить на сетевой МАС (у провайдера фильтрация по МАС), но натолкнулся на то, что строка
hwaddress ether 00:00:00:00:00:00
добавляемая в файл /etc/network/interfaces в секцию с нужной картой (например, eth0) не работает.
Погуглив еще нашел другое решение:
Цитировать
*Постоянный изменённый MAC-адрес* *в Linux*

Для этого идём в //etc/network/if-pre-up.d// и создаём там от рута файл, например имени /pre-up/.

В этот файл пишем следующее:

   /#! /bin/sh
   /
   /ifconfig eth0 hw ether 00:00:00:00/


Нули заменить своим мак-адресом. Чтобы изменения вступили сразу же, без перезагрузки, даём команду:

   //etc/init.d/networking restart/


При этом в первый раз (особенно при работающем интерфейсе) может вылезти такое:

   /# /etc/init.d/networking restart/
   /Setting up IP spoofing protection: rp_filter./
   /Reconfiguring network interfaces...SIOCDELRT: No such process/
   /ifup: interface lo already configured/
   /SIOCSIFHWADDR: Device or resource busy/
   /run-parts: /etc/network/if-pre-up.d/pre-up exited with return code 1/
   /done./

Повторяем команду, на этот раз всё должно быть без шума и пыли:

   /notebeast:/home/beast# /etc/init.d/networking restart/
   /Setting up IP spoofing protection: rp_filter./
   /Reconfiguring network interfaces...ifup: interface lo already
   configured/
   /done./

Всё, MAC изменён и останется таковым и после перезагрузки.
По этой конструкции работает. Не забыть созданному файлу выставить в свойствах разрешение на исполнение.
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M

corner

Позволю себе сделать небольшие дополнения.
1. По-видимому, в утилите ifup произошли некоторые изменения, и теперь инструкция смены MAC выглядит так:
hwaddress localaddress т.е. без директивы ether.
По крайней так уже в Wheezy. В 6.0.4 live проверил, то же самое, но в man старая инструкция.
Оставляю возможность желающим проверить.
2. Эта инструкция, тем не менее, должна следовать после инструкции iface
3. Чтобы не засорять систему лишними скриптами, разработчики ifup давно уже ввели инструкцию pre-up и другие (см. man interfaces)
4. Ввиду последних нововведений уже не рекомендуется использование ifconfig, на замену которому пришла утилита ip.
Смена адреса (в том числе на лету) ip link set interface address
В применении к /etc/network/interfaces (пример)...
auto eth0
iface eth0 inet dhcp
pre-up ip link set eth0 address aa:bb:cc:dd:ee:ff
...

vladimir_ar

#2
corner, спасибо, проверю.

Сообщение объединено: 29 июля 2012, 15:37:32

Цитата: corner от 27 июля 2012, 23:46:33В применении к /etc/network/interfaces (пример)
Код: [Выделить]

...
auto eth0
iface eth0 inet dhcp
pre-up ip link set eth0 address aa:bb:cc:dd:ee:ff
...
Работает. Спасибо.
Debian Testing, kernel 3.16-2-amd64, OpenBox
AMD A8-3750 / 16Gb RAM / ATI HD6550D (onboard) / Sound ASUS Xonar - DS
_______________________________
Debian Testing, kernel 3.14-2-amd64, OpenBox
HP-655 AMD E1 / 8Gb RAM / ATI HD7310M