SynProxy не может возвращать пакеты синхронизации с асимметричной топологией с двумя мостами


12

У меня есть асимметричная топология двойного моста, как показано ниже, когда я соединяюсь с 172.16.11.5 и 172.16.10.6 с ssh, но я не могу соединиться из-за SynProxy.

                  -------
                  |     |
                  ---o--- 172.16.11.5
                     |
                     |
                -----o----- 172.16.11.6
                |         |
                |         | default gw 1.1.1.1
                |         |
     1.1.1.2/30 --o----o--- 2.2.2.2/30
                  |    |
                  |    |
                  |    | (enp10s0f0)
              ----o----o-----
              |             |
              |     XXX     |
              |             |
              |  br1   br0  | synproxy
              |             |
              ----o----o-----
                  |    |
                  |    |
                  |    |
     1.1.1.1/30 --o----o--- 2.2.2.1/30
                |         |
                |         | default gw 2.2.2.2
                |         |
                -----o----- 172.16.10.1
                     |
                     |
                  ---o--- 172.16.10.6
                  |     |
                  -------

На всех машинах между 172.16.11.5 и 172.16.10.6 «rp filtering» выключен, а «ip forwarding» включен. В середине топологии находится машина, которая называется машиной "ХХХ". XXX имеет два моста и SynProxy.

Когда SynProxy выключен на XXX, я могу пропинговать с 172.16.11.5 до 172.16.10.6 и пакеты icmp следуют по этому пути: br1-> 172.16.10.1-> 172.16.10.6-> 172.16.10.1-> br0. Кроме того, я могу получить доступ с 172.16.11.5 по 172.16.10.6 с помощью ssh. Так что трафик TCP работает как я ожидаю.

Однако, когда SynProxy включен в XXX, я могу пропинговать с 172.16.11.5 до 172.16.10.6, и пакеты icmp следуют по тому же пути. Но я не могу получить доступ с 172.16.11.5 по 172.16.10.6, используя ssh. Это потому, что synproxy не может отправлять syn ack ответы через br1 iface. Если я добавлю маршрут для пакетов synack в XXX, я могу подключиться с 172.16.11.5 до 172.16.10.6 с помощью ssh.

добавление маршрута 172.16.11.5 dev enp10s0f0

Правила SynProxy для XXX:

iptables -t raw -A PREROUTING -i br0 -p tcp -m physdev --physdev-in 
enp10s0f0 -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j CT --notrack
iptables -t raw -A PREROUTING -i br1 -p tcp -m physdev --physdev-in 
enp11s0f0 -m tcp --tcp-flags FIN,SYN,RST,ACK SYN -j CT --notrack

iptables -t filter -A FORWARD -i br0 -p tcp -m physdev --physdev-in 
enp10s0f0 -m tcp -m state --state INVALID,UNTRACKED -j SYNPROXY 
--sack-perm --timestamp --wscale 7 --mss 1460
iptables -t filter -A FORWARD -i br0 -m physdev --physdev-in enp10s0f0 
-m state --state INVALID -j DROP
iptables -t filter -A FORWARD -i br1 -p tcp -m physdev --physdev-in 
enp11s0f0 -m tcp -m state --state INVALID,UNTRACKED -j SYNPROXY 
--sack-perm --timestamp --wscale 7 --mss 1460
iptables -t filter -A FORWARD -i br1 -m physdev --physdev-in enp11s0f0 
-m state --state INVALID -j DROP

Но это неприемлемо, потому что сеть 172.16.11.0 является облачной. Поэтому я не мог добавить маршрут всей облачной сети в таблицу маршрутов и не мог добавить MAC-адрес в таблицу arp.

Как я могу подключиться с 172.16.11.5 к машине 172.16.10.6, используя ssh, когда SynProxy включен на XXX? или это возможно?

Заранее спасибо,


Можете ли вы сказать, какие значения medium_idимеют мостовые интерфейсы в synproxy? Кроме того, каковы ваши действительные правила SYNPROXY во всех таблицах?
Александр Янссен

Я добавил правила iptables для SynProxy. Но я ничего не знаю о medium_id. Я быстро искал в интернете, но это не пагубно @AlexanderJanssen
nyzsirt

Ответы:


0

Простейший способ исправить это - изменить маршруты по умолчанию на компьютерах шлюзов для использования одного и того же моста, чтобы он больше не был асимметричным.

  • На 172.16.11.6 установите значение по умолчанию как 2.2.2.1 (через br0)
  • На 172.16.10.1 установите значение по умолчанию как 2.2.2.2 (через br0)

Мне интересно, почему он был спроектирован таким образом ... какова цель второго моста?

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.