|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Sergey A. Yakovets 2:5004/75.5088 14 Oct 2005 22:56:48 To : All Subject : Извращенный роутинг + NAT --------------------------------------------------------------------------------
Ситуация следующая:
1-1) Имеется внешний канал ADSL со статическим внешним адресом (rl1).
2-1) Через этот внешний канал устанавливается IPIP туннель до спутникового
провайдера PlanetSky. Мой адрес в туннеле 192.168.100.59, адрес сервера в
туннеле 192.168.100.58
3-1) Есть статический маршрут на сервер спутникового провайдера (реальный
адрес 82.211.136.5 другого конца туннеля) через наземный шлюз.
4-1) После поднятия туннеля маршрут по умолчанию ставится на 192.168.100.58
5-1) Hа интерфейсе туннеля tun0 висит NAT который натит локалку с fxp0 - еще
одного интерфейса на шлюзе.
Все работает, юзеры из локалки ходят в инет, запросы от них отправляются на
шлюз по умолчанию в туннель, а приходят со спутника (rl0).
Теперь собственно проблема:
1-2) Имеется почтовый сервер, стоящий в локалке на адресе 192.168.0.4
2-2) Hа интерфейсе по земле (rl1) запускается NAT, который осуществляет
проброску порта 25 с внешнего реального адреса шлюза на почтовый сервер в
локалке.
3-2) Почтовый сервер в локалке получает пакеты и шлет на fxp0, т.к. для него
он шлюз по умолчанию.
4-2) Сам шлюз видит, что пакет идет наружу и согласно п.4-1 направляет его в
tun0, где он благополучно дивертится сначала в 192.168.100.59, а потом и в
реальный адрес севрера спутникового провайдера, от имени которого он и приходит
на тот почтовик, который пытался установить соединение с моим внешним реальным
адресом.
5-2) В итоге - почта не приходит.
Что пробовали:
1) Если прописать статический маршрут с шлюзом по земле на какой либо
внешний почтовый адрес, который пытается отправить мне почту, все работает.
2) HО нельзя же приписать статические маршуры на всевозможные почтовые
сервера, которые отправляют\будут отправлять мне почту.
http://peoplez.net.ru/documentation/freebsd_skystar/
Здесь была описана подобная ситуация, но у человека почтовик стоит на том же
шлюзе, где все это работает, а у меня разница в том, что почтовик стоит в
локалке и порт на него пробрасывается.
Т.е. задача состоит в том, что нужно все пакеты, которые приходят снаружи по
земле на почтовый сервер в локалке, отправлять не через шлюз по умолчанию
(туннель), а тоже по земле.
Все вышеописанное работает (и не работает) с таким конфигом:
ipfw add 10 divert 8888 ip from any to $ext_ip dst-port 25 via rl1
ipfw add 30 divert 8668 ip from any to any via rl0
ipfw add 40 divert 8668 ip from any to any via tun0
ipfw add 50 allow ip from 192.168.100.59 to any via tun0
ipfw add 1000 allow ip from any to any
Таблица роутинга:
default 192.168.100.58 UGS 0 8453 tun0
...
192.168.100.58 192.168.100.59 UH 1 0 tun0
Как реализовать такую схему?
C уважением, Sergey A. Yakovets.
E-mail: for-transit@yandex.ru ICQ UIN: 165641526
... FaqServer 2:5088/50.50 Subj: %HELP %LIST
* Origin: "Емельянов" - это не фамилия, а диагноз... (2:5004/75.5088)
Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/4723434fee22.html, оценка из 5, голосов 10
|