Fórumok
Sziasztok!
Eth0.101 interface-en szeretnenk limitalni a le es felmeno forgalmat.
Azt olvastam, hogy TC-vel lehet ilyesmit csinalni, de csak a lefele forgalmat szabalyoza es a felfele menetet nem.
Van valakinek javaslata, hogy hogyan lehetne korlatozni a le es fel forgalmat?
Es IP cimtol fuggetlenul szeretnenk, csak az adot VLAN-t. ingress es egress-t.
Koszi!
Hozzászólások
korlátozni (pontosabb queue-t ill. scheduler-t) csak egress tudsz.
Miután a megfelelő class-okat és qdisc-eket elkészítetted, már csak match-elni kell:
/sbin/tc filter add dev eth0 protocol ip parent 2:0 prio 1 u32 match ip dst a.b.c.d flowid 2:0c0d
Uezt az out interface-re is.
Ha pisztolyt fognak a fejemhez, akkor sem tudom megmondani, hogy a TC esetén a root device az eth0 vagy külön tree-ket tudsz-e felhúzni a külön VLAN-okra.
Nyilván utóbbi lenne a logikus, de pár perc alatt Te is ki tudod próbálni...
eth0 a root, a vlan interfeszeknek nincs queue-juk
Ha most konkretan ezt probaljuk:
eth3.101 en siman megy a korlatozas lefele, de csak a forras IP fele. Meg nem ertjuk, hogy mit csinaljunk hogy a teljes interface-re legyen a szabaly es ne csak adott IP-re. gondolom match IP src es dst-t kene modositani valamire...
Felfele nem mukodik a dolog, nyilvan mert ingress-re nem lehet ugyan ezen az interface-en. Valaki azt javasolta, hogy csinaljunk egy bridge interface-t eth3.101 re es azon szurjuk a felfele meno forgalmat.
WAN interface van, de ott VLAN nincs felhuzva es anelkul nem hiszem, hogy tudnank szurni.
A VLAN interfészen bejövő csomagra ráteszel egy markert és amikor a WAN interfészen kimegy, akkor a markerra matchelsz.
Ezt ezt hogy? :)
Innentől a dolog teljesen IP cím-független.
Hat benazunk nagyon :) de elvileg ez igy mukodik ingress
mostmar csak egress-re kell megcsinalni.
ha javasolhatom, próbáld meg NE keverni a tree-ket.
azaz legyen egy tree az egyik interface-hez ÉS EGY MÁSIK a másik interface-hez.
Hat igen, csak meg az egress en gondolkodunk hogy hogy is nezne ki a szabaly, ha nem ip re hanem interface re szeretnenk korlatozni eth3.101 en.
esetleg van otlete valakinek hogy hogyan kene? Azt is mark al iptables-en?
pl minden kimenő (forward, nem output) csomagot mark-olsz? :-)
Ez igy nem mukodik:
Ez igen, de nem MARK-al van, es valahogy azzal szeretnenk iptables-bol, FORWARD rol, de nem sikerul
mangle táblában próbáld PREROUTING és POSTROUTING chain-ekben
Megvan!
ingress (Letoltes / Inbound)
egress (Feltoltes / Outbound)
na várj, korlatozas lefele, de csak a forras IP fele - itt valami árulás van.
forrás helyett cél IP-t akartál írni, ugye?
többször mondták, hogy csak egress interface-n tudsz korlátozni.
jelen esetben neked az úgy működne, hogy az egress interface az eth1 (mondjuk)
arra ugyanígy megcsinálod a szabályokat (1: helyett 2: lesz)
és IDE teszed az src match -t, valamint a parent 2:0 lesz, a flowid pedig 2:1
a lartc.org-on frankón el tudod olvasni az egésznek a miértjét.
az utolsó sor jelen esetben úgy lenne helyes, hogy:
tc filter add dev eth3.101 protocol ip parent 1:0 prio 1 u32 match ip dst 192.168.0.102/32 flowid 1:2
ebben az esetben a két egymás mellett lévő "leaf" azonos prioritással bír, és egyenlő arányban lesz megosztva köztük a sávszélesség.
"WAN interface van, de ott VLAN nincs felhuzva es anelkul nem hiszem, hogy tudnank szurni."
nem kell VLAN a szűréshez. a VLAN egy "virtuális" interface. azért is volt (számomra) kétséges, hogy a tree root az a fizikai interface-hez kapcsolódik-e, vagy nem. Én azt tartanám logikusnak, hiszen két VLAN interface között is simán lehet "versenyhelyzet".
Pontosabban a vanilla linux kernelben nem lehet csak egress-t álltítani.
Ahhoz hogy egress és igress irányt tudj korlátozni ahhoz imq kell
https://github.com/imq/linuximq
De ehhez kernelt kell fordítani és elég sok munkát számolj hozzá.
Pontosabban meglévő kernelhez elég a modult hozzáfordítani.
Fedora 33, Thinkpad x280
Egy interfészen csak az egress forgalmat tudod szabályozni, de ha a szabályzás egy gatewayen történik, ott jellemzően van (legalább) két interfészed, pl. egy WAN és egy LAN. A felhasználó szemszögéből letöltés irány a LAN interfészen lesz egress, a feltöltés irány pedig a WAN interfészen lesz egress, tehát, tudod szabályozni mindkét irányt, csak nem ugyanazon az interfészen.
sub
Szia!
Nem tudom működik-e a következő, próbáld ki