[BSD] pfsense mint wireless AP/router

Róbert Biró birrbert at gmail.com
2012. Jan. 12., Cs, 09:54:21 CET


Üdv mindenkinek!

Fórumozáshoz vagyok szokva, azaz ilyen levlista stílusban még nem kértem 
segítséget, no de majd belejövök. :-) Kissé hosszas lesz ez a levél, 
mert bevezetőt is kívánok írni, illetve tapasztalatlanságom végett 
előfordulhat, hogy hibásan fogalmazok. Kérlek, legyetek elnézőek.

pfsense felhasználóként működtetek, vagy legalább is szeretnék 
működtetni a lakásomban egy home server-t. Körülbelül egy éve kezdtem el 
építeni a gépecskét, ami így elsőre elég hosszú időnek tűnhet, de nem 
foglalkoztam intenzíven vele, csak a legelején és az elmúlt egy 
hónapban. Az Intel D510MO alaplapját választottam, amelyben a D510-es, 
1,66 Ghz-es, dupla magos, 64 bites Atom processzor ketyeg. Tettem bele 3 
GB RAM-ot, egy 250 GB-os 2,5" merevlemezt, a mini PCI Express slot-ba 
egy wireless Atheros kártyát, a PCI slot-ba pedig egy Realtek chipset-es 
gigabit-es hálózati kártyát. Fotóalbumok és részletes konfiguráció itt: 
http://www.flickr.com/photos/birrbert/sets

Több oprendszert is kipróbáltam, de részletesen csak kettőt: Ubuntu 
10.04 LTS Server és pfsense 2.0.1. Amíg az Ubuntu-t nyúztam, még az volt 
a tervem, hogy wireless N router-nek, torrent szervernek és weboldalak 
tesztelésére fogom használni. A tanulás volt a fő cél, és most is az. 
Úgy gondoltam, hogy egy ennyit elbír ez a hardver, már csak azért is, 
mert másoknak sikerült. A legnagyobb csalódást a wireless része okozta, 
mert roppant nehézkes a beállítása, kényes a szoftver rész, nem fogad el 
akármilyen hardvert, és amit elfogad, az is csak korlátozott keretek 
között tud működni illetve nem stabil.

Tudom a BSD alapú oprendszerek nem igazán támogatják az N-es wireless 
kártyákat, ezért a pfsense óta elhatároztam, hogy megelégszem a G-s 54 
Mbit-es sebességgel is, csak legyen stabil a kapcsolat. A jó hír 
esetemben az, hogy eddig a ezzel értem el a legjobb eredményeket. Ubuntu 
alatt három klienstől sokszor az egész rendszer összeomlott, csak az 
áramtalanítás hozta helyre, de ez nem volt túl jó megoldás, mert óránkét 
kezdődött elölről minden. pfsense alatt a legrosszabb eset az volt, 
amikor ledobálta a klienseket, és az SSID eltűnt az elérhető hálózatok 
listájáról; szerencsére csak a wireless döglött be, kábeles kapcsolatom 
volt a szerverhez, és ki tudtam javítani a problémát.

A rossz hír az, hogy még mindig nem olyan, amilyennek én szeretném, hogy 
legyen, és most megpróbálom leírni az észrevételeimet. Alap helyzetben 
(egyszerű böngészés, chat, Skype, YouTube, rádió hallgatás, e-mailezés, 
kisebb fájlok letöltése) mindhárom (ennél több ritkán lesz) Windows-os 
kliens laptopon jól megy minden. A wireless log-ban sehol egy 
hibaüzenet, élvezhetően lehet Internetezni. De ha már elkezdek online 
Warcraft 3-at játszani vagy torrent-ezni, akkor kezd akadozni a gépezet. 
Főként az utóbbira koncentrálnék, mert a játék picikét lag-ol csak, és 
közben nincs lehetőségem figyelni egyébre. Tehát amikor minden rendben, 
akkor a kliens és szerver között nagyon pöpec a kapcsolat. Ezt 
ping-eléssel szoktam ellenőrizni körülbelül 2 percen keresztül, és 
normális esetben a ping reply 1 ms, egy-egy kiugró érték van, de az is 
max 30 ms. Torrent-ezéskor a válaszidő nagyon megnő illetve oszcillál: 
van amikor 1 ms, de nem ez a jellemző, hanem 100-tól 800-ig mindenféle 
érték felbukkan, s ami a legrosszabb, hogy vannak elveszett csomagok is. 
A torrent letöltési sebessége 400-800 KB/s-ban maximalizálódik, holott 
tudom, hogy feltöltő van elég, és mehetne gyorsabban is. A weboldalak 
nehezen töltődnek be, élvezhetetlen a netezés. Néha a torrent letöltési 
sebesség nem bénázik, és stabilan csorog 2,9 - 3 MB/s-al. Közben 
figyelni szoktam a log-ot, és ilyenek jelentkeznek a percenkénti 
handshake lezajlásakor: "EAPOL-Key timeout" majd rögtön utána "WPA: 
received EAPOL-Key 2/2 Group with unexpected replay counter". Ez is egy 
szimptóma; valami miatt késik a key frame a kliens részéről, amit a 
szerver kér, ezért újra lekéri, majd, amikor késve megérkezik, 
elfogadja, de aztán megérkezik a második kérésre is a válasz, és ezt már 
unexpected-ként könyveli el. Egy szó mint száz, alapvetően jó a 
kapcsolat, nem dobálja le a klienseket, és nem is döglik be, de úgymond 
terhelés alatt élvezhetetlenné válik a netezés. Azért vagyok emiatt 
nyűgös, mert ezelőtt egy Asus WL-500G Deluxe router-em volt, amiben 
Broadcom G-s wireless kártya van, és soha de soha nem tapasztaltam 
problémát vele sem játék közben sem torrent-ezés közben. Egyébként azon 
OpenWRT futott.

A konfigurációról röviden: re0 az alaplapi hálókártya (Realtek 8111DL) a 
WAN interfész, re1 a PCI-s hálókártya (Realtek 8169) a LAN interfész és 
ath0 a mini PCI Express wireless kártya (Atheros 5418 AR5BXB72 AR5008) 
az OPT1 interfész. A WAN port DHCP-vel kapja a szolgáltatótól az IP 
címet, a LAN és az OPT1 statikusra van beállítva, és külön IP címeket 
osztanak a klienseknek DHCP-vel, tehát nincs bridge a kettő között. Az 
OPT1 konfig oldal így nézett ki legelőször: 
http://i.imgur.com/XntR8.jpg. Azóta annyit változtattam, hogy 1) 
kerestem egy kevésbé zsúfolt csatornát, a 11-es lett a kiválasztott, 
habár ahol lakom, szerintem a többi wireless router vagy access point 
csatorna kiválasztása automatikusra van állítva, mert folyton mozognak, 
az inSSIDer-el szoktam figyelni, és 2) az Antenna Settings-nél mindent 
Default-ra állítottam. Kipróbáltam még azt, hogy WPA2-AES helyett 
WPA-TKIP titkosítást állítok be, de számottevő különbséget nem éreztem 
(most ismét az első van beállítva). Kliens oldalon is eszközöltem pár 
finomhangolást, annak ellenére, hogy az Asus router idejében ilyesmire 
nem volt szükség.

Na, azt hiszem elég is lesz egyelőre a meséből. További részleteket is 
meg tudok adni, ha fontos. Izé... 100 Mbit-es Internet kapcsolatom van; 
a valóságban ez 80 Mbit letöltést és 50 Mbit feltöltést jelent stabilan. 
Több apró kérdésem is lenne, de az általános az az, hogy van-e tippetek 
azzal kapcsolatban, hogy mi folyik (vagy nem folyik) itt, és, hogy 
hogyan tudnám optimalizálni a wireless kapcsolatot?

Üdv,

-- 
Biró Róbert




További információk a(z) BSD levelezőlistáról