Podstawowa konfiguracja OpenWrt Kamikaze opisana jest na w innym dokumencie, tutaj zaprezentowane są szczegóły konfiguracji interfejsu radiowego w różnych trybach pracy. Różni producenci różnie te tryby nazywają, więc podaję także nazwy z jakimi się spotkałem. Podane konfiguracje przetestowano dla wersji 8.09.1 z kernelem 2.4 oraz drivera broadcom. Podobne konfiguracje powinny działać też dla sterownika madwifi (Atheros) czy mac80211. Jako platforma testowa posłużył Ovislink WL-1600GL. w większości przypadków tryb bridge działa tylko dla sterowników broadcom z jądrem 2.4 Założenia: nazwy interfejsów: - port WAN: eth0.1 - porty LAN (switch): eth0.0 - interfejs radiowy: wl0 Serwer ISP dostarczał adres z klasy 10.0.0.0/8 i miał adres 10.0.0.1, po Wifi: kanał 6, SSID: MOJ_ISP, kodowanie WPA2 z hasłem 0987654321. W prezentowanych przykładach ruter został ustawiony na adres 192.168.1.1, ustawienia wifi to: kanał 6, nazwa sieci (SSID): moja_siec, zabezpieczenia: WPA2/PSK z hasłem 1234567890. Jednym ze wspólnych plików konfiguracyjnych dla wszystkich scenariuszy jest /etc/config/dhcp; powinien on pozostać domyślny bez zmian. Bez zmian pozostaje też konfiguracja switcha (jeżeli jest) i interfejsu pętli zwrotnej, w tym przypadku wyglądała ona następująco (w pliku /etc/config/network) config 'switch' 'eth0' option 'vlan0' '0 1 2 3 5*' option 'vlan1' '4 5' config 'interface' 'loopback' option 'ifname' 'lo' option 'proto' 'static' option 'ipaddr' '127.0.0.1' option 'netmask' '255.0.0.0' W poniższych przykładach w celu przejrzystości zostały zaprezentowane tylko sekcje lan i wan z pliku /etc/config/network. Jeżeli nie została podana jedna z sekcji (np. wan) - oznacza to że ma jej nie być. UWAGA: Ustawienia (zwłaszcza /etc/config/wireless) mogą się znacznie różnić w zależności od stosowanego drivera (broadcom/atheros/mac80211). W szczególności niektóre tryby mogą nie działać, jeżeli nie wspiera ich danych sterownik. Router bez AP - "internet" dostarczany przez kabel do portu WAN - adres IP WAN dostarczany przez DHCP - adres rutera to 192.168.1.1/24 - komputery podłączamy do rutera kablem (przewodowo) - adresy IP komputery otrzymują z rutera - nie działa interfejs radiowy Taka konfiguracja jest domyślnie po wgraniu OpenWrt (wifi jest wyłączone). /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' config 'interface' 'wan' option 'ifname' 'eth0.1' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' option 'disabled' '1' AccessPoint bez routingu - "internet" dostarczany przez kabel do jednego z portów LAN - port WAN połączony jest razem z portami LAN - adres IP rutera ustawiony na stałe z kasy adresowej serwera - komputery podłączamy do rutera kablem (przewodowo) lub przez Wifi (bezprzewodowo) - adresy IP komputery otrzymują z serwera (tutaj: 192.168.1.1 na którym jest serwer dhcp/dns) - serwer DNS/DHCP na ruterze musi zostać wyłączony /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0 eth0.1' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.2' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'ap' option 'network' 'lan' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' AccessPoint z routingiem (Access Point Mode, AP, gateway) Klasyczna konfiguracja: - "internet" dostarczany przez kabel do portu WAN - adres IP WAN dostarczany przez DHCP - adres rutera to 192.168.1.1 - komputery podłączamy do rutera kablem (przewodowo) lub przez WiFi (bezprzewodowo) - adresy IP komputery otrzymują z rutera Taka konfiguracja jest w OpenWrt po włączeniu interfejsu radiowego /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' config 'interface' 'wan' option 'ifname' 'eth0.1' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'ap' option 'network' 'lan' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' Jeżeli adres WAN ma być ustawiony na stałe a nie pobierany z DHCP config 'interface' 'wan' option 'type' 'bridge' option 'proto' 'static' option 'ipaddr' '10.0.0.2' option 'netmask' '255.255.255.0' option 'gateway' '10.0.0.1' option 'dns' '10.0.0.1' Jeżeli dostęp ma być przez PPPoE config 'interface' 'wan' option 'ifname' 'eth0.1' option 'proto' 'pppoe' option 'username' 'nazwa_uzytkownika' option 'password' 'haslo_uzytkownika' option 'keepalive' '3 5' gdzie liczba 3 to liczba zagubionych pingów przed ponownym połączeniem a 5 - okres czasu pingowania Jeżeli wymagana jest zamiana MAC adresu od strony wan config 'interface' 'wan' option 'macaddr' '00:11:22:33:44:55' ... Ukrycie rozgłaszania SSID na interfejsie radiowym config 'wifi-iface' 'cfg2' option 'mode' 'ap' option 'hidden' '1' ... Izolacja klientów WLAN config 'wifi-iface' 'cfg2' option 'mode' 'ap' option 'isolate' '1' ... Zabezpieczenie WLAN: - brak config 'wifi-iface' 'cfg2' option 'mode' 'ap' option 'encryption' 'none' option 'key' '' ... - WEP config 'wifi-iface' 'cfg2' option 'mode' 'ap' option 'encryption' 'wep' option 'key' '1234567890' ... - WPA / TKIP config 'wifi-iface' 'cfg2' option 'mode' 'ap' option 'encryption' 'psk' option 'key' '1234567890' ... - WPA2 / AES config 'wifi-iface' 'cfg2' option 'mode' 'ap' option 'encryption' 'psk2' option 'key' '1234567890' ... AP + WDS Bardzo podobna do klasycznej konfiguracji: - "internet" dostarczany przez kabel do portu WAN - adres IP WAN dostarczany przez DHCP - adres rutera to 192.168.1.1 - komputery podłączamy do rutera kablem (przewodowo) lub przez WiFi (bezprzewodowo) - adresy IP komputery otrzymują z rutera - można się połączyć do rutera drugim urządzeniem w trybie WDS /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' option 'ifname' 'eth0.0' config 'interface' 'wan' option 'ifname' 'eth0.1' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'ap' option 'network' 'lan' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' config 'wifi-iface' 'cfg3' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'wds' option 'ssid' 'moja_siec' option 'bssid' '11:22:33:44:55:66' option 'encryption' 'psk2' option 'key' '1234567890' Gdzie bssid to adres MAC interfejsu radiowego drugiego (zdalnego) urządzenia Sekcji z WDS może być wiele (dla różnych mac adresów) np. config 'wifi-iface' 'cfg4' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'wds' option 'ssid' 'moja_siec' option 'bssid' '11:22:33:44:55:67' option 'encryption' 'psk2' option 'key' '1234567890' Ad-hoc Znów podobna konfiguracja w założeniach do klasycznego AP, tylko interfejs radiowy pracuje w trybie Ad-hoc (decentralizowana struktura) - "internet" dostarczany przez kabel do portu WAN - adres IP WAN dostarczany przez DHCP - adres rutera to 192.168.1.1 - komputery podłączamy do rutera kablem (przewodowo) lub przez WiFi (bezprzewodowo) a trybie ad-hoc - adresy IP komputery otrzymują z rutera /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' option 'ifname' 'eth0.0' config 'interface' 'wan' option 'ifname' 'eth0.1' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'adhoc' option 'network' 'lan' option 'ssid' 'OpenWrt' option 'encryption' 'wep' Klient AP (STA, APClient, Wireless Routed Client, WISP (Wireless Internet Service Provider), Client Router Mode) - "internet" dostarczany przez WiFi, kanał 6, SSID: MOJ_ISP, kodowanie WPA2 z hasłem 0987654321 - adres IP WAN dostarczany przez DHCP - adres rutera to 192.168.1.1 - komputery podłączamy do rutera kablem (przewodowo) - adresy IP komputery otrzymują z rutera /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' config 'interface' 'wan' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'sta' option 'network' 'wan' option 'ssid' 'MOJ_ISP' option 'encryption' 'psk2' option 'key' '0987654321' Jeżeli fizyczny port WAN ma być włączony do reszty switcha (czyli otrzymujemy 5 użytecznych portów zamiast 4) config 'interface' 'lan' option 'ifname' 'eth0.0 eth0.1' ... Klient+AP (tryb mieszany, repeater, WISP (Wireless Internet Service Provider) Repeater Mode) - "internet" dostarczany przez wifi, kanał 6, SSID: MOJ_ISP, kodowanie WPA2 z hasłem 0987654321 - adres IP portu WAN dostarczany przez DHCP - adres rutera to 192.168.1.1 - komputery podłączamy do rutera kablem (przewodowo) lub przez Wifi (bezprzewodowo) - adresy IP komputery otrzymują z rutera /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' config 'interface' 'wan' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'ap' option 'network' 'lan' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' config 'wifi-iface' 'cfg3' option 'device' 'wl0' option 'mode' 'sta' option 'network' 'wan' option 'ssid' 'MOJ_ISP' option 'encryption' 'psk2' option 'key' '0987654321' Wireless Bridge Client via Client (AP Client Mode) - "internet" dostarczany przez wifi, kanał 6, SSID: MOJ_ISP, kodowanie WPA2 z hasłem 0987654321 - komputery podłączamy do rutera kablem (przewodowo) - adresy IP komputery otrzymują z serwera zewnętrznego, nie rutera - nie zachodzi rutowanie pakietów, komputery są w tej samej klasie co serwer - serwer DNS/DHCP ruterze musi być wyłączony /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'ipaddr' '10.0.0.2' option 'gateway' '10.0.0.1' option 'dns' '10.0.0.1' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'sta' option 'client_bridge' '1' option 'ssid' 'MOJ_ISP' option 'encryption' 'psk2' option 'key' '0987654321' Zobacz także http://openrouter.info/forum/viewtopic.php?f=22&t=678 dla sterowników mac80211. Wireless Bridge Client via Client z repeater (Bridge with AP Mode) - "internet" dostarczany przez wifi, kanał 6, SSID: MOJ_ISP, kodowanie WPA2 z hasłem 0987654321 - komputery podłączamy do rutera kablem (przewodowo) lub przez Wifi (bezprzewodowo) - adresy IP komputery otrzymują z serwera zewnętrznego, nie rutera - nie zachodzi rutowanie pakietów, komputery są w tej samej klasie co serwer - serwer DNS/DHCP ruterze musi być wyłączony /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'ipaddr' '10.0.0.2' option 'gateway' '10.0.0.1' option 'dns' '10.0.0.1' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'sta' option 'client_bridge' '1' option 'ssid' 'MOJ_ISP' option 'encryption' 'psk2' option 'key' '0987654321' config 'wifi-iface' 'cfg3' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'ap' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' Wireless Bridge Client via WDS + AP - "internet" dostarczany przez wifi, kanał 6, SSID: MOJ_ISP, kodowanie WPA2 z hasłem 0987654321, ale przez WDS - adres IP WAN ustawiony na stałe z klasy adresowej serwera - komputery podłączamy do rutera kablem (przewodowo) lub przez Wifi (bezprzewodowo) - adresy IP komputery otrzymują z serwera zewnętrznego, nie rutera - nie zachodzi rutowanie pakietów, komputery są w tej samej klasie co serwer - serwer DNS/DHCP ruterze musi być wyłączony /etc/config/network config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'ipaddr' '10.0.0.2' option 'gateway' '10.0.0.1' option 'dns' '10.0.0.1' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'ap' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' config 'wifi-iface' 'cfg3' option 'device' 'wl0' option 'network' 'lan' option 'mode' 'wds' option 'ssid' 'MOJ_ISP' option 'bssid' '11:22:33:44:55:65' option 'encryption' 'psk2' option 'key' '0987654321' Zakończenie Poniżej zaprezentowano do celów poglądowych pełne konfiguracje trybów AccessPoint i klient z routingiem AccessPoint /etc/config/dhcp config dnsmasq option domainneeded 1 option boguspriv 1 option filterwin2k '0' #enable for dial on demand option localise_queries 1 option local '/lan/' option domain 'lan' option expandhosts 1 option nonegcache 0 option authoritative 1 option readethers 1 option leasefile '/tmp/dhcp.leases' option resolvfile '/tmp/resolv.conf.auto' config dhcp lan option interface lan option start 100 option limit 150 option leasetime 12h config dhcp wan option interface wan option ignore 1 /etc/config/network config 'switch' 'eth0' option 'vlan0' '0 1 2 3 5*' option 'vlan1' '4 5' config 'interface' 'loopback' option 'ifname' 'lo' option 'proto' 'static' option 'ipaddr' '127.0.0.1' option 'netmask' '255.0.0.0' config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' config 'interface' 'wan' option 'ifname' 'eth0.1' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'ap' option 'network' 'lan' option 'ssid' 'moja_siec' option 'encryption' 'psk2' option 'key' '1234567890' Klient (sta, APClient) /etc/config/dhcp config dnsmasq option domainneeded 1 option boguspriv 1 option filterwin2k '0' #enable for dial on demand option localise_queries 1 option local '/lan/' option domain 'lan' option expandhosts 1 option nonegcache 0 option authoritative 1 option readethers 1 option leasefile '/tmp/dhcp.leases' option resolvfile '/tmp/resolv.conf.auto' config dhcp lan option interface lan option start 100 option limit 150 option leasetime 12h config dhcp wan option interface wan option ignore 1 /etc/config/network config 'switch' 'eth0' option 'vlan0' '0 1 2 3 5*' option 'vlan1' '4 5' config 'interface' 'loopback' option 'ifname' 'lo' option 'proto' 'static' option 'ipaddr' '127.0.0.1' option 'netmask' '255.0.0.0' config 'interface' 'lan' option 'type' 'bridge' option 'ifname' 'eth0.0' option 'proto' 'static' option 'netmask' '255.255.255.0' option 'dns' '192.168.1.1' option 'ipaddr' '192.168.1.1' config 'interface' 'wan' option 'proto' 'dhcp' /etc/config/wireless config 'wifi-device' 'wl0' option 'type' 'broadcom' option 'channel' '6' config 'wifi-iface' 'cfg2' option 'device' 'wl0' option 'mode' 'sta' option 'network' 'wan' option 'key' '0987654321' option 'ssid' 'MOJ_ISP' option 'encryption' 'psk2'