Jatketaan ”Kotiverkko kuntoon” -sarjaa.
Tässä osassa testataan uutta Pfsense palomuuria tekemällä kotiin toinen rinnakkainen LAN/wifi-verkko. Näin pääsee hallitummin testaamaan uutta purkkia ja sen ominaisuuksia ilman, että koko kotiverkko menee juntturaan. Kirjataan tapahtumia ylös, niin jää itsellekin muistijälki mitä tuli tehtyä/kokeiltua, mikä onnistui ja mitä pitää vielä ehkä tutkia lisää.
- Testiverkon rakentamista
- Pfsense alakertaan – WAN Vlanin ylitse
- Pfsense yläkertaan – LAN Vlanin ylitse
- Dual WAN ominaisuuden testaamista
- Paluu arkeen
- Yhteenveto
Testiverkon rakentamista
Jotta homma ei mennyt ihan reisille, tein testit muutamassa osassa ja piirtelin jokaisesta osasta pienen suunnitelman.
Aluksi virittelin vapaana olevasta Asus RT-AC5300 reitittimestä oman uuden verkon alakerran toimistoon. Näin tarvittavat monitorit,näppikset, tietokoneet ja wifi-tukiasema olivat samassa tilassa ja niitä oli helpompi käpistellä ilman, että piti ravata huoneesta toiseen.
Internet yhteytenä käytin toista 4G modeemia, jonka yläkerrassa oleva LAN-piuha kytkettiin yläkerran XGS-1250 kytkimeen ja siitä alakertaan VLANina (11) XGS1250-kytkimeen. Tästä eteenpäin ”Internet” meni omassa piuhassaan kytkentäkaapin kautta toimiston seinän ethernet-tökkeliin.
Kodin muu verkko pysyi Asus ET12 reitittimien takana. Eri verkkojen liikenne oli eroteltu toisistaan VLANien avulla. Testien ajan intenet yhteys tähän verkkoon tuli toisen 4G modeemin kautta (elisa). XGS-1250 Vlanit näyttävät toimivan ihan hyvin. Vaikka molemmissa verkoissa ip-osoitteet olivat päällekkäisiä ja samasta ip-avaruudesta (10.69.69.0/24), niin VLANit eivät ”vuotaneet”.
Jotta alkuperäinen wifi-verkko häiriintyisi mahdollisimman vähän laitoin myös testiverkon tukiasemasta 2.4Ghz ja 5G-2 wifi-verkkojen radiot alas. Toinen 5Ghz radio ja langallinen yhteys jäi näin testikäyttöön.
Alkuperäinen tarkoitus oli käyttää toista ET12-laitetta AC5300 laitteen sijaan. Useasta yrityksestä huolimatta tästä suunnitelmasta piti luopua. Vaikka ET12:n resetoi ”pehmeämmin”=reset-nappi tai ”kovemmin”=wps-reset, niin hetken päästä hengissä oleva Aimesh-node ”imaisi” juuri resetoidun vehkeen osaksi Aimesh-verkkoa. Tämä siis vaikka oli juuri konfiguroinut uuteen reititimeen omat ip-osoitteet. Jos haluaa erottaa ET12-laitteet omiksi verkoiksi, niin näyttää siltä, että molemmat pitää resetoida.
Kuva: Testiverkko

Pfsense alakertaan – WAN Vlanin ylitse
Uusi Asus RT-AC5300 reitittimen päälle rakennettu testiverkko kerkesi hyrrätä muutaman päivän ja toimi ihan hyvin hupi/työkäytössä.
Lopulta Pfsense vihdoin pitkällisten tulliseikkailujen jälkeen saapui paikalliseen postiin.
Vaikka Aliexpres myymiön optiossa oli mainittu, että laiteessa olisi Pfsense valmiiksi asennettuna, niin näin ei kuitenkaan ollut. No ei ollut kovin iso ongelma ja onpahan nyt ”turvallisempi” versio, kun olen omin kätösin softan asentanut, enkä jotain epämääräistä Kiina-imagea.
Softan imutus Netgate:n saitilta, USB boottilevyn teko Etcher softalla, Pfsense:n asennus USB:ltä. Tämän aikaa laite oli kytkettynä monitoriin (HDMI) ja näppikseen (USB). Kun Pfsense oli asennettu ja pystyssä, sai sen kiinni verkkoon. Tämän jälkeen konffaus hoitui web-käyttöliittymän kautta, eikä erillistä näyttöä tai näppistä enää tarvittu.
RT5300 konffiin muutos Asus käyttöliittymästä, vaihdettiin toimintatila ”reititin” -tilasta ”access point” -tilaan. Kun muutoksen teki näin, niin aiemmin tehdyt uuteen toimintatilaan sopivat asetukset säilyivät, esim alaslaitetut 2.4G ja 5G-2 radiot pysyivät pois päältä. Jos laitteen olisi resetoinut ja asentanut alusta, niin kaikki asetukset olisi joutunut tekemään alusta uusiksi.
Lisäksi tulevaisuutta varten olin kopionut aiemmat DHCP varaukset talteen. Naputtelin ne Pfsenseen sisään, jotta siinä vaiheessa kun Pfsensestä tulisi uusi reititin kotiverkolle ei ip-osoitteet menisi kokonaan uusiksi. Pfsensen DHCP server toimii hieman eri lailla kuin Asuksessa, jos DHCP rangeksi on varattu esim .10-.200, niin tältä väliltä ei voi osoitteita muuttaa kiinteäksi. Kun omat varatut osoitteet olivat alle .200, niin päädyin laittamaan Pfsensen DHCP rangeksi .200-.240.
Yksi osuus mikä aiheutti ihmetystä oli DNS. Defaulttina Pfsense käyttää sisäänrakennettua ”DNS resolver” palvelua, mutta jostain syystä tämän käyttäminen aiheutti webbisurfailuun todella tahmeaa toimintaa. Päädyin ottamaan ”DNS resolver” palvelun pois päältä ja ottamaan käyttöön ”DNS forwarder” palvelun, jossa kaikki DNS kyselyt lähtee verkkoon, esim 1.1.1.1 tai 8.8.8.8 osoitteeseen. Ilmeisesti verkon dedikoiduilla DNS palveluilla on cachet paremmin kunnossa, joten vastaukset DNS kyselyihin menevät nopeammin läpi ja webbisurffailu sujuvoitui huomattavasti.
Jotta Chrome browserin sai muistamaan käyttäjätunnuksen/salasanan piti Pfsense:n default SSL sertifikaatti laittaa kuntoon. Hyvät ohjeet aiheeseen:”Enable SSL for pfSense – Fast & Easy”. Ohjeista kannattaa noudattaa varsinkin ”backdoor” osuutta. Onnistuin saamaan pariin kertaan käyttöliittymän lukkoon ja samalla tuli tutustuttua aiempien konfiguraatioversioiden palauttamiseen ssh-yhteyden yli.
Kun homma oli saatu toimimaan jotenkuten, oli aika pitää pieni tauko konffien muuttamisessa ja käyttää internettiä normaalisti muutama päivä alakerran toimiston koneilta pfsense palomuurin kautta.
Kuva: Pfsense alakertaan

Pfsense yläkertaan – LAN Vlanin ylitse
Kun Pfsense näytti toimivan vakaasti, eikä mitään kummempia ongelmia oltu havaittu, oli aika siirtyä seuraavaan testausvaiheeseen, eli viedä Pfsense lopulliseen sijoituspaikkaansa eli yläkerran varastoon.
Vaikka WANin / 4G modeemin olisi voinut kytkeä suoraan Pfsensen WAN portiin, niin päädyin kierrättämään liikenteen Zyxel XGS-1250 kytkimen kautta. Näin sain testattua olisiko Pfsensellä samanlaisia haasteita porttien pätkimisessä kuin aiemmin testatuilla Asuksen ET12-reitittimillä. Ei ollut.
Koska en vielä tässä vaiheessa halunnut yhdistää Pfsenseä talon muuhun verkkoon, vein alakerran toimiston seinätökkeliin nyt WAN-linkin sijaan uuden LAN-linkin ja käytin tähän uutta VLANia 101. Seinätökkelistä piuha alakerran toimistossa olevaan Asus AC5300 reitittimeen ja nyt tämä reititimen wifi ja lan-verkosta pääsi liikennöimään internettiin Pfsensen läpi.
Taas päivä taukoa konffaamisesssa ja internetin normaalia käyttöä iPhonella, Windows hupikoneella ja Windows duuniläppärillä. Ei ongelmia, aika siirtyä seuraavaan vaiheeseen.
Kuva: Pfsense yläkertaan

Dual WAN ominaisuuden testaamista
Yksi ”pihveistä” miksi hankin Pfsense palomuurin oli sen parempi kyvykkyys tukea setuppia, jossa on useampi yhteys internettiin, eli Dual WAN. Itsellä on käytössä kahden eri operaattorin, Elisa ja Telia, simmit ja molemmille on tolpan nokassa siltaavassa tilassa olevat 4G modeemit. Modeemit on kytketty reitittimeen ethernet-kaapelilla ja reititin saa ip-osoitteensa operaattorin DHCP palvelimelta.
Ainoa sopiva ajankohta testata tätä ominaisuutta oli viikonloppu, koska testeihin tarvittiin molemmat WAN-linkit ja testien aikana internet-yhteys ”vanhasta” verkosta olisi poikki.
Eli otetaan toinenkin WAN-linkki Pfsense käyttöön ja siirretään sen kaapeli Asus-reitittimestä Zyxel XGS-1250 kytkimen porttiin 6. Tämä portti on määritelty kuuluvaksi VLANiin numero 11. Kytketään Pfsensen Eth2 portti kytkimen porttiin 8, joka on samassa VLANissa numero 11. Taas kerran kytkin välissä on tavallaan turha, mutta halusin testata myös kytkimen toimintaa, eikä havaittavissa ollut samanlaisia ongelmia kuin Asuksen kanssa ja portit pysyivät kytkimen näkövinkkelistä ylhäällä.
Kun piuhat kiinni, oli aika laittaa Dual Wan konffit kuntoon. Hyvät ohjeet tähän löytyy: ”Multi-WAN with pfSense HTTPs Sites Issue. Näillä ohjeilla saa korjattua myös aiemmin Asusksen kanssa vaivaneen HTTPS -yhteyksien pätkimisen.
Osana Dual-Wan setuppia on yhteyden tarkkailu. Tähän Pfsense käytää dpinger nimistä ohjelmaa. Ohjelmalla ”pingataan” tiettyä ip-osoitetta ja tarkkaillaan muutamaa asiaa
- Onko käytössä oleva portti yleensä ylhäällä
- Mikä on yhteyden latenssi
- Paljonko paketteja häviää (packet loss)
Sen tarkemmin yksityiskohtiin menemättä, ylläolevista tarkkailun kohteista lasketaan ”tunnusluku”, jonka kasvaessa liian isoksi, kyseinen WAN-linkki tuomitaan rikkinäiseksi.
Itsellä homma ei aluksi mennyt ihan putkeen. Verkkokortin portti nousi ihan kiltisti ylös ja Pfsense sai haettua operaattorin DHCP-palvelimelta ip-osoitteen, mutta hyvin pian yhteys tulkittiin rikkinäiseksi. Syynä oli 100% packet loss, eli jostain syystä operaattorin pää ei vastannut ”pingeihin”. Ilmeisesti tämä johtuu siitä, että operaattori on rajoittanut kuinka usein se vastaa ”pingeihin” ja jos ”pingejä” tulee liikaa, niin lopetetaan vastaaminen kokonaaan, siis eräänlainen ”denial-of-service” suojaus.
Defaulttina dpinger käyttää testausosoitteena operaattorin antamaan gateway-osoitetta, mutta ”testiosoitteen” voi myös tarvittaessa vaihtaa käyttäjän määrittelemäksi ip-osoitteeksi tai hostnameksi. Vaihdoin ip-osoitteeksi ”8.8.8.8”, eli Googlen nimipalvelimen. Hetken päästä tarpeeksi ”pingejä” oli mennyt läpi ja WAN-linkki tulkittiin toimivaksi ja molemmat WAN-linkit olivat yhtä aikaa käytössä.
Ensimmäiseksi Speedtest käyttöön. Defaulttina Speedtest käyttää useampaa yhteyttä internetin nopeuden testaamiseksi. Testeissä sain download nopeudeksi noin 180 Mbit/s, paremman nopeuden kuin kumpikaan yksittäinen WAN-linkki on koskaan tuottanut. Pfsensen käyttöliittymästä näki, että Elisan WAN-linkistä tuli noin 110 MBit/s ja loput Telian kautta.
Jihuu, nyt kuorma aidosti jakautui useammalle linkille, myös yhdeltä koneelta liikennöidessä. Asuksen tapauksessa tämä ei onnistunut ja olin päätynyt hieman erilaiseen setuppiin, jossa puolet verkon koneista käyttää Elisan WAN-linkkiä ja puolet Telian WAN-linkkiä.
Entäpä aiemmin ongelmallinen yhteys esim verkkopankkiin HTPPS protokollan yli? Aiempien ohjeiden mukaisesti tehdyt konffit ohjasivat kaiken HTTPS liikenteen Elisan WAN-linkin kautta, eikä tullut tilannetta, jossa osa liikenteestä kohti verkkopankkia olisi mennyt Elisan linkin yli ja osa Telian linkin yli. Pankkipalvelut yleensä lyövät tässä tilanteessa yhteyden poikki, kun näyttää että liikenne tulee kahdesta eri ip-osoitteesta. Ei ongelmia
Seuraavaksi testasin toimintaa vikatilanteessa. Speedtest käyntiin kahdelta windows-koneelta ja puhelimesta. Kun testi oli käynnissä, laitoin kytkimestä toisen WAN-portin alas kytkin-4G modeemi väliltä. Kesti useampi minuutti, että Pfsense havaitsi ongelman, mutta lopulta kyseinen WAN-linkki tuomittiin rikkinäiseksi ja liikenne siirtyi käyttämään pelkästään elossa olevaa WAN-linkkiä.
Vian havaitsemiseen meni ehkä vähän kauemmin kuin olisin toivonut. Default asetukset ovat tasapaino tarkkailuun käytettävän ylimääräisen ”pingaamisen” ja vian havaitsemisnopeuden välillä. Jos haluaa havaita viat nopeammin, tulee verkkoon enemmän ”turhaa” ping-liikennettä ja toisaalta pingaamalla harvemmin viat havaitaan hitaammin, mutta ”turhan” liikenteen määrä pienenee.
Tätä voi tuunata paremmaksi omien mieltymystensä mukaan, ehkä jätän alkuun kuitenkin default asentoon.
Kun laitoin WAN-kaapelin kiinni takaisin kytkimeen, havaitsi Pfsense tämän aika nopeasti ja sai haettua uuden ip-osoitteen operaattorilta. Mutta dpingerin luonteesta johtuen meni muutama minuutti, että ”tunnusluku” oli tarpeeksi hyvä ja tällä aikaa liikennettä ei lähetetty linkin ylitse.
Hyvältä näyttää, mutta edetään rauhassa ja ei vielä siirretä koko verkkoa Pfsensen taakse. Testataan rauhassa käytöstä erillisessä verkossa ja tehdään yliheitto ensi viikonloppuna, jos ongelmia ei ilmene.
Kuva: Pfsense Dual WAN setup

Paluu arkeen
Palautetaan Elisa WAN-linkin piuha vanhaan ”Asus”-verkkoon. Homma lähtee toimimaan heittämällä. Molemmat verkot pystyvät liikennöimään internettiin normaalisti.
Tehdään muutama valmisteleva muutos konffeihin.
- Varataan Pfsensestä ip-osoitteet Asus-reitittimille
- jotka jatkossa tulevat toimimaan ”access point” moodissa ja eivät näin ollen enää toimi palomuurina tai reitittimentä
- Reitittimenä / palomuurina tulee toimimaan Pfsense, joka toimii myös DHCP palvelimena
- Pudotetaan kerroksien/Zyxel XGS-kytkimien välissä kulkevan piuhan nopeus 10GbE->5GbE
- Ei ole tarvetta 10GbE nopeudelle, kun verkossa olevan nopeimmankin laitteen verkkokortti toimii 2.5GbE nopeudella
- Vältetään näin korkeamman nopeuden aiheuttama korkeampi sähkönkulutus ja siitä seuraava laitteen ylimääräinen lämpiäminen
Kun tein vaihdoksen kesti hetken, että kerroksien välinen linkki nousi ylös. Zyxelin käyttöliittymässä vilahti ilmoitus ”looppi” havaittu. Ehkä kun portti ”boottaa”, niin VLANit eivät ole päällä ja verkkoon pääsee hetkellisesti syntymään looppi? Normitilanteessa ”looppi” on paha asia, joka voi tukkia koko verkon ”broadcast” myrskyllä. No verkko tokeni tästä nopeasti ja liikenne alkoi kulkemaan.
Mutta, mutta, voisko Asuksien ongelma johtua samantyyppisestä ongelmasta? Kun Asus toimii reitittimenä on siinä usempi piuha kiinni, 1-2 kpl WAN-linkkejä ja1 kpl LAN-linkkejä. Omissa testeissä nämä piuhat on ollut kytkettynä samaan XGS-1250 kytkimeen ja voisiko olla niin, että kytkin hetkellisesti löytää Asuksen osalta ”loopin” ja blokkaa liikenteen? Asus tai kytkin heittää hanskat tiskiin, eikä yritä uudestaan ja portti jää ”blokattuun” tilaan. Jos piuhan hetken päästä ottaa irti, niin muut portit on jo kiltisti VLANien takana, eikä piuhan uudelleen kytkentä aiheuta enää loopppia ja portin ”blokkaus” poistuu.
Pitänee testata jossain vaiheessa, kun saa toisen ET-12 Asuksen vapaaksi muusta käytöstä. Käyttöön kolme eri VLANia, kolme piuhaa kiinni Asuksesta kytkimene, Asuksen boottaamista ja ”loop prevention” asetus päällä. Jos vielä tulee ongelmia, niin ”loop detection” moodi kytkimeen päälle, jolloin vain ilmoittaa ”loopista”, mutta ei blokkaa liikennettä?
Hmm, jos ensi viikolla ottaisi Pfsensen ”tuotantokäyttöön” ja antaisi sen höristä jonkun aikaa? Jos homma käy ja kukkuu, niin toinen ongelmallisista Asus ET12-laitteista olisi vapaana ”loop” testejä varten?
Jotain hämärää Asus ET12 ja Zyxel XGS-1250-12 yhdistelmässä on…
Kuva: Pfsense Dual WAN ominaisuuden purkaminen

Yhteenveto
Pieniä haasteita käyttöönotossa oli, mutta se oli odotettavissa. Paljon säädettäviä vipuja = paljon mahdollisuuksia hölmöillä. Osa meni ihan omaan piikkiin ja osassa tuli kuvioon odottamattomia ”muuttujia”, kuten se että operaattori rajoittaa kuinka moneen ”pingiin” se vastaa sekunnissa.
”Perttiperuskäyttäjälle” voi olla ehkä vähän ”liikaa” ja operaattorin toimittama ”marketti-reititin” ajaa asiansa. Pfsense on ehkä enemmän ”harrastajan” peli. Lyhyen tutustumisen jälkeen itsellä paluuta vanhaan ei ole, lisäominaisuudet ovat pienen monimutkaisuuden arvoisia, varsinkin toimiva Dual WAN.
Otetaan vehje ensi viikonloppuna ”tuotantokäyttöön” ja katsotaan kuinka käy. Tästä lisää myöhemmin.
One thought on “Kotiverkko kuntoon – Pfsense palomuuri – testailua”