Wskazowki przy skladaniu wysokoniezawodnego firewalla/bandwidth managera/routera na Linuxie. Jestem otwarty na wszelkie sugestie odnosnie tego dokumentu. ChangeLog: 0.0.2: pare poprawek kosmetycznych CPU: ---- Praktycznie dowolny ( oczywiscie rozwazam tylko x86, niedlugo podam jakies wstepne rozwazania o PowerPC G4 ). Liczy sie generalnie przeplywowosc CPU<->mem oraz wielkosc pamieci cache ( im wiecej tym lepiej ). Warto inwestowac w CPU, gdyz cala architektura networkingu jest oparta process-switchingu ( w skrocie CPU zajmuje sie wszystkim; caly ruch przechodzi przez procesor ) Moj preferowany wybor to PentiumII/III/IV/M, wszelkie Xeony, Opterony. Celeronow generalnie nie polecam, gdyz zazwyczaj starsze modele pracowaly z FSB 66mhz. Inaczej ma sie oczywiscie sprawa z Tualatinami. Jednakze jesli masz wybor megaherzowo szybszy Celeron versus wolniejszy Pentium, wybierz Pentiuma. Do Duronow,Sempronow,Athlonow mam uraz "termiczny" ;) SMP nie polecam, gdyz rozwiazania ktore zaprezentuje w dalszej czesci nie zostaly w pelni sprawdzone na platformach wieloprocesorowych. HT staram sie wylaczac. To samo tyczy sie 64-bitow, lepiej sie trzymac 32-bitowych CPU na razie. I wbrew powszechnemu mniemaniu ( bazuje na postach na grupe netfilter-devel ), 32-bitowe procesory sa niejednokrotnie szybsze od 64-bitowych jesli chodzi o firewalling. RAM: ---- Jako rozsadne minium 128MB. Inne: + conntrack ( statefull firewalling; jest taki dokument o tunningu conntracka wzgledem pamieci i wydajnosci- dam tu kiedys linka ) + BGP? ( na samo BGP pojdzie ~190MB ) + ile zamierzamy sledzic polaczen w conntracku? + inne procesy? ( np. sonda NetFlowa, snmpd ). Karty sieciowe: --------------- Wylacznie na PCI lub PCI-X, zadnych odstepstw. Preferuje: 3com 59x lub Intelowskie, Broadcomy 1Gbitowe tez sa bardzo dobre. Wszelkie VIA i Realteki to zwykly shit ( wydajnosciowy ). Przy wiekszych przepustowosciach ( > 10Mbps ) offloading ( np hw checksumming ) sie przydaje. Warto tez wybrac karte ktorej sterowniki wspieraja NAPI ( karta nie generuje przerwania przy kazdym pakiecie, lecz to CPU odpytuje karte czy "ma" pakiety ) ==> znacznie zwieksza wydajnosc. Plyta glowna/chipset: --------------------- Ja moge polecic plyty na tych chipsetach, rzadko kiedy mnie zawiodly + 440BX/ZX + 845,865,875 + wszelkie plyty Tyan'a + wszelkie inne plyty Intela Wskazane byloby zeby plyta miala "PC Health" w BIOSie. Pozwoli nam to potem w systemie zainstalowac usluge, ktora uruchomi alarmy w przypadku przegrzewania sie ktoregos z elementow ( glownie CPU, chipset ). Niektore plyty maja tez watchdogi ( element samoczynnie resetujacy maszyne w przypadku twardego zwisu ), tez sie nam to przyda. Im wiecej plyta ma slotow PCI-owych tym lepiej. Obecnie produkowane plyty maja 24 przerwania ( te starsze tylko 16 ). Bardzo czesto zdarza sie, ze mozesz wykorzystac maxymalnie tylko 4 ( ustawienia IRQ wzgledem PCI da sie czasami modyfikowac w BIOSach ), co wiaze sie niekiedy ( przy wiekszej ilosci wykorzystanych slotow ) z duza utrata wydajnosci przez dzielenie przerwan ( ang. sharing interrupts ). Jesli potrzebujesz duzej ilosci interfejsow (fast)ethernetowych to lepiej pokus sie o jakis dobry switch z trunkingiem VLANow i wsadz jedna porzadna sieciowke ( 1Gbit badz 100Mbit ). O VLANach jeszcze napisze. Gorzej ma sie sprawa sie sparwa z innymi interfejsami... Dysk: ----- zamiast dysku lepiej kupic CompactFlasha, np o wielkosci 256mb jesli nie mamy zamiaru rekompilowac kernela ( uzywac dystrybucyjnego jadra np z PLD ) lub 1Gb jesli bedziemy go rekompilowac. 2.11.05: nie ma sensu juz oszczedzac, 512mb juz jest tak tanie... Do tego przejsciowka CF<->IDE. Nalezy wziasc pod uwage co chcemy zainstalowac. Takie rozwiazanie jest znacznie stabilniejsze i pewniejsze od dysku twardego, bo nie posiada czesci mechanicznych. Przejsciowka nie jest droga, w porywach do 40zl. Jesli juz ma byc dysk to najlepiej zaopatrzyc sie w SATA badz SCSI. Jesli masz dyski IDE, postaraj sie o RAID-1 ( mozna softwarowo ). CD-ROM & floppy: ---------------- Po instalacji wyrzucic z obudowy. Karty v35 ( frame-relay ): -------------------------- TAHOE ( model 1 i 2 portowy ) GORAMO ( model 1 i 2 portowy ) SANGOMA ( model 1,2,4(?) portowy ) Karty ATM: ---------- Moze ktos cos polecic? ;) Slyszalem ze ForeRunner 200 na PCI ladnie chodza. Modemy/Karty ISDN: ------------------ Nie probowalem, ale praktycznie kazdy modem w pelni sprzetowy da rade. Mozesz tez kupic karte serialowa, np. 8 portowa i do niej wpiac 8 modemow :) Wszelkie inne karty PCI: ------------------------ Najlepiej "wyrzucic" jesli nie sa potrzebne. Karta graficzna: ---------------- Najlepiej z chlodzeniem pasywnym, nie potrzebujemy zadnych akcelatorow klasy Geforce, firewall bedzie dzialal jedynie trybie tekstowym. Moze to byc rowniez stary S3 Virge na PCI. Zallmann sprzedaje zestawy zastepujace coolery na kartach graficznych chlodzeniem pasywnym. Zasilacz: --------- Idealnie byloby gdyby byl chlodzony pasywnie, i nie byl to chinski shit. Moze byc slaby. Chlodzenie CPU: --------------- Idealnie byloby gdyby nie bylo coolera, lecz sam radiator ( najlepiej znacznie za duzo jak na ten typ procesora ;) ). Czasami da sie to osiagnac dzieki zmniejszeniu czestotliwosci o paredziesiat procent. Stracimy troche mocy, ale wyelimnujemy kolejny wiatraczek :] Wiatraczki: ----------- Jak juz zauwazyliscie, jestem fanatycznym przeciwnikiem wszystkiego co sie rusza mechanicznie wewnatrz obudowy ... Mialem juz wiele przypadkow, gdy zachwalany markowy cooler okazywal sie kolejna lipa. Jesli juz to 80mm. Dodatkowa niezawodnosc: ----------------------- TODO: drugi firewall, VRRP, Keepalived, UCARP, backupy TODO#2: jesli bandwidth manager to bridge, karty z hardware bypassem? Jakub Wartak -vnull