CITKIT.ru - свободные мысли о свободном софте
Деловая газета CitCity.ru Библиотека CITForum.ru Форумы Курилка
Каталог софта Движение Open Source Дискуссионный клуб Дистрибутивы Окружение Приложения Заметки Разное
27.09.2020

Последние комментарии

ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)
24 December, 22:53
Kubuntu Feisty (15)
24 December, 18:42
Один на один с Windows XP (3758)
24 December, 11:46

Каталог софта

Desktop
Internet
Internet-серверы
Безопасность
Бизнес/Офис
Игры
Мультимедиа
Наука
Операционные системы
Программирование
СУБД
Создание веб-сайтов
Утилиты

Статьи

Дискуссионный клуб
Linux в школе
Open Source и деньги
Open Source и жизнь
Windows vs Linux
Копирайт
Кто такие анонимусы
Лицензии
Нетбуки
Нужен ли русский Linux?
Пользователи
Дистрибутивы
Идеология
Выбор дистрибутива
Archlinux & CRUX
Debian
Fedora
Gentoo
LFS
LiveCD
Mandriva
OpenSolaris
Slackware
Zenwalk
Другие линуксы
BSD
MINIX
Движение Open Source
История
Классика жанра
Окружение
shell
Библиотеки UI
Графические среды
Шрифты
Приложения
Безопасность
Управление пакетами
Разное
Linuxformat. Колонки Алексея Федорчука
Заметки
Блогометки
Файловые системы
Заметки о ядре

Заметки

Замена MAC-адреса: зачем и как?

В большинстве домашних и городских сетей используется доступ через DHCP, с привязкой внутреннего IP-адреса к MAC-адресу сетевой карты. Что само по себе не хорошо и не плохо - ибо в большинстве случаев пользователя никак не касается: при смене машины (и сетевой карты) достаточно позвонить провайдеру для перепривязки. Тем не менее, можно представить себе минимум две ситуации, когда смена MAC-адреса пользователем становится необходимостью - без всякого злого умысла.

  1. потребность выходить в сеть попеременно с двух машин, при отсуствии возможности (или желания) налаживать сеть внутреннюю;
  2. наличие двух операционок и двух сетевых карт, каждая из которых поддерживается только одной операционкой.

Не так невероятно, как кажется. Первая причина может быть обусловлена еще и тем, что провайдеры, предоставляющие безлимитный доступ, без восторга относятся к тому, что пользователь качает сразу с двух машин - хотя как это может повредить при соответствующим образом обрезанной скорости (а дешевые безлимитные тарифы всегда обрезаны), я не очень представляю.

А во второй ситуации я оказался недавно при покупке новой машины: встроенная сетевая от чипсета nForce250 (не Ultra) прекрасно поддерживалась Linux'ом (при должным образом собранном ядре), но категорически не виделась ни во FreeBSD, ни в DragonFly. С извлеченной же из загашников NE2000-совместимой карточкой неизвестного (подозреваю, очень китайского) генезиса ситуация была почти обратная: она нормально опознавалась в DragonFly, но в Linux'е... не то чтобы совсем не работала, но время от времени куда-то девалась, так что и назвать это работой язык тоже не поворачивался.

Конечно, все эти проблемы были решаемы (и в конечном счете решены), но в тот момент мне требовался доступ в Интернет - и немедленно (дело происходило в выходные дни, что усложняло ситауцию). И я вспомнил о возможности подмены MAC-адреса, предоставляемой волшебной палочкой сетевика-POSIX'ивиста - утилитой ifconfig.

Начнем с Linux'а - проверялось на дистрибутивах CRUX и Archlinux, при как бы настроенной сети. Как бы - потому что все, касающееся старта DHCP, было прописано в конфигах должным образом. Но поскольку MAC-адресы карты не совпадал с зафиксированным у провайдера, старт этот при загрузке системы завершался ошибкой. В чем легко было убедиться, запустив ifconfig без параметров.

Оказалось, что во исправление положения всего то требовалась простая команда (опчерпнуто из man ifcongif):

$ ifcongif eth0 hw ether 00:00:00:00:00:00

где eth0 - имя сетевого интерфейса, hw (от hardware) - опция, предписывающая сменить "железный" идентификатор карты, ether - указание на класс сетевых устройств, а нули заменяются реальным MAC-адресом. После чего оставалось только перезапустить dhcp-демона. Как - зависит от дистрибутива. В Archlinux (как и в CRUX) подходящим способом оказался такой:

$ /etc/rc.d/networks restart

А для того, чтобы не проделывать все эту процедуру после каждой перезагрузки, достаточно прописать приведенную выше команду ifconfig с соответствующими параметрами в какой-либо из подходящих стартовых скриптов, отрабатываемых до запуска dhcp-демона. В моем случае подходящим оказался тот же /etc/rc.d/networks, отвечающий в Archlinux (и в CRUX) за поднятие сети вообще.

В BSD-системах - все чуть-чуть иначе: различия связаны и с именами сетевых интерфейсов, и с форматом команды ifconfig, и с особенностями скриптов инициализации. Для начала - там не стандартного имени интерфейса, eth#, а есть множество интерфейсных устройств, имена которых более-менее коррелируют с используемым в сетевой карте чипом. В моем случае (как я уже говорил, для BSD использовалась карта из семейства NE2000), имя ему было - ed0. Далее, опции hw в BSD'шном варианте ifconfig нет - достаточно указать класс устройств и собственно адрес. В результате команда приобретает такую форму:

$ ifconfig ed0 ether 00:00:00:00:00:00

После чего опять же перезапуск dhcp-службы. Что делается так:

$ /etc/rc.d/dhclient restart

Ну и увековечить переопределение MAC-адреса можно в том же файле - дописав в самое его начало приведенную выше строку с командой ifconfig.




Комментарии

Страницы комментариев: 1 :: 2 :: 3 :: следующая

аноним, Fri Jan 23 06:04:45 2009:
Википедия:

http://en.wikipedia.org/wiki/MAC_spoofing
аноним, Thu Dec 25 19:04:57 2008:
Ну и увековечить переопределение MAC-адреса можно в том же файле - дописав в самое его начало приведенную выше строку с командой ifconfig.


Дядя, пишешь для ламеров - пиши понятно: в файле - /etc/rc.conf.
аноним, Thu Dec 25 14:49:40 2008:
"наличие двух операционок и двух сетевых карт, каждая из которых поддерживается только одной операционкой." -сказал бы честно, новая железка есть, а драйверов к ней под фряху нет, заставить работать не смог, потому купил вторую, старье, зато работает под фрю.
аноним, Thu Dec 25 00:45:30 2008:
После чего опять же перезапуск dhcp-службы. Что делается так:

Без перезапуска меняется MAC командой ifconfig
ZZZubec, Mon Nov 24 16:11:20 2008:
спасибо!, оказалось под носом 8).
аноним, Thu Jul 24 09:45:17 2008:
Джей, четверг, 24 июля 2008 г. 00:07:29:
блин,я полный нуб в этом деле, но может мне кто-то скажет, КАК изменить мас-адрес и ГДЕ прописать ifconfig <interface>???
----------
http://cb.vu/unixtoolbox.xhtml#network
Джей, Thu Jul 24 00:07:29 2008:
блин,я полный нуб в этом деле, но может мне кто-то скажет, КАК изменить мас-адрес и ГДЕ прописать ifconfig <interface>???
аноним, Mon Jul 7 21:12:06 2008:
/*В большинстве домашних и городских сетей используется доступ через DHCP*/ А че есть локалки с адресами через DNS? Надо написать пиплу как подменяется MAC. Овации, плин
аноним, Mon Jul 7 16:56:21 2008:
интересное название статьи: Замена МАС-адреса: зачем и как?

пля, кому это понадобилось, он сам знает зачем...
аноним, Sun Jul 6 19:49:32 2008:
Че-та не понятно? Это протокол динамической конфигурации хоста. Поменял карту,подключился и IP дают динамически. Любой подключившийся к сети должен получить IP. Если работает dhclient и сервер DDHCP.

Страницы комментариев: 1 :: 2 :: 3 :: следующая

Комментарии заморожены.

Новости:

Все новости на CitCity.ru

Компании месяца

 
Последние комментарии
Почему школам следует использовать только свободные программы (101)
20 Декабрь, 14:51
ОСТОРОЖНО: ВИНДОФИЛИЯ! (2250)

24 Декабрь, 22:53
Linux в школе: мифы про школу и информатику (334)
24 Декабрь, 22:43
Kubuntu Feisty (15)
24 Декабрь, 18:42
Software is like sex: it's better when it's free.
©Linus Torvalds