Подменяем MAC-адрес сетевой карты в Ubuntu Linux

Известно, что многие провайдеры, работающие через Ethernet,  идентифицируют клиента по MAC-адресу сетевой карты. И если некоторые относятся к этому вопросу лояльно (дают несколько дней на регистрацию новой карты, или же ограничивают доступ локальными ресурсами), то другие даже не выдают  локальный IP по DHCP.
Ситуации, когда вам может понадобиться подключиться к сети с другой сетевой картой, бывают разные: смена компьютера или сетевой карты (когда интернет хочется уже сегодня, а заявление к провайдеру можно будет отдать только  завтра), временное подключение ноутбука или другого устройства, который обычно получает интернет другим способом, визит гостей со своим устройством и т.д.

Описанный ниже способ как раз для таких случаев. Хочу сразу предупредить — постоянной подмены он не дает.  Иногда «фальшивый» mac-адрес держится до перезагрузки, иногда — сохраняется и после перезагрузки. Если же вам нужна постоянная подмена — смотрите в сторону файла /etc/network/interfaces , но в таком случае могут возникнуть проблемы с Network Manager и другими сторонними утилитами для управления сетевыми подключениями.
1.  Отключаем программно сетевое подключение. Для этого в аплете Network Manager‘а правой кнопкой мыши снимите галочку «Сеть«.
2. Проверьте при помощи команды
ifconfig

отключена ли сеть. Если сеть по прежнему активна по данным ifconfig (или же, если вы не пользуетесь Network Manager), то выполните следующую команду:

sudo ifconfig eth0 down

где eth0 может  отличаться в вашем случае: eth1, eth2 или же иначе, для других типов подключения.

3. Выполните следующую команду, подставив свой интерфейс, если он отличается от eth0, и требуемый мак-адрес:
sudo ifconfig eth0 hw ether mac_адрес

4. Восстановите подключение в Network Manager или же при помощи команды

sudo ifconfig eth0 up

5 комментариев Подменяем MAC-адрес сетевой карты в Ubuntu Linux

  1. Обычно такой способ работает до перезагрузки системы. Добрые люди мне советовали прописать следующее в файл /etc/rc.local:

    [i]ifconfig eth0 down
    ifconfig eth0 hw ether mac_адрес #MAK A
    ifconfig eth0 up[i]

    Это мне действительно помогла, на отличие от ковыряния в /etc/network/interfaces.

  2. Да, тоже вариант. Хотя это просто то, что я и описал, но выполняется при перезагрузке. Хоть и «не по науке», но как рабочее решение весьма может пригодится.
    Благодарю за подсказку.

  3. простіше навіть буде коли дописати то в /etc/network/interfaces

  4. Ipeacocks, дело в том, что при использовании interfaces раньше возникали проблемы c Network Manager. Возможно, сейчас уже таких проблем нет — давненько проверял.
    Хотя если нет нужды использовать Network Manager, то само собой проблемы не будет)

  5. Я всегда делаю так : sudo ifconfig eth0 hw ether xx:xx:хx:xx (вместо хх нужный адрес мас) и sudo /etc/init.d/networking restart, многократно проверял в DC++ после многократных банов по ip) после перезагрузки сохраняется.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *