Добрый день!Есть два сервера:
№1 имеет IP адрес 193.125.50.201 и на нем работает почтовый сервер
№2 имеет IP адрес 193.125.50.204
Компы в локальной сети имеют адрес 192.168.х.хЗадача: сделать так, что бы при заходе из локальной сети на сервер №2 по 25-му порту, клиенты подключались к серверу №1. Правила iptables загружаются из файла.
Прописал следующее:-A PREROUTING -d 193.125.50.204 -p tcp -m tcp --dport 25 -j DNAT --to-destination 193.125.50.201:25
-A POSTROUTING -d 193.125.50.201 -p tcp -m tcp --dport 25 -j SNAT --to-source 193.125.50.204Вроде бы заработало, НО любой клиент, который подключается к серверу №2, определяется на сервере №1 как №2. Таким образом, настройка правил relay для клиентов по ip адресам становится невозможной. Как сделать так, что бы те, кто подключается на №2, оказывались на №1 но IP определялся клиента?
> Вроде бы заработало, НО любой клиент, который подключается к серверу №2, определяется
> на сервере №1 как №2. Таким образом, настройка правил relay для
> клиентов по ip адресам становится невозможной. Как сделать так, что бы
> те, кто подключается на №2, оказывались на №1 но IP определялся
> клиента?Убрать строку из POSTROUTING. Убедиться, что весь трафик от №1 к локальной сети следует через №2.
слишком много для телепатии оставил, но можно попробовать кашу из топора сварить:
- №2 делается как маршрутизатор между сетями 192.168.х.х и 193.125.50.20х
- клиенты должны подключаться по ip №1 через №2
- на №1 маршрутизация на сеть 192.168.х.х должна идти через №2
- твои правила iptables не нужны, максимум если ты хочешь только 25 порт заворачивать туда то можно давать метку каждому соединению на 25 порт и маршрутизировать пакеты только для соединений с меткой.но если ты всё же распишешь топологию своей сети (именно как связанны 192.168.х.х, №1 и №2 ) то может быть решение будет немного другим
Еще можно маркировать трафик, вошедший с интерфейса, и направлять ответы на тот же интерфейс. Но это уже из области более серьезного пилотажа.
>[оверквотинг удален]
> Прописал следующее:
> -A PREROUTING -d 193.125.50.204 -p tcp -m tcp --dport 25 -j DNAT
> --to-destination 193.125.50.201:25
> -A POSTROUTING -d 193.125.50.201 -p tcp -m tcp --dport 25 -j SNAT
> --to-source 193.125.50.204
> Вроде бы заработало, НО любой клиент, который подключается к серверу №2, определяется
> на сервере №1 как №2. Таким образом, настройка правил relay для
> клиентов по ip адресам становится невозможной. Как сделать так, что бы
> те, кто подключается на №2, оказывались на №1 но IP определялся
> клиента?Спасибо всем за ответы:)
Решили сделать из №2 маршрутизатор для №1.