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

Исходное сообщение
"cisco 2951 - проброс порта в зависимости от источника"

Отправлено mr_noname , 27-Ноя-12 09:00 
Есть необходимость пробросить внешний порт в локалку на два разных сервера, причём чтобы сервер выбирался в зависимости от того, с какого адреса пришёл пакет.
То есть примерно такая схема:

внешний_клиент_1 ===> внешний адрес:80 ===> внутренний_сервер_1:80
внешний_клиент_2 ===> внешний адрес:80 ===> внутренний_сервер_2:80


Содержание

Сообщения в этом обсуждении
"cisco 2951 - проброс порта в зависимости от источника"
Отправлено mr_noname , 27-Ноя-12 09:01 
Ну да, собственно вопрос - как это сделать?

"cisco 2951 - проброс порта в зависимости от источника"
Отправлено GolDi , 27-Ноя-12 09:19 
> Ну да, собственно вопрос - как это сделать?

ACL повесить на интерфейс


"cisco 2951 - проброс порта в зависимости от источника"
Отправлено mr_noname , 27-Ноя-12 11:04 
> ACL повесить на интерфейс

ACL который будет делать что? Я просто с трудом представляю как хотя бы это у гугла спросить. Ключевые слова дайте.


"cisco 2951 - проброс порта в зависимости от источника"
Отправлено GolDi , 27-Ноя-12 11:10 
>> ACL повесить на интерфейс
> ACL который будет делать что? Я просто с трудом представляю как хотя
> бы это у гугла спросить. Ключевые слова дайте.

Да был не прав, тут скорее задача для iptable


"cisco 2951 - проброс порта в зависимости от источника"
Отправлено Valery12 , 27-Ноя-12 10:11 
> Есть необходимость пробросить внешний порт в локалку на два разных сервера, причём
> чтобы сервер выбирался в зависимости от того, с какого адреса пришёл
> пакет.
> То есть примерно такая схема:
> внешний_клиент_1 ===> внешний адрес:80 ===> внутренний_сервер_1:80
> внешний_клиент_2 ===> внешний адрес:80 ===> внутренний_сервер_2:80

мне кажется тут без nginx (или другого обратного прокси) не обойтись


"cisco 2951 - проброс порта в зависимости от источника"
Отправлено mr_noname , 27-Ноя-12 11:11 
> мне кажется тут без nginx (или другого обратного прокси) не обойтись

80-ый порт для примера. Я про более общую задачу спрашивал. Вроде бы она не такая уж специфичная. На Линуксе, к примеру, это бы выглядело так:

iptables -t nat -A PREROUTING -p tcp -s $внешний_адрес_1 --dport 80 -j DNAT --to-destanation $внешний_сервер_1:80
iptables -t nat -A PREROUTING -p tcp -s $внешний_адрес_2 --dport 80 -j DNAT --to-destanation $внешний_сервер_2:80

Ничего сложного ведь, да? Не верится, что на Циске это должно быть гораздо сложнее.


"cisco 2951 - проброс порта в зависимости от источника"
Отправлено sllamo , 27-Ноя-12 11:41 
>> мне кажется тут без nginx (или другого обратного прокси) не обойтись
> 80-ый порт для примера. Я про более общую задачу спрашивал. Вроде бы
> она не такая уж специфичная. На Линуксе, к примеру, это бы
> выглядело так:
> iptables -t nat -A PREROUTING -p tcp -s $внешний_адрес_1 --dport 80 -j
> DNAT --to-destanation $внешний_сервер_1:80
> iptables -t nat -A PREROUTING -p tcp -s $внешний_адрес_2 --dport 80 -j
> DNAT --to-destanation $внешний_сервер_2:80
> Ничего сложного ведь, да? Не верится, что на Циске это должно быть
> гораздо сложнее.

А если попробовать такую конструкцию (сам не тестил, просто в голову пришло):
ip nat inside source static tcp Local_IP 80 Global_IP 80 route-map TEST


ну и собственно в роут-мап запихать ACL с IP откуда идет запрос.