Имеется такая задача, к компьютеру в локальной сети подключается USB WiFi адаптер, при этом компьютер
автоматически превращается в прозрачный мост для подключемых WiFi устрайств (ноутбуки). А после отключения адаптера, компьютер должен восстановить своё исходное состояние.В файле /etc/network/interfaces находятся описания настроек интерфейсов, а так же способы запуска
Например такая запись, заставляет автоматически включать eth0 и настраивать его по DHCPauto 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.me/tips/info/2128.shtml
Заголовок статьи не соответствует содержанию.
Позволю себе дополнить, хорошее описание описание доступно по zcat /usr/share/doc/ifupdown/examples/network-interfaces.gz
у меня без указания полных путей к iwconfig route и т.д. почему то эти команды не выполнялись после ребутанаверное потому что окружение еще не загружается
Сам спросил - сам ответил.
Посмотри где и когда у тебя определяется $PATH - желательно, чтоб оно определялось не в профиле пользователя...
>Сам спросил - сам ответил.
>Посмотри где и когда у тебя определяется $PATH - желательно, чтоб оно
>определялось не в профиле пользователя...это имел ввиду
man что, дабы получить на столько же красивое описание и действие в RedHat и клонах, никто не подскажет ?
>man что, дабы получить на столько же красивое описание и действие в
>RedHat и клонах, никто не подскажет ?
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 # иди-ка бабуля, другой дорогой моста нет...
> # иди-ка бабуля, другой дорогой моста нет...Зачот.Юморно и и что самое интересное - порядок действий неплохо запоминается по такой схеме.
>> # иди-ка бабуля, другой дорогой моста нет...
>
>Зачот.Юморно и и что самое интересное - порядок действий неплохо запоминается по
>такой схеме.Запятую не туда впихнул, после дороги надо - "иди-ка бабуля другой дорогой, моста нет..."