Bygga din egen gateway brandvägg (6 / 7 steg)

Steg 6: Packet prioritering

Packet prioritering med ALTQ
Om din WAN-anslutning förblir ganska mättade (med saker som bittorrent), då är jag säker på att har du haft din beskärda del av tidsgränser, fördröjning, eller långsam sida laster. Packet prioritzation erbjuder en lösning på detta problem. Istället för att spendera $100 + på en router som har denna funktion, kan du i stället använda ALTQ med PF för att utföra samma sak.

ALTQ är mycket enkel att installera. Det mest komplicerade som du behöver göra är kompilera om din kärna. Oroa dig inte, det är mycket lättare än du tror. Att följa bara mina instruktioner, och du ska vara bra. En ny kärna är nödvändigt, eftersom ALTQ stöd är inaktiverat som standard i FreeBSD.

Att lägga till ALTQ stöd till din kärna
Till att börja läser byggnad och installera en Custom Kernel thorougly. Efter att du läste det läsa Aktivera ALTQ.

Jag kommer att använda den "nya" metoden. Efter duplicera den generiska kernel konfigurationsfilen, redigera den med din favorit editor (pico är bra för nybörjare). Nu, Lägg till följande rader till slutet av filen:

#ALTQ OPTIONSoptions ALTQoptions ALTQ_CBQ # klass baser QUEINGoptions ALTQ_RED # RANDOM tidig DETECTIONoptions ALTQ_RIO # rött i / OUToptions ALTQ_HFSC # HIERARCHIAL PACKET SCHEDULERoptions ALTQ_PRIQ # prioriterade QUEUINGoptions ALTQ_NOPCC # krävs för SMP bygga

Nu spara filen (jag kallade mig FIREWALLKERNEL) och följ sedan stegen (från handboken) för att sammanställa det:

1. Byt till katalogen/usr/src.

# cd/usr/src

2. sammanställa kärnan.

# gör buildkernel KERNCONF = FIREWALLKERNEL

3. installera den nya kärnan.

# gör installkernel KERNCONF = FIREWALLKERNEL

Om allting fungerar, är din nya kärnan klar att användas. FreeBSD är även snäll nog att placera den nya kärnan i din boot väg. Allt du behöver göra är att starta om datorn ("shutdown - r nu"). Nu bör du har ALTQ stöd sammanställs i din kärna. Vårt nästa steg är faktiskt konfigurera ALTQ

Konfigurera ALTQ
ALTQ stöder två typer av packet prioritering: klass-baserade (CBQ) och prioritetsbaserade (PRIQ).

Klass-baserade queueing delar trafic i "klasser". En del av din totala bandbredd fördelas sedan till var och en av dessa klasser.

Prioritetsbaserad kö, som det har namnet antyder, tilldelar paket prioriteringar. Paketen med högst prioritet bearbetas först.

Det finns också några ytterligare funktioner som du har till ditt förfogande: random tidig upptäckt och uttrycklig överbelastning anmälan (ECN).

Random tidig upptäckt eller röd, beräknar den genomsnittliga köstorlek, sedan sjunker eller vidarebefordrar paket beroende på överbelastning. Om den genomsnittliga köstorlek är över en högsta nivå, kommer att alla paket släppas. Om köns storlek understiger en lägsta tröskel, kommer att ingen paket släppas. Någonstans mellan dessa trösklar, och paket som kommer att släppas beroende på hur nära köstorlek är att de övre och nedre tröskelvärdena.

Uttrycklig överbelastning anmälan eller ECN, sätter en flagga i paket till anmälas värdar för nätverken kongestion. När en värd som stöder ECN tar emot paket märkt med denna flagga, svarar den genom att minska sin verksamhet.

Jag valde prioriterade-kö, eftersom mitt nätverk ser ett stort utbud av olika typer av trafik. Priority-köer använder siffrorna 1 till 15 att prioritera trafik, nummer 1 är högsta prioritet. I min PF konfigurationsfil (pf.conf), jag har tilldelat en standardprioritet till nummer 10. Detta innebär att all trafik som matchar min brandväggsregler och ges inte en prioritet används som standard för prioritetsnivå 10. Sedan gav jag bittorrent en prioritetsnivå 15. Genom att göra detta, jag kan ha bittorrent kör non-stop i mitt nätverk, utan någon märkbar ökning av latens eller genomströmning. Jag gav också SSH hög prioritet 1, sin tidskritiska natur. Här är vad min PRIQ konfigurationer se ut ($int_if är min interna gränssnitt, enhet rl0; och $ext_if är min externa gränssnitt, enhet dc0):

altq $int_if priq bandbredd 100% kön {std, ssh, bt, http, p2p} altq $ext_if priq bandbredd 5Mb kön {std, ssh, bt, http, p2p} kö ssh prioritet 1 priqqueue http prioritet 2 priqqueue std prioritet 10 priq (standard) kö p2p prioriterade 13 priq (röd, ecn) kö bt prioritet 15 priq (röd, ecn)

Lägg märke till mina "bandbredd" alternativ på de första och andra linjerna. Jag ställa in storleken ALTQ kö på min externa gränssnitt till 5Mb. Även om min externa gränssnitt kan anslutas på 10Mbps, är jag bara tilldelning 5Mbps av min ISP. Detta är viktigt, eftersom packet prioritering förlitar sig på nivån på mättnad på ett gränssnitt att bestämma när börja queuing paket. Du ska märker jag också tilldelats 100% av bandbredden på min interna gränssnitt ALTQ. Detta innebär att all trafik som passerar genom min interna gränssnitt kommer att ha 100% av bandbredden 100Mbps.

Nu när jag har bestäms min prioritetsnivåer, är det dags att faktiskt tilldela dem till min brandväggsregler. Detta är mycket enkelt. "Kö < könamn >" Lägg till i slutet av alla regler som du vill tilldela prioriteringsnivå identifieras av < könamn >.

Och det är det. Så enkelt är det Packet prioritering. Lämna mig en kommentar för att låta mig veta om detta hjälper någon. Det har definitivt hjälpt mig.

Jag har bifogat en reviderad version av min pf.conf som innehåller ALTQ konfigurationer.

Se Steg
Relaterade Ämnen

Bygga din egen dator

varför skulle någon gå ut och köpa en dator från en manufaturer som Dell eller Gateway, när de kunde bygga en mer kraftfull dator för mindre pengar? Svaret, de vet inte hur man bygger den.Detta kanske låter som en komplicerad process, men i alla verk...

Bygga din egen laptop

varför skulle någon gå ut och köpa en dator från en tillverkare som Dell eller Gateway, när de kunde bygga en mer kraftfull dator för mindre pengar? Svaret, de vet inte hur man bygger den.Detta kanske låter som en komplicerad process, men i alla verk...

DIY, BYGGA DIN EGEN DIGITALA BINARY CLOCK!

Detta Instructable visar hur man bygger en digital klocka på enklaste sätt. Du behöver bara några verktyg och lite tid...Steg 1: Introduktion Det finns två sätt att bygga din egen binär klocka.1.-en är till göra din egen PCB. Att lära sig lite av mik...

Bygga din egen elektrisk motorcykel

ÖversiktDet färdiga projektet är en 1981 Kawasaki KZ440, omvandlas till elektriska. Den drivs av fyra Optima gul topp förseglade (AGM) bly-syra batterier, som driver en Briggs & Stratton Etek elmotor. Hastigheten på motorn styrs av en Alltrax varumär...

Bygg din egen elbil: Billiga

Hej alla,Detta är en presentation jag gjorde på moder jord mässan september 25th 2010.I den täcka jag de steg som det tog för mig att bygga en elbil på en budget.Det var bara en 45 minuters presentation, så vissa saker var bara berörde som i sig kan...

Bygg din egen elbil!

"Electro-Metro" projektet.Har inte råd en Nissan Leaf? Inga problem!Bygga en billig elbil själv genom att ta bort den bilen motorn, ersätta den med en gaffeltruck motor, och lägga till batterier.Jag har massor av videor om projektet på:http://ww...

Bygga din egen jorden ugn

Vem älskar inte läcker vedeldad ugn pizza? INGEN.Jag hade en dröm om bakgård pizza part kul gånger och började göra en del efterforskningar att göra det dröm verklighet.Först tittade jag på material kostnaden för en tegelugn (spoiler alert: de är all...

Bygg din egen hörsel Augmented Seashell!

i detta Instructable jag kommer att förklara hur man bygger din egen hörsel Augmented Seashell. Nu, innan vi börjar, vad är en auditiv Augmented Seashell?Svar: i princip är det en snäcka kan producera andra ljud än det redan gör. En snäcka producerar...

Bygga din egen Mobility Rehab handikappade Scooter för mindre än $500

Jag kan visa dig hur du konverterar en rakkniv E300 skoter, föreslår jag att du köpa från Amazon.com bör vara omkring $250, i din egen Rehab handikappade scooter. E300 skoter får du har bara en hastighet. Hög hastighet, eller kusten, inget däremellan...

Bygga din egen ficka SID Audio Player

Låt oss tid reser tillbaka till 80-talet igen genom att skapa din egen Propellerpowered Pocket SID Audio Player.]Den Guinness rekordbok listar Commodore 64 som den bäst säljande datormodellen genom tiderna. C64: an mest övertygande funktioner var det...

Bygg din egen upphöjd trädgård säng! Odla din egen mat!

i denna blogg, vi hoppas att instruera dig att bygga din egen trädgård säng. Lära av våra misstag och odla din egen mat hemma!Steg 1: fördelarDet finns många fördelar med att bygga en uppvuxen trädgård säng!1) är det lättare på din rygg! Du behöver i...

Bygg din egen bärbara rostfritt stål fälgar tube - och hela bara väger bara 17 kg!

Jag är en långsiktig homebrewer men jag har alltid gjort enda steg infusion mosar. Jag har alltid velat en fälgar eller HERMS system men jag inte gillar det utrymme ett fullständigt system tar upp och jag har alltid backade på grund av kostnaden. Men...

Hemma Hydroponics - en handbok om hur att bygga din egen hydroponics system

IntroduktionOrsakerna och effekterna av överbefolkningÖverbefolkning ska inte tas lättvindigt. Den har några fruktansvärda effekter, en av dem är en brist på mat. Våra för närvarande överbefolkad värld orsakas av den industriella revolutionen. Den in...

Hur till bygga din egen rörliga Tardis!

Få din "hur att bygga din egen Tardis Kit" & en annan klar Tardis för skala.Steg 1: Steg 1 öppna Tardis Kit Steg 1 Öppna "Hur att bygga din egen Tardis Kit"Kontrollera att du har alla bitar du behöver!Steg 2: Steg 2 sätta lampa i T...

Bygg din egen gitarren effektpedal!

Med dagens ekonomi, de flesta kvalitet gitarr effekt pedaler är över $100, det är mycket sällan att du hittar en bra pedal för under $100, särskilt om den är gjord i USA. Det finns ett mycket billigare alternativ om du bara måste ha vissa grundläggan...

Bygga din egen Smartphone

Denna handledning tar dig från början till slut i att bygga din egen smartphone. Du kommer att börja med 3D utskrift fall sedan löda kretskort tillsammans, församlingen, och slutligen installera en mobil OS på din telefon och använda Python för att g...

En Wide Body Quadrotor - mönster och idéer för att bygga din egen.

Multirotors--hur coola de är!En quadrotor är en typ av multirotor flygplan. Dessa flygplan är enklare än någonsin att bygga. Du kan börja med denna maskin och öka dess kapacitet (och komplicerade) som du lära dig mer. Din erfarenhet, kunskap och resp...

BYGG DIN EGEN ROBOT. DIY

detta Instructable visar hur man bygger en grundläggande robot på enklaste sätt. Du behöver bara några verktyg och lite tid...Steg 1: Det finns två sätt att bygga din egen grundläggande robot1.-en är till göra din egen PCB. Att lära sig lite elektron...

Bygga din egen FM-Radio Astronomy Lab

eftersom jag är en enkel man, och tanken på att försöka förstå allt okändan är mer än jag kan hantera, jag föredrar den enklare sidan av astronomi. Min personliga astronomi verktyg inkluderar ett 4,5" reflektor teleskop, ett par av kikare och en FM-R...