Vím že už to tu bylo mnohokrát, ale buď jsem nenašel to správné téma, nebo jsem úplně mimo. Řeším markování provozu na routeru s NATem, kvůli hodně asymetrickému ADSL. Kamarád chtěl poradit, aby mu všechu konektivitu nevyžírali děti. Na Mikrotiku triviální úloha...
Pravidlo pro označování příchozího provozu :
/ip firewall mangle
add action=mark-connection chain=prerouting comment="Mark all VIP connections" disabled=no new-connection-mark=VIP_Connection-In src-address-list=VIP passthrough=yes
add action=mark-packet chain=prerouting comment="Mark all VIP packets In" connection-mark=VIP_Connection-In disabled=no new-packet-mark=QoS_2_In passthrough=no
Na routeru je NAT - odchozí provoz označuju v postroutingu :
/ip firewall mangle
add action=mark-connection chain=postrouting comment="mark Connection VIP upload" new-connection-mark=VIP_Connection-Out out-interface=WAN src-address-list=VIP passthrough=yes
add action=mark-packet chain=postrouting comment="Mark all VIP packets Out" connection-mark=VIP_Connection-Out new-packet-mark=QoS_2_Out out-interface=WAN passthrough=no
A mám tam ještě pravidlo, které označí všechen zbývající provoz :
/ip firewall mangle
add action=mark-packet chain=prerouting comment="----QoS_8 [Zbytek]----" in-interface=WAN new-packet-mark=QoS_8_In passthrough=no protocol=tcp
add action=mark-packet chain=postrouting new-packet-mark=QoS_8_Out out-interface=WAN passthrough=no protocol=tcp
add action=mark-packet chain=prerouting in-interface=WAN new-packet-mark=QoS_8_In passthrough=no protocol=udp
add action=mark-packet chain=postrouting new-packet-mark=QoS_8_Out out-interface=WAN passthrough=no protocol=udp
add action=mark-packet chain=prerouting in-interface=WAN new-packet-mark=QoS_8_In passthrough=no
add action=mark-packet chain=postrouting new-packet-mark=QoS_8_Out out-interface=WAN passthrough=no
Připravil jsem si jednoduchý strom pro testovací účely :
/queue tree
add limit-at=4M max-limit=4M name=QoS_Global_Upload parent=global queue=default
add limit-at=1024k max-limit=3M name="QoS_2_Out(WWW_VIP)" packet-mark=QoS_2_Out parent=QoS_Global_Upload priority=2 queue=pcq-upload-default
add limit-at=0 max-limit=1M name="QoS_8_Out(Default)" packet-mark=QoS_8_Out parent=QoS_Global_Upload queue=pcq-upload-default
add limit-at=8M max-limit=8M name=QoS_Global_Download parent=global queue=default
add limit-at=4096k max-limit=6M name="QoS_2_In(WWW_VIP)" packet-mark=QoS_2_In parent=QoS_Global_Download priority=2 queue=pcq-download-default
add limit-at=0 max-limit=2M name="QoS_8_In(Default)" packet-mark=QoS_8_In parent=QoS_Global_Download queue=pcq-download-default
Když nechám aktivní jen jedno z pravidel pro markování provozu (je jedno které), tak při návštěvě http://www.speedtest.net vidím, jak dokonale probíhá omezování, v Queue Tree nejdříve žloutnou a pak zčervenají indikátory omezování rychlosti - perfektně to funguje - když je zapnuté pravidlo pro download, funguje omezování downloadu. Když je zapnuté jen pravidlo pro upload, funguje omezování uploadu.
Ale v okamžiku, kdy jsou aktivní obě pravidla naráz, tak příchozí provoz je označován až tím posledním mangle pravidlem (tj. omezen na 1Mb), odchozí provoz je označován a omezován správně. A za žádnou cenu nemůžu přijít na to, kde je chyba.
Pokud tam vidíte nějakou nesrovnalost, můžete mi prosím říct, kde...? Děkuji.