PfSense @APU2e4

Hardver választás

Az APU lapok esetében az APU utáni szám mondja meg a generációt, utána egy betű áll, ami az adott generáción belüli típust azonosítja, majd újból egy szám, ami pedig a memória méretére utal.
Jelenleg így néz ki a kínálat:

  • apu2d0 (2 GB DRAM, 2 i211AT NICs)
  • apu2e2 (2 GB DRAM, 3 i211AT NICs)
  • apu2e4 (4 GB DRAM, 3 i210AT NICs)
  • apu3c2 (2 GB DRAM, 3 i211AT NICs, optimized for 3G/LTE modems)
  • apu3c4 (4 GB DRAM, 3 i211AT NICs, optimized for 3G/LTE modems)
  • apu4d2 (2 GB DRAM, 4 i211AT NICs)
  • apu4d4 (4 GB DRAM, 4 i211AT NICs)

Gondolhatnánk, hogy minél nagyobb a generáció szám, annál jobb a lapka, de azért ez nem teljesen így van. A 3. generáció például a 3G/LTE modemekhez van optimalizálva.
A 4. generációs eszközökön már 4 ethernet port van, aminek elsőre megörülhetünk, azonban ha jobban megnézzük, láthatjuk, hogy az apu2e4 a hálózati chip kapcsán kilóg a sorból.

apu2 mainboard
apu2e4

Pont ez volt az, ami miatt elsőre a választásom erre esett. Az oka, hogy az i210AT portonként 4 TX és 4 RX queue -t tartalmaz, míg az i211AT esetében ez portonként csak 2-2. Ez egy pfSense router felhasználás esetében úgy gondolom számít. (Ezt majd a gyakorlatban szeretném méréssel is igazolni, ha eljutottam idáig, megírom.)

Összeszerelés

apu2 case
case1d2blku


Én egy case1d2blku -t házat választottam hozzá
Illetve rendeltem még egy gyári ac12veu32 AC adaptert,

valamint egy apufix1a0 -et, ami egy egyszerű keret, hogy az összeszereléskor a hűtőbordát könnyen, pontosan a helyére lehessen tenni.

háttértárnak pedig egy SSD Kingston mSata 240GB UV500 -t.

builded
Összeszerelve

Telepítés:

A pfsense honlapján nagyon jó a leírás, mindenképpen érdemes elolvasni!
Nem csak a telepítésről, mindenről…
Én macOs alatt az alábbi paranccsal kiírtam egy pendrive -ra:
sudo dd if=pfSense-CE-memstick-serial-2.4.5-RELEASE-p1-amd64.img of=/dev/disk3
Aki nem ismerné a dd -t, az if= paraméterrel adjuk meg az inputot, of= -el az outputot, (hogy melyik a pendrive -unk macOs alatt a diskutil list paranccsal kérdezhetjük le.)

Mivel az apu2 lapoknak nincs video kimenetük, így soros porotn keresztül tudjuk elkezdeni a telepítést. Fontos, hogy NullModem kábellel kössük össze a soros portunkkal, a port beállításai 115200 8N1. Én erre a screen parancsot szoktam használni, nálam ez így néz ki:
screen /dev/cu.usbserial-A506ATOI 115200,cs8,-parenb,-cstopb,-hupcl

Miután elindítottuk (bedugtuk) az eszközünket, a soros porton már látjuk a boot üzeneteket, ítt amikor írja is, F10 -et nyomva elérjük a boot menüt, ahol ki kell választanunk a pendrive -ot, amire kiírtuk a telepítőt.
Miután elindult, megkéri, hogy válaszzuk ki a terminált:

A vt100 jó lesz.

Fogadjuk el a feltételeket

Válaszzuk az Install menüpontot a telepítéshez

Particionálásnál én az alapértelmezett UFS helyett az Auto (ZFS) -t választottam, ugyan egy lemezes konfig, de úgy gondolom akkor is megéri, esetünkben tól sok RAM -ot nem fog enni, ellenben jobban tűri a “váratlan” áramtalanítást, stb.

Ha kész, kiírja a változásokat, majd kicsomagolja és bemásolja a szükséges fájlokat… Megkérdezi akarunk e itt még kézzel valamit beállítani, de nekünk ennyi elég elsőre, újraindíthatunk.

Újraindításkor pendrive -ot vegyük ki, majd indul is:

Ha elindult a rendszer, egy kis zenével jelzi is, illetve soros porton látjuk, hogy betölti a menüt:

Én itt még rögtön engedélyezni szoktam az ssh -elérést is a 14 -es menüponttal. (Persze később is megtehetjük, akár a webes felületről is.)

Alapból 2 intterface -t használ, az első a WAN, a második a LAN, amin alap esetben dhcp szolgáltatás is fut, így erre dugva a számítógépünket kapni is fogunk egy IP címet a 192.168.1.0/24 tartományból.
Mivel 3 port van az eszközünkön, így jó eséllyel tippelhetünk arra, hogy a középső port lesz a LAN. 🙂 (Egyébként a soros port melletti lesz a WAN, az utolsó (USB) melletti pedig az AUX, illetve pfSense nevezéktanban az Opt1, amit alapértelmezetten nem használ.)

A telepítéssel gyakorlatilag végeztünk, jöhet a konfiguráció.
A LAN poroton kereszül a https://192.168.1.1 címen elérhető a webes felületet. (Az alapértelmezett bejelentkezés: admin / pfsense)

Webes bejelentkezés után egy varázslóval fogad, itt az alap beállításokat meg tudjuk tenni, többek között az admin fiók jelszavának cseréjét.

A varázsló után én még az alábbi beállításokat szoktam elvégezni:

  • Csomagok telepítése:
    • iperf (sebességtesztekhez)
  • Konzol elérése csak jelszóval:
    • System > Advanced > Admin Access : Console menuPassword protect the console menu
  • Dashboard beállítás
  • NTP Status
  • Firewall Logs
  • Traffic Graphs
  • Interface Statistics
  • Thermal Sensors (APU esetében itt kell még egy beállítás, lsd. lentebb)
  • S.M.A.R.T. Status
  • Services Status
  • OpenVPN

További Apu2 specifikus javasolt beállítások:

  • Thermal Sensors beállítása:
    • System > Advanced > Miscellaneous : Thermal Sensors section -> AMD K8,K10 and K11
  • Hálózati sebesség növelése
    • A BSD alapértelmezetten 1 CPU magot használ a hálózati forgalomra, ami miatt alap beállíással kb. 4-500Mbps sebességet lehetett mérni, amit több szálon fel lehett tornázni 8-900Mbps -re (iperf3 -c SERVER_IP -P 4)
    • Web panel -> System -> Advanced -> Networking alatt legyenek kikapcsolva:
      • Hardware Checksum Offloading
      • Hardware TCP Segmentation Offloading
      • Hardware Large Receive Offloading
    • /boot/loader.conf.local fájlba:
# agree with Intel license terms
legal.intel_ipw.license_ack=1
legal.intel_iwi.license_ack=1

# this is the magic. If you don't set this, queues won't be utilized properly
# allow multiple processes for receive/transmit processing
hw.igb.rx_process_limit="-1"
hw.igb.tx_process_limit="-1"

# more settings to play with below. Not strictly necessary.

# force NIC to use 1 queue (don't do it on APU)
# hw.igb.num_queues=1

# give enough RAM to network buffers (default is usually OK)
# kern.ipc.nmbclusters="1000000"

#net.pf.states_hashsize=2097152
#hw.igb.rxd=4096
#hw.igb.txd=4096

#net.inet.tcp.syncache.hashsize="1024"
#net.inet.tcp.syncache.bucketlimit="100"

Vélemény, hozzászólás?