Форум интернет-магазина Микрокомп
0 Список сравнения
0 Избранные товары
0
Страницы: 1
Маркировка соединений и пакетов, Где и как?
 
Здравствуйте.
Провайдер предоставляет доступ ко внутренним ресурсам на повышенной скорости по сравнению с доступом в интернет. Хотелось бы отмаркировать трафик ко внутренним и внешним ресурсам и раскидывать его по своим очередям для обеспечения нужного качества обслуживания. Но где и как маркировать? Например, здесь маркируются исходящие соединения с сервера в цепочке prerouting, а пакеты -- в forward. Однако я часто видел в примерах, что маркировка и того, и другого делается или в prerouting, или в forward. Кроме этого, почему не маркируются входящие соединения и пакеты как это сделано в случае маркировки только пакетов, например, здесь?
Объясните, пожалуйста, или дайте ссылки где это всё "разжёвано". Заранее благодарен.

P. S.
Здесь схема следования справедлива как для исходящих пакетов, так и входящих?
 
Почитав документацию (в частности, эту и эту статьи), я попробовал настроить маршрутизатор следующим образом.
Поскольку исходящие соединения клиентов попадают в цепочку prerouting, и поскольку там находится блок "Connection tracking" (судя по схеме следования пакетов), то маркируем соединения именно здесь:
Код
/ip firewall mangle add chain=prerouting action=mark-connection new-connection-mark=userConnection in-interface=ether2-master-local

Пакеты, которые попадают в цепочку prerouting, в качестве IP-адреса назначения имеют IP-адрес порта маршрутизатора, "смотрящего" в локальную сеть. IP-адрес интернет-ресурса пакеты получают в конце цепочки prerouting, где срабатывает Dst-NAT. Поэтому, маркировать пакеты нужно или в цепочке forward, или в postrouting:
Код
/ip firewall mangle add chain=forward action=mark-packet new-packet-mark=peerResourcePacket connection-mark=userConnection dst-address-list=peerResources passthrough=no
/ip firewall mangle add chain=forward action=mark-packet new-packet-mark=internetResourcePacket connection-mark=userConnection passthrough=no

Таким образом, трафик от/к клиентам якобы будет промаркирован.
Чтобы обеспечить нужное качество обслуживания, я воспользовался простыми очередями:
Код
/queue simple add max-limit=100M/100M name=allTraffic queue=pcq-upload-default/pcq-download-default target=0.0.0.0/0

/queue simple add max-limit=95000k/95000k name=peerTraffic packet-marks=peerResourcePacket parent=allTraffic queue=pcq-upload-default/pcq-download-default target=0.0.0.0/0

/queue simple add max-limit=95000k/95000k name=user1_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user2_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user3_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user4_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user5_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user6_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user7_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=95000k/95000k name=user8_pt parent=peerTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>

/queue simple add max-limit=23750k/23750k name=internetTraffic parent=allTraffic queue=pcq-upload-default/pcq-download-default target=0.0.0.0/0

/queue simple add max-limit=23750k/23750k name=user1_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user2_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user3_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user4_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user5_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user6_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user7_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user8_it packet-marks=internetResourcePacket parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=<IP-адреса>
/queue simple add max-limit=23750k/23750k name=user9_it parent=internetTraffic queue=pcq-upload-default/pcq-download-default target=0.0.0.0/0

Однако, почему-то в очередях клиентов (как userX_pt, так и userX_it) не фиксируется входящий трафик, зато он фиксируется в родительской очереди internetTraffic и очереди user9_it, куда попадает неучтённый трафик (например, соединения с/к маршрутизатору).
В чём дело?
Страницы: 1