The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  ВХОД  слежка  RSS
"Заменить на сетевухе MAC адрес!!!"
Вариант для распечатки Архивированная нить - только для чтения! 
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [Проследить за развитием треда]

"Заменить на сетевухе MAC адрес!!!"
Сообщение от Walker emailИскать по авторуВ закладки on 06-Мрт-01, 15:11  (MSK)
Можно ли такое сделать и с помощью чего ??
  Рекомендовать в FAQ | Cообщить модератору | Наверх

 Оглавление

Индекс форумов | Темы | Пред. тема | След. тема
Сообщения по теме

1. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от Dron emailИскать по авторуВ закладки on 06-Мрт-01, 15:20  (MSK)
На большинстве сетевух можно.
Если скажешь какая сетевуха конкретно тебя интересует, я скажу что нужно доработать с ядре.
Надо добавить пару функций в ioctl, и ты из любой программы сможешь менять мак.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

2. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от ivo emailИскать по авторуВ закладки on 07-Мрт-01, 15:43  (MSK)
man ifconfig
ifconfig eth0 down
ifconfig eth0 hw ether 00:01:02:03:04:...
ifconfig eth0 up
что-то типа этого
  Рекомендовать в FAQ | Cообщить модератору | Наверх

3. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от Dron emailИскать по авторуВ закладки on 11-Мрт-01, 15:53  (MSK)
Я подумал что в вопросе явно что-то не описано!
Какая система?
Откуда ты хочешь менять мак адреса?
с консоли?
или программным способом?

кстати во FreeBSD у ifconfig параметра hw нет, есть lladdr...

глубинно происходит ioctl - SIOCSIFLLADDR,
Только он далеко не всеми сетевухами поддерживается.

  Рекомендовать в FAQ | Cообщить модератору | Наверх

4. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от Lamerchaynik emailИскать по авторуВ закладки on 12-Мрт-01, 22:09  (MSK)
Выставил я lladdr 12:34:56:78:90:12 - скушал, но сетка перестала работать ;). down, up - заработала сетка, ifconfig показывает 12:34:56:78:90:12, но когда пингую с другой машины и смотрю кэш arp, то вижу её родной мак, а не этот новый. Что это значит, моя сетевуха не поддерживает смену мак-адреса? Или надо в ядре что-то крутить и перекомпилить? (ioctl - как имненно? Допустим у меня он называется de0, tulip)
  Рекомендовать в FAQ | Cообщить модератору | Наверх

5. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от Dron emailИскать по авторуВ закладки on 13-Мрт-01, 16:32  (MSK)
Ну во первых ARP записи живут долго... У меня около 20 минут... то есть если ты на одной тачке поменял мак, то с другой тачки пакеты ходить не будут, надо сперва прибить ARP запись... или с изменившейся тачки разослать всем что нибудь...

Теперь по поводу драйвера...
Хм... помоему это не должно работать...
ifconfig не каких варнингов не выдает?
типа того:
ioctl (set lladdr)
?

  Рекомендовать в FAQ | Cообщить модератору | Наверх

6. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от Lamerchaynik emailИскать по авторуВ закладки on 14-Мрт-01, 14:19  (MSK)
Время жизни кэша arp я учёл, там всё в норме.
...дык и не работает фактически :)
и ворнингов нет никаких, тихо показывает себе новый мак-адрес, фактически продолжая использовать старый. Пинг сам себя с последующей проверкой кэша arp это подтверждает. Так и что делать с этим ioctl, сделайте одолжение, объясните чайнику, желательно степ-бай-степ :) (ката у меня de0: DEC 21142 [10-100Mb/s] ), может ещё кому пригодится.
  Рекомендовать в FAQ | Cообщить модератору | Наверх

7. "RE: Заменить на сетевухе MAC адрес!!!"
Сообщение от Dron emailИскать по авторуВ закладки on 14-Мрт-01, 14:31  (MSK)
Ну надо в pci/if_de.c добавить парочку ioctl

Вот подробнее...

находишь функцию tulup_ioctl,
Там идет switch по cmd...

Находишь там такое место:

                default: {
                    tulip_init(sc);
                    break;
                }

И перед этим добавляешь:

        case SIOCSIFLLADDR:
                /* Set HW addr for adapter! */
                memcpy (sc->tulup_enaddr, ifr->ifr_addr.sa_data, 6);
                tulup_init (sc);

                break;

        case SIOCGIFLLADDR:
                /* Get HW addr for adapter! */
                ifr->ifr_addr.sa_len = 6;
                ifr->ifr_addr.sa_family = AF_LINK;
                memcpy (ifr->ifr_addr.sa_data, sc->tulup_enaddr, 6);

                break;

Вот, и тогда сможешь менять и получать эзернет адреса, только не гарантирую что изменения будут отражаться в ifconfig...

PS: только щас все табы порежуться... :( ну разберешься... :)

  Рекомендовать в FAQ | Cообщить модератору | Наверх


Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Пожалуйста, прежде чем написать сообщение, ознакомьтесь с данными рекомендациями.




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру