URL: https://www.opennet.ru/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID3
Нить номер: 57069
[ Назад ]

Исходное сообщение
"Раздел полезных советов: Выполнение действий при изменении с..."

Отправлено auto_tips , 20-Июл-09 20:45 
Имеется такая задача, к компьютеру в локальной сети подключается USB WiFi адаптер, при этом компьютер
автоматически превращается в прозрачный мост для подключемых WiFi устрайств (ноутбуки). А после отключения адаптера, компьютер должен восстановить своё исходное состояние.

В файле /etc/network/interfaces находятся описания настроек интерфейсов, а так же способы запуска
Например такая запись, заставляет автоматически включать eth0 и настраивать его по DHCP

   auto eth0
   iface eth0 inet dhcp
       post-down ip addr flush dev eth0 dhcp # удаляем привязанный IP


Для привязки действий в момент подключения или отключения усторойства с заданным именем можно использовать опцию allow-hotplug.

Объявляем новое соединение wlan0 и последовательность событий-действий связанных с ним:

   iface wlan0 inet manual
       pre-up ifdown eth0 # стопим eth0, нужно для включения его в  bridge
       pre-up brctl addbr bridge
       pre-up brctl addif bridge eth0
       pre-up brctl addif bridge wlan0
       pre-up ifconfig eth0 up
       pre-up dhclient3 bridge
       pre-up ifconfig wlan0 down
       pre-up iwconfig wlan0 mode ad-hoc freq 2.437GH essid ffhome channel 6
       pre-up ifconfig wlan0 up
       post-down brctl delif bridge eth0
       post-down ifconfig bridge down # стопим bridge, нужно для его  удаления
       post-down brctl delbr bridge
       post-down ifup eth0 # снова включаем eth0
   allow-hotplug wlan0

Опция allow-hotplug инициализирует интерфейс wlan0 в момент когда ядро его определяет.
Первое событие происходит перед инициализацией интерфейс. В этот момент нужно остановить eth0,
сбросить у него IP, подготовить и запустить мост, а затем иницилизировать WiFi адаптер в режиме точки.

А после отключения WiFi адаптера необходимо удалить мост и восстановить eth0.


URL: http://breys.ru/blog/355.html
Обсуждается: http://www.opennet.ru/tips/info/2128.shtml


Содержание

Сообщения в этом обсуждении
"Выполнение действий при изменении состояния сетевых интерфейсов в Debian"
Отправлено StasikOS , 20-Июл-09 20:45 
Заголовок статьи не соответствует содержанию.

"Выполнение действий при изменении состояния сетевых интерфейсов в Debian"
Отправлено Kirill , 20-Июл-09 20:59 
Позволю себе дополнить, хорошее описание описание доступно по zcat /usr/share/doc/ifupdown/examples/network-interfaces.gz

"Выполнение действий при изменении состояния сетевых интерфейсов в Debian"
Отправлено VecH , 21-Июл-09 11:38 
у меня без указания полных путей к iwconfig route и т.д. почему то эти команды не выполнялись после ребута

наверное потому что окружение еще не загружается


"Выполнение действий при изменении состояния сетевых интерфей..."
Отправлено Filosof , 23-Июл-09 16:36 
Сам спросил - сам ответил.
Посмотри где и когда у тебя определяется $PATH - желательно, чтоб оно определялось не в профиле пользователя...

"Выполнение действий при изменении состояния сетевых интерфей..."
Отправлено VecH , 23-Июл-09 16:39 
>Сам спросил - сам ответил.
>Посмотри где и когда у тебя определяется $PATH - желательно, чтоб оно
>определялось не в профиле пользователя...

это имел ввиду


"Выполнение действий при изменении состояния сетевых интерфейсов в Debian"
Отправлено Vyacheslav , 21-Июл-09 11:45 
man что, дабы получить на столько же красивое описание и действие в RedHat и клонах, никто не подскажет ?

"Выполнение действий при изменении состояния сетевых интерфей..."
Отправлено pavlinux , 22-Июл-09 01:05 
>man что, дабы получить на столько же красивое описание и действие в
>RedHat и клонах, никто не подскажет ?

http://www.redhat.com/docs/manuals/enterprise/


"Выполнение действий при изменении состояния сетевых интерфейсов в Debian"
Отправлено pavlinux , 22-Июл-09 00:57 
post-down ifconfig    eth0   down  # для начала надо запретить
post-down ifconfig    wlan0  down  # ездить по мосту.

post-down ifconfig    bridge down  # потом закрыть мост

post-down brctl delif bridge eth0  # и разогнать народ ...
post-down brctl delif bridge wlan0 # иначе бридж не удалится

post-down brctl delbr bridge       # теперь можно его взрывать

post-down ifup eth0             # иди-ка бабуля, другой дорогой моста нет...


"Выполнение действий при изменении состояния сетевых интерфей..."
Отправлено User294 , 23-Июл-09 19:24 
>   # иди-ка бабуля, другой дорогой моста нет...

Зачот.Юморно и и что самое интересное - порядок действий неплохо запоминается по такой схеме.


"Выполнение действий при изменении состояния сетевых интерфей..."
Отправлено pavlinux , 23-Июл-09 19:35 
>>   # иди-ка бабуля, другой дорогой моста нет...
>
>Зачот.Юморно и и что самое интересное - порядок действий неплохо запоминается по
>такой схеме.

Запятую не туда впихнул, после дороги надо -  "иди-ка бабуля другой дорогой, моста нет..."