Фильтр по connection mark работает криво?

Обсуждение ПО и его настройки
Lurker
Сообщения: 159
Зарегистрирован: 29 апр 2021, 10:45

RouterOS 6.48.2
У меня есть 4 connection mark:
1)torrent
2)other
3)отсутствие марки
4)111-когда-то была такая марка, и теперь я её вижу в при выборе марки в winbox, но при экспорте конфига её нигде не видно.
Судя по логике счётчик пакетов\байт на последнем правиле с действие passtrought(см правила в конце списка) не может быть отличным от нуля если на правилах выше счётчик на нуле. (и да если вы вспомните по марку 111, я добавлял правило с фильтром по 111 ничего не поменялось) А по факту как раз счётчик последнего правила растёт, а первых нет. Как будто существуют пакеты с другими connection mark.
Я где-то накосячил или нарвался на баг?
/ip firewall mangle

Код: Выделить всё

add action=mark-connection chain=prerouting comment=\
    "Torrent connection input TCP" connection-state=new dst-address=\
    109.95.219.210 dst-port=6881-7000,50002,50009 in-interface-list=Internet \
    new-connection-mark=torrent passthrough=yes protocol=tcp src-address=\
    !192.168.0.0/16
add action=mark-connection chain=prerouting comment=\
    "Torrent connection input UDP" connection-state=new dst-address=\
    109.95.219.210 dst-port=6881-7000,50002,50009 in-interface-list=Internet \
    new-connection-mark=torrent passthrough=yes protocol=udp src-address=\
    !192.168.0.0/16
add action=mark-connection chain=prerouting comment=\
    "Torrent connection out TCP" connection-state=new dst-address=\
    !192.168.66.0/24 in-interface=LAN-bridge new-connection-mark=torrent \
    passthrough=yes protocol=tcp src-address=192.168.66.0/24 src-port=\
    6881-7000,50002,50009
add action=mark-connection chain=prerouting comment=\
    "Torrent connection out UDP" connection-state=new dst-address=\
    !192.168.66.0/24 in-interface=LAN-bridge new-connection-mark=torrent \
    passthrough=yes protocol=udp src-address=192.168.66.0/24 src-port=\
    6881-7000,50002,50009
add action=mark-routing chain=prerouting comment=\
    "Torrent routing by connection mark" connection-mark=torrent \
    new-routing-mark=torrent passthrough=no
add action=mark-connection chain=prerouting comment="other connection" \
    connection-mark=no-mark connection-state=new in-interface-list=Internet \
    new-connection-mark=other passthrough=no
add action=mark-packet chain=input comment="wan input" in-interface=\
    WAN-ether1 new-packet-mark="other in" passthrough=no
add action=mark-connection chain=forward comment="other connection" \
    connection-mark=no-mark connection-state=new new-connection-mark=other \
    out-interface-list=Internet passthrough=yes
add action=mark-packet chain=forward comment="torrent out" connection-mark=\
    torrent new-packet-mark="torrent out" out-interface=WAN-ether1 \
    passthrough=no
add action=mark-packet chain=forward comment="torrent in" connection-mark=\
    torrent in-interface=WAN-ether1 new-packet-mark="torrent in" passthrough=\
    no
add action=mark-packet chain=forward comment="other in out" connection-mark=\
    other in-interface-list=Internet new-packet-mark="other in out" \
    out-interface-list=Internet passthrough=no
add action=mark-packet chain=forward comment="other in" connection-mark=other \
    in-interface-list=Internet new-packet-mark="other in" passthrough=no
add action=mark-packet chain=forward comment="other out" connection-mark=\
    other new-packet-mark="other out" out-interface-list=Internet \
    passthrough=no
add action=mark-packet chain=forward comment=\
    "other out no connection mark check" new-packet-mark="other out" \
    out-interface=WAN-ether1 passthrough=no
add action=passthrough chain=forward comment="connection mark no-mark" \
    connection-mark=no-mark log=yes log-prefix="mangle forward 222"
add action=passthrough chain=forward comment="connection mark-other" \
    connection-mark=other log=yes log-prefix="mangle forward 222"
add action=passthrough chain=forward comment="connection mark-torrent" \
    connection-mark=torrent log=yes log-prefix="mangle forward 222"
add action=passthrough chain=forward comment="connection mark-undefined" log=\
    yes log-prefix="mangle forward connection mark undefined"
add action=mark-packet chain=output comment="wan output" new-packet-mark=\
    "other out" out-interface=WAN-ether1 passthrough=no


xvo
Сообщения: 4204
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

1) Старая марка уйдет после перезагрузки.

2) У вас последнее правило - цепочка output.
Предыдущие три - forward.


Telegram: @thexvo
Lurker
Сообщения: 159
Зарегистрирован: 29 апр 2021, 10:45

1)не ушла
2)последнее правило вообще не про то, 4 правила ПЕРЕД последним, те которые passthrough


xvo
Сообщения: 4204
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

1) Тогда оно наверное чисто в винбоксе могло остаться - сессию пустую попробуйте.
2) Могу предположить, что для броадкастных пакетов понятия соединения может вообще не быть, а может и еще для чего. Не понятно правда чего им в цепочке forward делать, но думаю надо в этом направлении копать.


Telegram: @thexvo
Lurker
Сообщения: 159
Зарегистрирован: 29 апр 2021, 10:45

1)Что значит попробовать пустую сессию?
2)Там точно не броадкастные пакеты. Я их в логах видел. Вам показать не могут т.к. после ребута лог не сохранился и пока таких неправильных пакетов небыло.


xvo
Сообщения: 4204
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

1) В винбоксе у вас стоит автосохранение сессии? Вот если открыть не ту, которая сохраняется, а новую.
2) Ну вот когда раскопаете, что это - напишите :-)
Может это как раз то, что буквально следующим шагом сбросится как invalid - фрагменты какие-нибудь потерявшиеся.


Telegram: @thexvo
Lurker
Сообщения: 159
Зарегистрирован: 29 апр 2021, 10:45

1)Ну судя по всему да, т.к. заходя в сессию у меня уже открыты некоторые окна... но я не могу найти где это убрать.
2)у фрагментов должна отсутствовать метка соединения. А они не попадают на правило, где без метки.


xvo
Сообщения: 4204
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

1) Самое верхнее меню Session и там Autosave on close
Я имел ввиду попробовать сразу открыть роутер с сессией New.

2) Ну все-таки видимо no-mark - это тоже метка.
А есть пакеты у которых нет и её тоже.


Telegram: @thexvo
Lurker
Сообщения: 159
Зарегистрирован: 29 апр 2021, 10:45

1)Я убираю галку, перезапускаю winbox и попадаю в старую сессию. И галка опять стоит. winbox 3.27

2)Хм, а ведь логично. Только наверно чуть по другому. Если пакет инвалид, то у него нет соединения, а нет соединения-значит нет марки. в т.ч. это не соединение без марки.


xvo
Сообщения: 4204
Зарегистрирован: 25 фев 2018, 22:41
Откуда: Москва

1) При старте винбокса включите галку advanced mode и выберите руками сессию <none>.
Lurker писал(а): 26 июл 2021, 16:09 нет соединения, а нет соединения-значит нет марки. в т.ч. это не соединение без марки.
2) Я именно это и имел ввиду, когда предполагал, что это могут быть броадкасты или что-то подобное, для чего понятия соединения может вообще не быть.


Telegram: @thexvo
Ответить