Router gigabit cu OPNsense, virtualizat cu Proxmox într-un mini PC

Deși cei de la O2 îmi instalaseră un router Mitrastar cu mult peste media celor oferite de către alți operatori, mai bun chiar și decât AC2350-ul de la Xiaomi, aveam zone în casă unde semnalul Wi-Fi era slab. Uneori, în special în weekend, când numărul dispozitivelor conectate simultan la rețea se dubla, erau probleme inclusiv cu apelurile VoIP prin WhatsApp sau Messenger, și doar adăugând un AP UAP AC Pro n-am rezolvat problema.

Dispozitive conectate la Wi-Fi

Dispunând deja de un home server în care nu mai rămăsese mare lucru, conectat la un UPS ce-i asigura funcționarea chiar și în cazul unei pene de curent, mișcarea logică era convertirea acestuia într-un router cu OPNsense, pfSense sau OpenWrt, iar pentru asta îmi mai trebuiau un riser și alte două dispozitive noi: o placă de rețea care să încapă în ThinkCentre-ul M720q și un ONT (routerul de la O2 îl avea integrat).

Riser-ul PCIE16 (PN 01AJ940) l-am cumpărat de pe AliExpress și m-a costat vreo 15€. Conform vânzătorului provenea din dezmembrări, însă văzându-l pare mai fals decât o bancnotă de 7 lei, dar își face treaba excelent și o spun după luni bune de utilizare neîntreruptă. Era necesar deoarece slotul M720q-ului e unul proprietar, iar montarea unei plăci de rețea n-ar fi fost posibilă fără acesta.

Rise PCI în Lenovo M720q

Deoarece n-am găsit nicio altă placă de rețea mai ieftină de atât cu controller Intel, am cumparat de pe eBay una de la HP, mai precis modelul NC365T cu 4 porturi Gigabit și răcire pasivă, care m-a costat 32€ cu tot cu transport și bracket (luat în ideea că la un moment dat schimb ThinkCentre-ul cu ceva mai încăpător.

NC365T în Lenovo ThinkCentre M720q

Chiar dacă partea estetică nu mă preocupa foarte tare, bracket-ul original acoperea orificiile de ventilație și împiedica închiderea capacului mini PC-ului, așa că am pus mâna pe Dremel și l-am măcelărit pe cel cu care venea ThinkCentre-ul, prevăzut cu orificii pentru porturi serial (RS-232).

bracket Lenovo M720q

Nu e cea mai elegantă modificare făcută de mine. După cum spuneam și mai devreme, chiar l-am măcelărit, dar cu ajutorul lui și a câtorva șoricei (benzi zimțate) placa de rețea stă la locul ei și prin conectarea ori deconectarea cablurilor nu risc să o scot din slot.

NC365T în bracket Lenovo

Pe lângă NVMe-ul de 2TB în care am VM-urile si LXC-urile, mai montasem un SSD SATA de 500GB pe care-l foloseam pentru a găzdui ISO-uri și alte fișiere la care n-am nevoie ca accesul să fie instant, iar montarea plăcii de rețea NC365T nu-i mai lăsa acestuia loc în interiorul carcasei.

Aș fi renunțat la el dacă n-aș fi avut încotro, însă n-a fost cazul. După demontarea carcasei acestuia, cu puțină bandă textilă pentru a-l proteja și niște dublu adezivă pentru a-l fixa în conectorul SATA, am evitat asta.

SATA SSD deasupra NC365T NIC

Totuși, iar asta aveam să o aflu mult mai târziu, o carcasă atât de compactă și cu atât de multe chestii generatoare de căldură îngrămădite în ea, nu făceau altceva decât să transforme micul M720q într-un cuptor. Nu am ajuns să am probleme cu el din cauza temperaturilor, dar nu dormeam liniștit știindu-l suficient de fierbinte încât să țină caldă cafeaua în cazul în care aș fi pus cana pe el. Aveam Dremel, aveam și ventilator…

ventilator Lenovo M720q

Dintre opțiunile avute la dispoziție am ales până la urmă OPNsense, pe care l-am instalat într-o mașină virtuală (VM) creată în Proxmox. Am ales VM în detrimentul unui container nu doar din comoditate, ci și din considerente de securitate care nu fac obiectul acestui articol.

OPNsense

Proxmox n-are nicio problemă în a detecta și identifica fiecare dintre porturile RJ45 ale NC365T, ba chiar o face implicit, fără necesitatea instalării unor drivere specifice, cum se întâmplă în cazul adaptorului RTL8111.

cls@pmx:~# lspci
01:00.0 Ethernet controller: Intel Corporation 82580 Gigabit Network Connection (rev 01)
01:00.1 Ethernet controller: Intel Corporation 82580 Gigabit Network Connection (rev 01)
01:00.2 Ethernet controller: Intel Corporation 82580 Gigabit Network Connection (rev 01)
01:00.3 Ethernet controller: Intel Corporation 82580 Gigabit Network Connection (rev 01)

Dar eu aveam nevoie doar de două: unul care venea de la ONT, altul care pleca spre switch (JH329A), așadar le-am făcut passthrough doar primelor două:

passthrough NC365t pentru OPNsense

Pentru crearea mașinii virtuale n-am făcut nimic special, dar dacă sunteți curioși, aveți aici un screenshot al setărilor acesteia, iar la instalarea OPNsense am urmat instrucțiunile oficiale. Dintre toate, cel mai complicat a fost să înregistrez IdONT-ul în ONT-ul Nokia G-010G-P achiziționat SH de pe Wallapop cu 20€.

ONT NOKIA G-010G-P - OPNsense

OPNsense-ul l-am configurat urmând documentația oficială și sfaturile din acest ghid. Pentru Wi-Fi, unde am creat două rețele, una dintre ele pentru IoT și invitați (xps) și, respectiv, alta pentru dispozitivele noastre (oOo), am folosit același UAP AC PRO de la Unifi pe care l-am menționat mai devreme.

Așadar, dacă sunteți curioși de costuri:

      1. NIC NC365T – 32€
      2. Riser – 15€
      3. ONT NOKIA G-010G-P – 20€
      4. Switch HP OfficeConnect 1420 – 50€
      5. AP UAC PRO – 180€

Adică în jur de 280€, în schimbul cărora obții un router extrem de bun, cu firewall și VPN și blocant de reclame printre multe altele, care se actualizează aproape săptămânal și-ți oferă control absolut asupra rețelei.

Interfață web OPNsense

Nu, n-am uitat de mini PC, dar eu dispuneam deja de unul. În schimb, dacă ar fi fost să-l cumpăr special pentru asta, mai mult ca sigur aș fi ales o versiune mai modestă, unul cu maximum 8GB de memorie RAM și un dual core G4900T ar fi fost suficient, versiune văzută la 50-60€ pe eBay.

OPNsense virtualizat în Proxmox

Având anumite temeri, înlocuirea routerului de la operator am făcut-o într-un weekend prelungit, dar o dată convins că mă pot baza pe configurația actuală cu OPNsense, mai ales după ce problemele de conectivitate au dispărut complet, am prins atât de mult curaj încât ulterior am renunțat la fibra de un gigabit în favoarea uneia de 500 Mbps. Au trecut mai bine de patru luni de atunci, deocamdată n-am simțit nevoia să revenim.

Speedtest OPNsense cu fibră de 500 Mbps

Nici din punct de vedere al consumului de energie electrică nu mă pot plânge. Între UPS, ONT, AP UAC PRO, switch HP și M720Q, consumul de energie electrică nu trece de 40-42W. Consum de energie electrică al routerului OPNSense virtualizat în Proxmox

În schimbul acestora primesc un blocant de reclame la nivel de rețea, un VPN activ în permanență, semnal Wi-Fi foarte bun în toată casa și alte câteva functionalități implementate cu același mini PC prin intermediul unor mașini virtuale create în Proxmox, printre care:

Deloc rău, nu-i așa?

Vă vine în minte un router de 300€ care să facă toate astea? Unul care oferă posibilitatea de a-l dota cu funcționalități noi prin intermediul plugin-urilor? Cu OPNsense ai asta, îți permite să instalezi de la aplicații de analiză la blocanți de reclame. Eu, spre exemplu, am instalat cu ajutorul acestuia serverul VPN și AdGuard.

AdGuard addon/plugin pentru OPNsense

Înainte să folosesc OPNsense le rulam în containere Docker care trebuiau verificate, actualizate și reconstruite în cazul în care, la actualizare, apăreau probleme. Acum totul e mult mai simplu: fac snapshot mașinii virtuale în care rulează OPNsense și actualizez. Dacă sunt probleme, restaurez snapshot-ul și e totul funcțional în doar câteva minute, continuând astfel până la următoarea actualizare.

În plus, ca în cazul oricărui alt router, setările OPNsense pot fi exportate și importate în oricare altul, virtualizat sau nu, evitând astfel necesitatea de a reconfigura totul de la zero, așadar oferă toate motivele de care ați putea avea nevoie pentru a-l încerca dacă nu ați făcut-o deja.

Lasă un răspuns

Adresa ta de email nu va fi publicată. Câmpurile obligatorii sunt marcate cu *

Acest site folosește Akismet pentru a reduce spamul. Află cum sunt procesate datele comentariilor tale.