LINUX.ORG.RU
решено ФорумAdmin

[Решено] [Debian] Автозапуск WiFi точки доступа

 


0

1

Имеется машина на Debian Squeeze. В ней есть несколько сетевух и pcie-вафля с атеросовским чипом. Настроен DHCP-сервер и точка доступа, сетевые интерфейсы объединены в мост. Всё работает, если запускаю после загрузки системы так:

/etc/init.d/hostapd start
/etc/init.d/networking restart
ifup eth3
/etc/init.d/isc-dhcp-server restart
При загрузке же, как я понимаю, сначала выполняется /etc/init.d/networking start, и при этом wlan0 не добавляется к мосту (Operation not permitted). Я так понимаю, сначала нужно запускать hostapd. Подскажите, как это правильно сделать.

Также просьба подсказать, куда и как лучше записать инициализацию настроек для iptables.

Заранее спасибо :-)



Последнее исправление: debian_user (всего исправлений: 1)

Настройте hostapd в /etc/network/interfaces и поменяйте местами интерфейсы, скармливаемые директиве auto.

AITap ★★★★★
()

Ну так подмени /etc/init.d/networking на скрипт, который будет выполнять нужную тебе последовательность. Или засунь /etc/init.d/hostapd в pre.up.

Инициализацию настроек iptables можешь засунуть в /etc/network/interfaces, а точнее добавить туда iptables-restore путь_к_файлу_сделанному_iptables-save

aleks13
()

у меня так:

interfaces:

auto wlan1
iface wlan1 inet manual
        pre-up iw dev wlan1 del
        pre-up iw phy phy0 interface add wlan1 type __ap

auto br0
iface br0 inet static
        address 192.168.0.1
        network 192.168.0.0
        netmask 255.255.255.0
        broadcast 192.168.0.255
        bridge-stp off
        bridge-ports wlan1 tap9 tap8

hostapd.conf

interface=wlan1
driver=nl80211
ssid=debian
hw_mode=g
auth_algs=1
channel=11
macaddr_acl=0
#accept_mac_file=/etc/hostapd/hostapd.accept
#deny_mac_file=/etc/hostapd/hostapd.deny

ignore_broadcast_ssid=0
wpa=2                                                        
wpa_passphrase=secret
wpa_key_mgmt=WPA-PSK                 
wpa_pairwise=CCMP  

и всё работает

а iptables у меня в /etc/netword/if-up.d/

lazyklimm ★★★★★
()

нету под рукой машины с Debian, но на http://wiki.debian.org/LSBInitScripts говорят что в скриптах есть параметр

Should-Start: boot_facility_1 [boot_facility_2...] 
defines the facilities that if present should start before the service provided by the script. Nevertheless, the script can still start if the listed facilities are missing. This allows for weak dependencies which do not cause the service to fail if a facility is not available. Consider using virtual facility names as described below if adequate.

Spider_xp
()

Ого, сколько ответов и так быстро! Всем спасибо, воспользовался вот этим:

auto wlan1 iface wlan1 inet manual pre-up iw dev wlan1 del pre-up iw phy phy0 interface add wlan1 type __ap
(Я правильно понимаю, что эти команды удаляют старый интерфейс и создают новый, который уже может работать в режиме ap?)

И вот этим:

iptables-restore < /etc/iptables.up.rules

И всё работает.

debian_user
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.