LINUX.ORG.RU
ФорумAdmin

iptables+tc htb редирект трафика

 


0

1

Кто подскажет

Цель - редирект/зеркалирование трафика маркированного как «внешний» на виртуальный интерфейс, для последующего мониторинга полосы iftop и подобным... На MikroTik можно поставить отображение скорости прохождения трафика через очередь, на linux все чуть посложнее. Имеется скрипт в автозагрузке. С помощью ipset и iptables маркируется зона KG (312) м МИР (8) Скорость режется все хорошо, но как мониторить скороть МИР?

#!/bin/sh

#ipforward echo 1 > /proc/sys/net/ipv4/ip_forward

#start vpn /home/ololo/vpnserver/vpnserver start

#ipset

ipset -N kgzone nethash /home/ololo/script

#iptables

iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE #KGzone iptables -t mangle -A POSTROUTING -m set --match-set kgzone src -j MARK --set-mark 312 #World iptables -t mangle -A POSTROUTING -m set ! --match-set kgzone src -j MARK --set-mark 8

#SpeedLimit

  • tc qdisc add dev tap_ololo root handle 1: htb default 20
  • tc class add dev tap_ololo parent 1: classid 1:1 htb rate 100mbit
  • tc class add dev tap_ololo parent 1:1 classid 1:11 htb rate 512kbit ceil 1mbit
  • tc class add dev tap_ololo parent 1:1 classid 1:12 htb rate 512kbit ceil 2mbit
  • tc qdisc add dev tap_ololo parent 1:11 handle 11: sfq perturb 10
  • tc qdisc add dev tap_ololo parent 1:12 handle 12: sfq perturb 10
  • tc filter add dev tap_ololo parent 1:0 prio 0 protocol ip handle 312 fw flowid 1:11
  • tc filter add dev tap_ololo parent 1:0 prio 0 protocol ip handle 8 fw flowid 1:12

Текущую скорость через класс можно посмотреть через «tc -s class show dev tap_ololo | egrep 'class htb|rate'»

При условии что в /sys/module/sch_htb/parameters/htb_rate_est 1

vel ★★★★★
()
Ответ на: комментарий от vel

Нашел на форуме пару скриптов, которые могут отобразить скорость, но это немного не то. С помощью tc filter можно средеректить весь вход иди исход трафик, а вот можно ли так поступить только с трафиком с определенной маркировкой?

s0t0na
() автор топика
Ответ на: комментарий от s0t0na

а вот можно ли так поступить только с трафиком с определенной маркировкой?

"-j CLASSIFY --set-class ..." даже маркировать не нужно.

Но оно не прокатит для входящего трафика.

vel ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.