Ker se bodo na nekem mestu na omrežje priklapljali tudi končni uporabniki (ki ne bodo poganjali OLSR oz. bili del backbonea), mora obstajati način za sprejem takih uporabnikov. Le-ta je opisan v tem dokumentu. Vsi primeri so napisani za OpenWRT (in za Linksys routerje - drugje je mogoče naziv wifi vmesnika drugačen).
Vsaka dostopna točka, ki se uporablja za dostop končnim uporabnikom, si najprej izbere ustrezen subnet. Zaželjeno je da izbira le-tega sledi smernicam, postavljenim v dokumentu o uporabi naslovnega prostora.
Taka točka mora ta subnet oglaševati na dveh mestih:
Vse spodnje nastavitve uporabljajo subnet 10.16.230.0/28 - to je zgolj primer, izbrati morate naslednji prost subnet na seznamu.
Po izbiri subneta je najprej potrebno nastaviti ustrezne naslove. Dostopna točka naj si iz subneta izbere prvi mogoč naslov (v tem primeru je to 10.16.230.1). Nastavitve izvedemo preko datoteke /etc/config/network:
config interface wlan
option ifname "wl0"
option proto static
option ipaddr 10.16.230.1
option netmask 255.255.255.240
Primer nastavitve OLSR za subnet 10.16.230.0/28:
Hna4
{
10.16.230.0 255.255.255.240
}
To zagotavlja da bodo druge točke znale usmerjati promet do končnih uporabnikov.
Za DHCP je primerna uporaba dnsmasq, ki je privzeto nameščen. Najprej je potrebno iz datoteke /etc/config/dhcp pobrisati vso vsebino, potem pa v datoteko /etc/dnsmasq.conf vnesti naslednje:
# filter what we send upstream domain-needed bogus-priv filterwin2k localise-queries no-negcache resolv-file=/tmp/resolv.conf.auto server=10.14.0.1 dhcp-authoritative dhcp-leasefile=/tmp/dhcp.leases # 10.16.230.0/28 dhcp-range=wl0,10.16.230.2,10.16.230.14,255.255.255.240,30m dhcp-option=wl0,3,10.16.230.1 dhcp-option=wl0,6,10.16.230.1
Zadnje vrednosti je seveda potrebno popraviti, da bodo ustrezale izbiri subneta (paziti je treba da v IP območje oglaševano preko DHCP ne vključimo naslova izbranega za dostopno točko)!
Zadnja stvar je namestitev vmesnika za prikaz informacij in avtorizacijo na omrežje (nodogsplash). Na voljo je preko ipkg repozitorija in namestimo ga lahko takole:
ipkg install iptables-mod-ipopt nodogsplash
Po končani namestitvi moramo ustvariti datoteko /etc/init.d/nodogsplash z naslednjo vsebino (datoteka mora imeti nastavljen executable bit):
#!/bin/sh /etc/rc.common
START=50
start() {
nodogsplash -c /etc/nodogsplash/nodogsplash.conf -w /var/run/nodogsplash.sock
}
stop() {
ndsctl -s /var/run/nodogsplash.sock stop
}
Ustvariti je potrebno tudi direktorij /etc/nodogsplash in v njem datoteko nodogsplash.conf z naslednjo vsebino:
#wl0 je interface preko katerega se prijavljajo končni uporabniki
GatewayInterface wl0
FirewallRuleSet preauthenticated-users {
FirewallRule allow to 10.0.0.0/8
}
FirewallRuleSet authenticated-users {
FirewallRule allow
}
FirewallRuleSet users-to-router {
FirewallRule allow
}
Postaviti moramo tudi vsebino, ki se bo prikazala uporabniku in sicer kot HTML datoteko /etc/nodogsplash/htdocs/splash.html. Vsebina naj izgleda takole:
<html> <head> <title>open.kiberpipa.net | Ljubljansko WiFi Omrezje</title> </head> <body> <h1>open.kiberpipa.net - Ljubljansko WiFi Omrezje</h1> Vec informacij je na voljo na http://wifi.frubsd.org. Uporaba dostopa preko te tocke je dovoljena pod pogoji objavljenimi na strani projekta.<br /> <br /> <a href="$authtarget">Avtoriziraj me</a> </body>
Pomembna je predvsem zadnja povezava, ki omogoča dostop uporabnikom. Ta vsebina je zgolj testna, za pravi način predstavitve se je potrebno še dogovoriti!
Na tem mestu je konfiguracija končana, potrebno je le še zagnati vse ustrezne procese:
/etc/init.d/network restart /etc/init.d/dnsmasq enable /etc/init.d/nodogsplash enable /etc/init.d/olsrd restart /etc/init.d/dnsmasq start /etc/init.d/nodogsplash start