Привет! У меня есть два роутера CRS125-24G с RouterOS 6.33.3 — по одному аплинку и 23 порта работают как свич на каждом устройстве. Я столкнулся с странной проблемой при маршрутизации между сетями.
У меня две сети: Device A — 192.168.10.0/24 и Device B — 192.168.100.0/24.
(SSH клиент 192.168.10.18) — (192.168.10.1 Роутер A) — (192.168.10.11 Роутер B 192.168.100.1) — (SSH сервер 192.168.100.10)
На Router A есть статический маршрут, который направляет трафик из 192.168.10.0/24 в 192.168.100.0/24 через Router B:
Flags: X - отключён, A - активный, D - динамический, C - подключённый, S - статический, r - rip, b - bgp, o - ospf, m - mme, B - blackhole, U - недоступен, P - запрещён
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
8 A S 192.168.100.0/24 192.168.10.11 1
Я заметил, что когда у меня включено правило фаервола, которое сбрасывает пакеты с состоянием invalid (недействительные соединения), проблемы возникают и с валидными пакетами. Вот это правило:
9 ;;; сбросить недействительные соединения
chain=forward action=drop connection-state=invalid log=yes log-prefix="INVALID"
Когда оно включено, подключение по SSH с 192.168.10.18 к 192.168.100.10 занимает 7 секунд. Если выключить это правило — подключение к SSH-серверу происходит сразу.
В логах при включенном сбросе invalid-пакетов я вижу вот такие записи о сброшенных пакетах:
20:31:49 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK), 192.168.10.18:46888->192.168.100.10:22, len 52
20:31:49 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK), 192.168.10.18:46888->192.168.100.10:22, len 52
20:31:51 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:52 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK), 192.168.10.18:46888->192.168.100.10:22, len 52
20:31:53 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
Я сделал трассировку пакетов и вижу множество повторных и дублирующихся пакетов. Странно, что соединение инициируется с задержкой, а все последующие пакеты в том же соединении идут без тормозов.
У меня включён connection tracking, и я вижу это соединение в таблице отслеживания.
Похоже, валидные пакеты ошибочно срабатывают на правило сброса invalid.
В чём может быть причина такого поведения? Это баг или косяк в моей конфигурации?
У меня две сети: Device A — 192.168.10.0/24 и Device B — 192.168.100.0/24.
(SSH клиент 192.168.10.18) — (192.168.10.1 Роутер A) — (192.168.10.11 Роутер B 192.168.100.1) — (SSH сервер 192.168.100.10)
На Router A есть статический маршрут, который направляет трафик из 192.168.10.0/24 в 192.168.100.0/24 через Router B:
Flags: X - отключён, A - активный, D - динамический, C - подключённый, S - статический, r - rip, b - bgp, o - ospf, m - mme, B - blackhole, U - недоступен, P - запрещён
# DST-ADDRESS PREF-SRC GATEWAY DISTANCE
8 A S 192.168.100.0/24 192.168.10.11 1
Я заметил, что когда у меня включено правило фаервола, которое сбрасывает пакеты с состоянием invalid (недействительные соединения), проблемы возникают и с валидными пакетами. Вот это правило:
9 ;;; сбросить недействительные соединения
chain=forward action=drop connection-state=invalid log=yes log-prefix="INVALID"
Когда оно включено, подключение по SSH с 192.168.10.18 к 192.168.100.10 занимает 7 секунд. Если выключить это правило — подключение к SSH-серверу происходит сразу.
В логах при включенном сбросе invalid-пакетов я вижу вот такие записи о сброшенных пакетах:
20:31:49 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK), 192.168.10.18:46888->192.168.100.10:22, len 52
20:31:49 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:50 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK), 192.168.10.18:46888->192.168.100.10:22, len 52
20:31:51 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
20:31:52 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK), 192.168.10.18:46888->192.168.100.10:22, len 52
20:31:53 firewall,info INVALID forward: in:bridge out:bridge, src-mac c4:85:08:dd:94:42, proto TCP (ACK,PSH), 192.168.10.18:46888->192.168.100.10:22, len 95
Я сделал трассировку пакетов и вижу множество повторных и дублирующихся пакетов. Странно, что соединение инициируется с задержкой, а все последующие пакеты в том же соединении идут без тормозов.
У меня включён connection tracking, и я вижу это соединение в таблице отслеживания.
Похоже, валидные пакеты ошибочно срабатывают на правило сброса invalid.
В чём может быть причина такого поведения? Это баг или косяк в моей конфигурации?
