Portál AbcLinuxu, 2. května 2025 04:48
Skript pro zjednodušení QoS pomocí HTB stromu a iptables
Po letmém studiu HTB a způsobu jak ovlivňovat download ale i upload, jsem se snažil najít skript, který by z jednoduchého kofiguračního souboru vygeneroval příkazy pro tc. Vyzkoušel jsem HTB tools a podíval se, jak se kofiguruje HTB init, ale ani jedno se mi nezamlouvalo. HTB tools se z nějakého důvodu domníval, že nemám podporu HTB v jádře, ale i tak mi jeho konfigurace přišla zbytečně složitá, stejně tak jako u HTB init.
To mě přimělo zkusit jít vlastní cestou. Protože nemám moc rád csh skript a protože už dýl jsem se chtěl trochu naučit python, tak je to napsané v něm. Výsledek je zde:
HTB generátorVtipné je, že jsem ještě vůbec nezkoušel, jak to funguje. Nemám teď právě k dispozici počítač, kde by běželo víc rozhraní a víc klientů. Máte-li čas a chuť, zkuste to a popřípadě opravte chyby :)
Jinak skript sám má dvě části. První část převádí jednoduchou konfiguraci na stromeček skupin. Druhá z toho stromku generuje příkazy. V první části se berou jeden po druhém všichni klienti a rozdělí se do balíčků, podle společných atributů (upload, download, agregace, rozhraní). V balíčku navíc nemůže být více klientu, než jaká je agregace. Z těchto balíků se pak vytvoří uzly první úrovně a pod ně se vloží konkrétní uživatelé. Během tohoto procesu se všechny uzly i ty koncové automaticky číslují unikátním číslem. Toto číslo je pak využito při pojmenování tříd htb a navíc se jimi označují pakety v iptables.
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.