The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

форумы  помощь  поиск  регистрация  майллист  вход/выход  слежка  RSS
"Доступ к локальным заNATовым серверам c разных внешних IP"
Вариант для распечатки  
Пред. тема | След. тема 
Форумы OpenNET: Виртуальная конференция (Public)
Изначальное сообщение [ Отслеживать ]

"Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 29-Май-09, 17:20 
Доброго всем настроения!!!
(Я нуб в юниксах, прошу сильно ногами не пинать...)

Вот дома изучаю юникс системы. Поставил себе Fedora 10 как домашний роутер для двух провайдеров.

И вот задача: Попадать на домашнии компы(сервера)  из инета. Причём используя разных провайдеров(по желанию).


для упращения понимания.


надо тебе на сервер в локалке попасть по RDP(3389)  для управления или по SSH(22)


У тебя есть роутер с двумя инетами.  


.           .         .        .           .         .         .      eth1-------------------------   88.88.88.88
.           .         .        .           .         .         .      /
RDP(или SHH)(192.168.0.1)--eth0- NAT (default gw 88.88.88.88)
.           .         .        .           .         .         .      \
.           .         .        .           .         .         .      eth2-------------------------   77.77.77.77

Ты присоеденишься только на 88.88.88.88
Как сделать возможным присоединения к внутреннему серверу через 77.77.77.77 без смены default gw  на роутере?

Порт форвардинг делаю так:

-A PREROUTING -i eth1 -p tcp --dport 22 -j DNAT --to-destination 192.168.0.1:22

Этого хватает   только для связи с одного ИП через eth1(88.88.88.88) Собственно на него гейт и прописан.

добавляю для второго инет-интерфейса  eth2(77.77.77.77)

-A PREROUTING -i eth2 -p tcp --dport 22 -j DNAT --to-destination 192.168.0.1:22

но на 77.77.77.77  попасть не могу. Ибо  запрос проходит ко мне в сеть. А ответ уходит через default gw eth1(88.88.88.88).
Соответственно соединение не устанавливается....

как с этим быть ума не приложу.

Как и с помощью чего должна быть построена маршрутизация  чтобы эта схема заработала???

Высказать мнение | Ответить | Правка | Cообщить модератору

 Оглавление

Сообщения по теме [Сортировка по времени | RSS]


1. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от reader (ok) on 29-Май-09, 20:56 
>[оверквотинг удален]
>
>
>но на 77.77.77.77  попасть не могу. Ибо  запрос проходит ко
>мне в сеть. А ответ уходит через default gw eth1(88.88.88.88).
>Соответственно соединение не устанавливается....
>
>как с этим быть ума не приложу.
>
>Как и с помощью чего должна быть построена маршрутизация  чтобы эта
>схема заработала???

поиск по "два провайдера"
http://www.opennet.me/tips/info/1179.shtml
http://www.osp.ru/lan/2002/05/136078/

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

2. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 29-Май-09, 22:50 
>[оверквотинг удален]
>>Соответственно соединение не устанавливается....
>>
>>как с этим быть ума не приложу.
>>
>>Как и с помощью чего должна быть построена маршрутизация  чтобы эта
>>схема заработала???
>
>поиск по "два провайдера"
>http://www.opennet.me/tips/info/1179.shtml
>http://www.osp.ru/lan/2002/05/136078/

Задача не такая тривиальная!!!  Вопрос не в том как в инет выйти через двух провайдеров. А как достучаться до сервера спрятанного за натом в своей локалке из инета. Причем не только достучаться, а иметь возможность попасть на него и через ip 77.77.77.77 и через 88.88.88.88 одновременно!!!

в статьях не то. в коментах кто-то сказал, что решил подобное с помощью connmark - а что это такое и как он решил - ничего не написана. Может он имел ввиду conntrack?


Ещё раз попробую описать что происходит:


путь первого пакета с запросом.


Интернет---eth2 роутера ---- eth0 роутера ----  компьютер на который ремапен пакет (формируется ответ и отсылается в ответ) ----  eth0 роутера  ----- eth1 роутера--- интернет

И тот кто посылал запрос  на ip 77.77.77.77  получает ответ от 88.88.88.88   Соответственно этот ответ дропается - ибо у 88.88.88.88  мы ничего не спрашивали. А 77.77.77.77  нам так и не ответил   - TIME OUT !!!!!!


Конечно мы на роутере можем сменить default gw 88.88.88.88  на 77.77.77.77   И связь установиться.

Но тогда 88.88.88.88 не сможем устанавливать связь


********************************************
из моих теоретических бредней.

на роутере записывать в одну строку: "IP пославший запрос, порт назначения  и интерфейс на который поступил запрос".

и при обратном получении из локальной сети пакета  с адресом и портом назначения идентичным с адресом и портом в строке роутить через интерфейс указанный в этой же строке в этой строке.

Ну и контролировать статус соединения. Как упало - строку удалить до следующего запроса.

***********************************************

Вот только как это реализовать - ума не приложу....

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

3. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от reader (ok) on 30-Май-09, 01:09 
смысл в том, что серваку внутри сети дать два IP из разных подсетей и пробрасывать соответственно входящие на 77.77.77.77 на один адрес, а входящие на 88.88.88.88 на другой, а потом ответы на основе ip источника разрулить по разным таблицам, со своим шлюзом у каждой.

можно конечно и позамороченей придумать, а возможно есть что и попроще

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

4. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 30-Май-09, 01:26 
>смысл в том, что серваку внутри сети дать два IP из разных
>подсетей и пробрасывать соответственно входящие на 77.77.77.77 на один адрес, а
>входящие на 88.88.88.88 на другой, а потом ответы на основе ip
>источника разрулить по разным таблицам, со своим шлюзом у каждой.
>
>можно конечно и позамороченей придумать, а возможно есть что и попроще

Хорошее предложение. !Но хочется позаморачеваться. +5


1)А предположим что серверов за натом 200 штук и меняються как перчатки. И каждый раз алисы на них поднимать или втыкать и настраивать сетивухи - не прикольно.

2)А если у меня будет не два провайдера, а 3 (как планирую)  или вообще 6-10? 10 алесов на одну машину?

Хочется более универсального решения которое можно было применять. И очень желательно чтобы все действия осуществлялись исключительно на роутере.

Если есть соображения какие нибудь - хотя бы скажите в каком направлении копать...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

5. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от Vladimir (??) on 30-Май-09, 05:52 
>[оверквотинг удален]
>сетивухи - не прикольно.
>
>2)А если у меня будет не два провайдера, а 3 (как планирую)
> или вообще 6-10? 10 алесов на одну машину?
>
>Хочется более универсального решения которое можно было применять. И очень желательно чтобы
>все действия осуществлялись исключительно на роутере.
>
>Если есть соображения какие нибудь - хотя бы скажите в каком направлении
>копать...

http://www.openvpn.org

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

9. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от angra (ok) on 31-Май-09, 09:06 
>Задача не такая тривиальная!!!  

Да неужто?
>Вопрос не в том как в инет
>выйти через двух провайдеров. А как достучаться до сервера спрятанного за
>натом в своей локалке из инета. Причем не только достучаться, а
>иметь возможность попасть на него и через ip 77.77.77.77 и через
>88.88.88.88 одновременно!!!

Нет, главный вопрос в том, как сделать чтобы соединения пришедшие с одного интерфейса уходили через  него же. И этот вопрос рассматривается первым в статьях про "два провайдера" и решается элементарно. Но вы конечно у нас особый, для вас надо индивидуально написать.

>в статьях не то. в коментах кто-то сказал, что решил подобное с
>помощью connmark - а что это такое и как он решил
>- ничего не написана. Может он имел ввиду conntrack?

А поискать в man iptables или хотя бы в гугле по слову connmark вы конечно не догадались.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

10. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 31-Май-09, 16:57 
>>Задача не такая тривиальная!!!  
>
>Нет, главный вопрос в том, как сделать чтобы соединения пришедшие с одного
>интерфейса уходили через  него же. И этот вопрос рассматривается первым
>в статьях про "два провайдера" и решается элементарно. Но вы конечно
>у нас особый, для вас надо индивидуально написать.
>

Ещё раз внимательно прочтите условия!!!!

""в статьях про "два провайдера"  решается элементарно""  
Ничего там не решается!

Там описывается ВЫХОД!!!!

а мне нужен ВХОД!!!!

ВХОД на разные интерфейсы которые приведут к одному и тому же серверу расположенному за натом!!

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

11. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от angra (ok) on 31-Май-09, 20:42 
Может вместо восклицательных знаков и капса вы все-таки вдумчиво прочитаете мой предыдущий ответ? Если не поможет с первого, попробуйте еще несколько раз. При прочих равных абсолютно фиолетово через какой канал уйдут _исходящие_ соединения. И первая, она же наиболее частая, задача как раз правильно отправить ответы на _входящие_ соединения. И начиная с lartc эта задача подробно разбирается. Может вы конечно какие-то неправильные руководства читали, ну тогда направлю на путь истинный: http://www.opennet.me/docs/RUS/LARTC/
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

12. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 02-Июн-09, 00:01 
>Может вместо восклицательных знаков и капса вы все-таки вдумчиво прочитаете мой предыдущий
>ответ? Если не поможет с первого, попробуйте еще несколько раз. При
>прочих равных абсолютно фиолетово через какой канал уйдут _исходящие_ соединения. И
>первая, она же наиболее частая, задача как раз правильно отправить ответы
>на _входящие_ соединения. И начиная с lartc эта задача подробно разбирается.
>Может вы конечно какие-то неправильные руководства читали, ну тогда направлю на
>путь истинный: http://www.opennet.me/docs/RUS/LARTC/

Огромное вам спасибо!!!  Нарвался на решение проблемы в гугле по зпросу о двух провайдерах. 95% тем и вариантов были неправильные. Спасла тема где описывался процесс с помощью CONNMARK.

З.Ы."При прочих равных абсолютно фиолетово через какой канал уйдут _исходящие_ соединения" я разве утверждал обратное?

З.Ы.Ы. В lartc не нашел правильного решения моей задачи. Может есть ещё способ кроме как с CONNMARK ?  Тыкните пальцем  мне пальцем пожалуйста ибо "4.2. Маршрутизация через несколько каналов/провайдеров."в lartc  заботиться только о исходящих и нет контроля над исходящими.

З.Ы.Ы.Ы.  И ещё раз Вам спасибо за проявленное внимание!   Продолжаю поиски других вариантов решения данного вопроса.Например с помощью тунелий или ещё как нить..

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

13. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от angra (ok) on 02-Июн-09, 01:25 
>заботиться только о исходящих и нет контроля над исходящими.

Объясните мне смысл этой фразы.

В lartc 4.2.1 как раз описывает нужный вам случай, обратите внимание, что там даже про NAT упоминается. Однако, если по каким либо причинам не получается, то работа через connmark вполне кошерный вариант при умеренной нагрузке. В конце, концов его ведь для подобного и придумали :)

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

14. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 02-Июн-09, 05:10 
>>заботиться только о исходящих и нет контроля над исходящими.
>
>Объясните мне смысл этой фразы.
>
>В lartc 4.2.1 как раз описывает нужный вам случай, обратите внимание, что
>там даже про NAT упоминается. Однако, если по каким либо причинам
>не получается, то работа через connmark вполне кошерный вариант при умеренной
>нагрузке. В конце, концов его ведь для подобного и придумали :)
>

В lartc 4.2.1  Не катит.

Запрос из инета   -- первый интерфейс роутер  --  WWW сервер


ответ от WWW сервера --- роутер (С КАКОГО ИНТЕРФЕЙСА ОТВЕЧАТЬ???) ---  инет


Соответственно роутер решает эту задачу таблицей маршрутов. В lartc 4.2.1 есть пути до сетей провайдеров и дефаулт роут.  Соответственно при разрешении маршрута к адресу которого нет в сети провайдера, он кинет ответ по дефаултному маршруту. А если запрос пришел не на дефаултный интерфейс?   Собственно эту проблему решил через connmark. Применение которого в lartc  не описано.

Вопрос- есть где lartc  по новее? и желательно на русском.... Конечно я о многом мечтаю. Но и руководство по Iptables  новому тоже неплохо на русском заполучить...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

16. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от reader (ok) on 02-Июн-09, 08:51 
Вот вы уперлись, что в статьях решается как выпустить клиентов через 2 канала, а у вас входящее соединение, но на самом деле в статьях описываются способы выдергивания определенных пакетов ( не важно на установку соединения они идут или это ответы на пришедшие запросы ) и пропихивание их через определенный провайдерский шлюз.

Что есть у вас. Пакеты приходят, вы в них меняете адрес назначения и пакет идет дальше согласно таблицы маршрутизации и я так понимаю с этим проблем у вас нет. Дальше начинают из локалки приходить ответы и так как маршрутов в таблице маршрутизации к этим адресам нет, то пакеты уходят через дефаултный шлюз. То есть нужно отловить ответы и отправить их через необходимый шлюз, в вашем случае через тот, через который пришел пакет на который и идет ответ. Именно то что и рассматривается в этих статьях. И как их отлавливать? Очевидно что нужно как то маркировать входящие пакеты, но так что бы пакет ушел с машины был обработан на другой и в пришедшем ответе эту метку можно было бы найти. Я предложил как метку использовать разные адреса, хотя можно было бы использовать номера портов.

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

Как всегда правильно сформулированный вопрос содержит в себе часть ответа.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

6. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от Pahanivo (??) on 30-Май-09, 10:38 
>(Я нуб в юниксах, прошу сильно ногами не пинать...)
>
>Вот дома изучаю юникс системы. Поставил себе Fedora 10 как домашний роутер
>для двух провайдеров.

федора это юникс? ))
дальше даже читать не стал )))

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

7. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от bill (??) on 30-Май-09, 16:43 
>федора это юникс? ))
>дальше даже читать не стал )))

Ха-ха. Фрибсдэшники фанатичные набежали?

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

8. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от reader (ok) on 30-Май-09, 16:54 
были указаны условия, под них и ответ, будут другие условия - будут и другие решения.
при одном внутреннем сервере vpn может и не разумно делать, а при 200-х неразумным станет проброс.
как что читайте о сетевых технологиях и исходя из условий и нюансов выбирайте подходящий для вас.
Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

15. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 02-Июн-09, 05:12 
>>(Я нуб в юниксах, прошу сильно ногами не пинать...)
>>
>>Вот дома изучаю юникс системы. Поставил себе Fedora 10 как домашний роутер
>>для двух провайдеров.
>
>федора это юникс? ))
>дальше даже читать не стал )))

Ну говорю  -  учусь ещё "Ж" от "П" не отличаю....   Вы бы рассказал чем отличается юниксы от линуксов и от БСД  или как там...

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

17. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от angra (ok) on 02-Июн-09, 12:48 
>Вы бы рассказал чем отличается юниксы от линуксов и от БСД  или как там...

Неужто в вики всего этого нету?
Если кратко то вопрос разбивается на две части: де-юре и де-факто
Де-юре есть торговая марка Unix(ЕМНИП сейчас принадлежит novell) и есть сертификация unix. Ряд unix-подобных систем ее прошли, например macosx, другие на нее забили, например дистры linux. Те кто не прошли, не могут себя называть unix системами.
Де-факто есть стандарт POSIX, описывающий набор системных вызовов, стандартных утилит и других особенностей, которыми должны обладать ОС. Все unix-like системы ему более-менее соответствуют, но также имеют ряд расширений, которые и различают их между собой. Линукс на данный момент имеет наибольшее количество дополнительных возможностей.

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

18. "Доступ к локальным заNATовым серверам c разных внешних IP"  +/
Сообщение от COPOKA (ok) on 05-Июн-09, 04:11 
>[оверквотинг удален]
>Неужто в вики всего этого нету?
>Если кратко то вопрос разбивается на две части: де-юре и де-факто
>Де-юре есть торговая марка Unix(ЕМНИП сейчас принадлежит novell) и есть сертификация unix.
>Ряд unix-подобных систем ее прошли, например macosx, другие на нее забили,
>например дистры linux. Те кто не прошли, не могут себя называть
>unix системами.
>Де-факто есть стандарт POSIX, описывающий набор системных вызовов, стандартных утилит и других
>особенностей, которыми должны обладать ОС. Все unix-like системы ему более-менее соответствуют,
>но также имеют ряд расширений, которые и различают их между собой.
>Линукс на данный момент имеет наибольшее количество дополнительных возможностей.

Не в тему..но чем BSD от Linux  отличаются?  

Высказать мнение | Ответить | Правка | Наверх | Cообщить модератору

Архив | Удалить

Индекс форумов | Темы | Пред. тема | След. тема
Оцените тред (1=ужас, 5=супер)? [ 1 | 2 | 3 | 4 | 5 ] [Рекомендовать для помещения в FAQ]




Партнёры:
PostgresPro
Inferno Solutions
Hosting by Hoster.ru
Хостинг:

Закладки на сайте
Проследить за страницей
Created 1996-2024 by Maxim Chirkov
Добавить, Поддержать, Вебмастеру