Алексей Федорчук
Несколько лет назад я написал небольшую заметку про замену MAC-адреса. Недавно мне пришлось заниматься этим регулярно — во-первых, в связи с вознёй с нетбуком и опробованием на нём различных дистрибутивов. А во-вторых, к перечисленным ранее двум причинам добавилась третья: массовая установка Linux’а на не своим машины в домашних условиях.
Надо сказать, что последнее время на не свои машины я ставлю исключительно Ubuntu’иды. При установке дистрибутивов этого семейства желательно иметь настроенное подключение к сети уже на стадии инсталляции — в частности, для скачивания языково-зависимых пакетов. У моего же провайдера аккаунт привязан к MAC-адресу машины. Так что процедура эта стала регулярной, а поскольку установка Linux’а грозит принять массовый характер, я и сочинил эту памятку — в первую очередь для себя, но, возможно, она пригодится и кому-нибудь ещё.
Для начала отмечу, что подмена MAC-адреса при установке возможна только на дистрибутивах из серии *buntu-desktop — по крайней мере, как это сделать после загрузки с дисков серии *buntu-alternate, я так и не нашёл: команда ifconfig в тамошнем busybox’е отсутствует как класс. Ну а в уже установленной системе она делается без проблем — причём двумя способами.
Первый способ — из командной строки — был придуман в связи с установкой минимальной Ubuntu (вариант без графического интерфейса) и потому, что я до сих пор так и не разобрался в новой стартовой системе этого дистрибутива. В частности, в том, кто отвечает за настройку сетевых служб при отсутствии Иксов и какого-либо десктопа (в их присутствии эту роль берёт на себя Network Manager). Начинается он традиционно — остановкой сети:
$ sudo ifconfig eth0 down
Затем идёт собственно подмена «железного» адреса:
$ sudo ifconfig eth0 hw ether [MAC-адрес]
и рестарт сетевой службы:
$ sudo ifconfig eth0 up
Однако сети при этом не наблюдается, потому как не запущена служба DHCP — попытка сделать это как раньше, рестартом dhclient’а, даёт сообщение об ошибке.
Так что я решил проблему просто и грубо, как Александр Филиппович — переходом в однопользовательский режим:
$ sudo shutdown now
с выбором в появившемся меню пункта продолжения обычной загрузки. После этого выход в сеть становится доступных — но только в текущем сеансе: после рестарта машины процедуру придётся повторить (опять же, исключительно по незнанию, в каком из стартовых скриптов её можно было бы увековечить).
Повторяю, этот способ работает и в минимальной установке дистрибутива, и в LiveCD-окружении, и в системе, установленной обычным образом. Однако в двух последних случаях есть и второй способ — посредством упомянутого выше Network Manager’а.
Это — плагин, сидящий в трее. Если щелкнуть по его иконке правой кнопкой мыши, появится меню, где в числе прочих пунктов будет и такой: Edit Connections. Если выбрать его, появится панель с серией вкладок для различных сетевых соединений, проводных и беспроводных. Во вкладке Wired надо перейти к своему интерфейсу (по умолчанию — Auto eth0) и нажать кнопку Edit. После чего появится новая панель, в соответствующем поле которой (оно так и называется — MAC address) остаётся просто тупо вбить новый адрес вместо старого). И в её же вкладке IPv4 Settings проверить, чтобы в поле Method стояло нужное значение. В моём случае это будет Automatic (DHCP), другой возможный вариант при использовании DHCP —Automatic (DHCP) addresses only, потребует указания ещё и DNS-сервера, домена и идентификатора клиента.
Выйдя из настроечной панели, следует вернуться к контекстному меню иконки Network Manager’а и выбрать в нём пункт Enable Networking — и всё, сеть волшебным образом оживает. Причём в установленной системе (но, разумеется, не в LiveCD-окружении) изменение MAC-адреса будет перманентным — в следующем сеансе ничего перенастраивать не придётся.
С помощью Network Manager’а можно настроить также VPN и DSL (что для меня не актуально), а самое главное WiFi-соединение (вкладка Wireless).Но об этом я расскажу после того, как обзаведусь точкой доступа.
В новой xubunt’е у меня не получилось установить vpn-соединение, мне показалось что аплет есть, а его системных потрахов нет. То есть вроде и меню есть и т.д., а активировать его нельзя :(
Если память не изменяет, работает и такая конструкция:
ifconfig eth0 hw ether … down
Ответ на первый комментарий: пакет network-manager-pptp.