Имеется USB адаптер Acorp WUG и рабочая машина(ffadm) с Debian Lenny, нужно настроить этот компьютер в качестве точки доступа для ноутбуков(ffeee), при этом IP адреса должны выдаваться от находящегося в локальной сети DHCP сервера (ffserv)
Обалдеть, теоретически всё так просто, а на деле оказалось, что есть целая куча проблем связанных в драйверами, например в Ubuntu 8.04.3 этот адаптер не переводится в режим точки доступа, а в Debian lenny при одних настройках каждый раз работает с вероятностью 50%, за то потрясающая гибкость
Настройка wifi соединения в режиме точки доступа(ffadm) (пока без шифрования)
ifconfig wlan0 down
iwconfig wlan0 mode ad-hoc
iwconfig wlan0 essid home
iwconfig wlan0 channel 6
iwconfig wlan0 freq 2.412G
ifconfig wlan0 up
Настройка wifi соединения на ноутбуке (ffeee)
ifconfig wlan0 down
iwconfig wlan0 essid home
iwconfig wlan0 ap auto
iwconfig wlan0 channel auto
iwconfig wlan0 freq 2.412G
ifconfig wlan0 up
dhclient3 wlan0
Перед изменением режима работы WiFi адаптеров их необходимо останавливать вот так ifconfig wlan0 down иначе будут ошибки типа
Error for wireless request "Set Mode" (8B06) :
SET failed on device wlan0 ; Invalid argument.
Теперь нужно разрулить получение от dhcp адреса от ноутбука, то-есть придётся настраивать мост и перестроить сетевые интерфейсы на десктопе(ffadm), для этого нужно установить средства управления мостами (bridge)
aptitude install bridge-utils
теперь необходимо озаботиться деактивацией подключаемых в мост интерфейсов(ffadm) (eth0, wlan0), если они были активированны
ip addr flush dev eth0
ip addr flush dev wlan0
создаём мост и добавляем в него нужные интерфейсы(ffadm)
brctl addbr bridge
brctl addif bridge eth0
brctl addif bridge wlan0
# получаем IP для моста(на ffadm) DHCP
dhclient3 bridge
Для привязки ноутбука к одномк DNS имени (ffeee) по MAC адресу его сетевой карты и WiFi адаптера необходимо в настройки dhcp3 добавить секцию для wifi адаптера ноута
host eee{
hardware ethernet 00:1F:C6:E9:0B:8D;
fixed-address ffeee.a;
}
host eee-wifi{
hardware ethernet 00:15:AF:95:BF:67;
fixed-address ffeee.a;
}
Теперь ноутбут будет одинаково хорошо подключать в сети и иметья одно имя, что по-моему удобнее чем запоминать кучи алиасов
А теперь нужно разобраться как это хозяйство заставить запускаться автоматически, учитывая при этом то, что usb WiFi адаптер не всегда покдлючен, пока что я сделал так, выкинул из /etc/network/interfaces и добавил код запускующуй и создающий мост совсместно с WiFi соединением
auto bridge
iface bridge inet dhcp
pre-up ifconfig eth0 down
pre-up ifconfig wlan0 down
pre-up brctl addbr bridge
pre-up brctl addif bridge eth0
pre-up brctl addif bridge wlan0
pre-up iwconfig wlan0 mode ad-hoc
pre-up iwconfig wlan0 essid home
pre-up iwconfig wlan0 channel 6
pre-up iwconfig wlan0 freq 2.412G
pre-up ifconfig eth0 up
pre-up ifconfig wlan0 up
post-down ifconfig eth0 down
post-down ifconfig wlan0 down
post-down brctl delif bridge eth0
post-down brctl delif bridge wlan0
post-down ifconfig bridge down
post-down brctl delbr bridge
С таким конфигом сеть ни за что не запустится если не вставлен WiFi адаптер, ну и разумеется пока отсутствует шифрование