2014-11-07 4 views
2

Я хочу использовать haproxy для развертывания одного прокси-сервера ftp. Вот сцена:Как настроить диапазон портов haproxy для диапазона один за другим?

< FTP-клиент ---> FTP-прокси-сервер (IP: 10.0.1.1) < ---> FTP-сервер (IP: 172.126.1.1)

FTP-сервер прослушивает порт 21 для команды управления, диапазон портов данных [20100-20199]

Я имел HAproxy конфигурации на FTP-прокси-сервер:

listen ftp-proxy-server 10.0.1.1:21 
    mode tcp 
    server ftp-server 172.126.1.1:21 

listen ftp-proxy-server 10.0.1.1:20100-20199 
    mode tcp 
    server ftp-server 172.126.1.1:20100-20199 

Вот вопрос, я могу успешно логин службы FTP с FTP-клиент, но не удалось выполнить команду ls, которая выводит сообщение «отказ от соединения». Я думаю, причина в том, что сопоставление портов с ftp-proxy-server на ftp-server является случайным. Поэтому, когда ftp-клиент получает зарезервированный порт (например, 20101), но ftp-proxy-сервер может сопоставить его с другим портом (например, 20109), который не является ftp-сервером порта, назначенным ftp-клиенту.

Я думаю о одном решении, которое настроило 100 прослушиваний, один прослушивает один порт, но сложно написать файл конфигурации. Есть ли простой вариант конфигурации для сопоставления портов один за другим? Также как 10.0.1.1:20001 -> 172.126.1.1:20001, 10.0.1.1:20002 -> 172.126.1.1:20002.

Добро пожаловать любой ответ :)

ответ

2

Вы должны удалить диапазон портов из определения сервера. Документация haproxy показывает, что тот же порт из источника используется для адресата.

listen ftp-proxy-server 10.0.1.1:20100-20199 
    mode tcp 
    server ftp-server 172.126.1.1 
Смежные вопросы