URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID10
Нить номер: 4046
[ Назад ]

Исходное сообщение
"FTP + DNAT + 2 внешних канала"

Отправлено Denis , 10-Ноя-08 13:26 
Есть шлюз на linux (iptables + iproute2) и два канала от двух разных провайдеров.

Есть FTP сервер за шлюзом. Надо пробрасывать на него соединения снаружи.

Всё без проблем работает, если внешнее соединение приходит на ip адрес, который соответсвует default gateway.

Без проблема работает пассивный режим фтп, тут ip_nat_ftp и ip_conntrack_ftp справляются на ура.

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


Каким образом можно отлавливать эти соединения (ftp_server:20 -> client:random_port) и роутить их через тот канал, через который соединился клиент?


Содержание

Сообщения в этом обсуждении
"FTP + DNAT + 2 внешних канала"
Отправлено angra , 11-Ноя-08 06:33 
Читать lartc, там есть примеры для более общего случая.

"FTP + DNAT + 2 внешних канала"
Отправлено Denis , 11-Ноя-08 07:10 
>Читать lartc, там есть примеры для более общего случая.

Перечитал
4. Rules - routing policy database
        4.1. Simple source policy routing
        4.2. Routing for multiple uplinks/providers
              4.2.1. Split access
              4.2.2. Load balancing

10. Load sharing over multiple interfaces
        10.1. Caveats
        10.2. Other possibilities

и

11. Netfilter & iproute - marking packets
   12. Advanced filters for (re-)classifying packets

Там ничего похожего не описано.

Так какой раздел rtfm?