The OpenNET Project / Index page

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

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

"Проблема с nat, iptables и пулом адресов"  
Сообщение от Иван (??) on 29-Янв-09, 16:44 
Всем доброе время суток. Столкнулся я с такой проблемой. Появилась необходимость сделать full-cone nat. Реализовать это взялся на ubuntu server.
2 интерфейса:
eth1 смотрит в мою локальную сеть адрес у него 192.168.10.17 mask 255.255.255.0
eth0 - образно выражаясь, наружу. Адрес - 10.254.0.2 mask 255.255.0.0
NAT получился, но full-cone там не пахнет. Ибо даже с проброшенными портами комп из сети с ip 192.168.10.10 c проброшенным "наружу" портом 26292 не цепляется к компу с ip 192.168.10.50 с портом 49642 (тоже проброшенным), например такой командой: telnet 10.254.0.2 49642
Но это все лирика. Нашел я такой выход: делаем NAT следующим образом:

iptables -t nat -A POSTROUTING -o eth0 -j SNAT --to-source 10.254.0.2-10.254.0.254

И при этом если я пингую 10.254.0.1 (есть такой хост в этой сетке), то пингуется он только с одной машины, с той, которая первая пытается, которой соответственно выдается натом адрес 10.254.0.2 а остальные могут увидеть только 10.254.0.2 Вероятно, я недодумал и надо было на интерфейсе как-то этот пул задать? Но единственный мне известный способ это сделать - назначить алиасов. Только что-то мне не верится, что этот способ действительно единственный. Вот и хочу посоветоваться, как решить эту проблему? И вообще, может есть какой-то способ сделать нат, чтобы при открытии нат-сессии можно было коннектиться на комп "извне" по тому ip, который он получил на роутере, в том числе, из этой же локальной сети, только "через наружу" (собственно, нужно реализовать как-то full-cone nat). Неделю уже гуглю на эту тему. Результатов нет. Прочитал, что есть такой таргет в iptables, как SAME, но обнаружил, что в моем ядре iptables его не поддерживает, хотя в man'e пишут, are included in the standard distribution

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

 Оглавление

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


1. "Проблема с nat, iptables и пулом адресов"  
Сообщение от Andrey Mitrofanov on 29-Янв-09, 17:15 
>- назначить алиасов. Только что-то мне не верится, что этот способ
>действительно единственный.

http:/openforum/vsluhforumID10/3679.html#3
Доказательство единственности требует Фселенского поиска. Успехов...

Свою AS регистрировать и роутить**3? Или я не про то?...

>чтобы при открытии нат-сессии можно было коннектиться на комп "извне"
>по тому ip, который он получил на роутере,

DHCP, раздающий "внешние" адреса, например? Если клиентов ещё надо "файерволить" от внешнего-провайдерского роутера - плюс мост-файервол... Если получится...

>в том числе, из этой же локальной сети, только "через наружу"

Ну... VPN-сервер с раздачей "внешних" адресов клиентам?

>(собственно, нужно реализовать как-то full-cone nat).

Подскажите, где такие красивые ярлыки раздают? Cisco, MS, Novell?... Очень любопытно, где так хорошо.

>Неделю уже гуглю на эту тему. Результатов нет.

И не возникло даже ощущения, что "что-то не так"? Например, iptables адреса не "раздаёт" клиентам, а использует [произвольно] для отдельных соединений.

>Прочитал, что есть такой таргет
>в iptables, как SAME, но обнаружил, что в моем ядре iptables
>его не поддерживает, хотя в man'e пишут, are included in the
>standard distribution

То, что написано в man iptables, то, что реализовано в утилите iptables, и то, что работает/собрано в отдельном ядре -- четыре %) большие  разницы. Да, даже в "пределах" одного релиза одного дистрибутива. "Бывает."(тм) Пятая б.р. - пачт-о-матик, шестая и далее -- рассказки в инете про все другие разные дистрибутивы.

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

2. "Проблема с nat, iptables и пулом адресов"  
Сообщение от Иван (??) on 29-Янв-09, 17:35 
>Свою AS регистрировать и роутить**3? Или я не про то?...

Не про то. Тут история такая. Сделали мы торрент-ретрекер от торрентс.ру. В нашей сети работает идеально, а вот объединиться с другими городскими провайдерами не получается. Ибо серые сети есть одинаковые. А менять адреса - целое дело. И никто на это не пойдет. Посему решили пускать каждого провайдера через такой nat-роутер. Только вот пока не получается.

>>чтобы при открытии нат-сессии можно было коннектиться на комп "извне"
>>по тому ip, который он получил на роутере,
>
>DHCP, раздающий "внешние" адреса, например? Если клиентов ещё надо "файерволить" от >внешнего-провайдерского
>роутера - плюс мост-файервол... Если получится...
>
>>в том числе, из этой же локальной сети, только "через наружу"
>
>Ну... VPN-сервер с раздачей "внешних" адресов клиентам?

Из рассказанного выше, я думаю уже понятно, что все это невозможно.
>>(собственно, нужно реализовать как-то full-cone nat).
>
>Подскажите, где такие красивые ярлыки раздают? Cisco, MS, Novell?... Очень любопытно, >где
>так хорошо.

http://www.samag.ru/art/01.2006/01.2006_08.html Вот здесь прочитал такое определение.

>iptables адреса
>не "раздаёт" клиентам, а использует [произвольно] для отдельных соединений.

Это я все знаю, прошу прощения, если неправильно выразился.

>То, что написано в man iptables, то, что реализовано в утилите iptables,
>и то, что работает/собрано в отдельном ядре -- четыре %) большие
> разницы. Да, даже в "пределах" одного релиза одного дистрибутива. "Бывает."(тм)
>Пятая б.р. - пачт-о-матик, шестая и далее -- рассказки в инете
>про все другие разные дистрибутивы.

Вот уже не знал...

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

3. "Проблема с пулом адресов"  
Сообщение от Andrey Mitrofanov on 29-Янв-09, 18:12 
>а вот объединиться с другими городскими провайдерами
>не получается. Ибо серые сети есть одинаковые. А менять адреса -
>целое дело. И никто на это не пойдет. Посему решили пускать
>каждого провайдера через такой nat-роутер. Только вот пока не получается.

http:/openforum/vsluhforumID10/3630.html
и прочие google.ru + "double nat" site:opennet.ru

Ещё бы "транслирующий" DNS -- так вообще отлично бы было. Для небольшого набора серверов, "выставляемых" в "чужие" сеть/пространство адресов, можно обойтись небольшим к-вом статических записей в своём DNS или вообще давать пользователям числовые ip...

>Из рассказанного выше, я думаю уже понятно, что все это невозможно.

Может быть. Я не "вчитывался", извините.

>>>(собственно, нужно реализовать как-то full-cone nat).
>>Подскажите, где такие красивые ярлыки раздают? Cisco, MS, Novell?..
>http://www.samag.ru/art/01.2006/01.2006_08.html Вот здесь прочитал такое определение.

""Используя терминологию Cisco, в контексте NAT есть четыре основных""...
Мне срашно - я угадал. :/ Ссылка на MS тоже присутствует.
(Впрочем, эту статью я видел, когда искал ярлык в гугле. Великое Бессознательное или таки телепаия? %-)) )

Я надеюсь, Вы заметите взаимосвясь между использованием вендор-специфичного линго и безуспешностью поисков свободного решения в интенете. ... Cool-Aid, промывание мозгов, vendor lock-in. "Попытка юмора", извините.

>>iptables адреса
>>не "раздаёт" клиентам, а использует [произвольно] для отдельных соединений.
>Это я все знаю, прошу прощения, если неправильно выразился.

Я собственно не про "выражения", а про суть: соединение клиента "наружу" с конкретного ip не имеет никакого отношения (в рассматриваемом контексте - nat-а средствами iptables) к [новым/другим] соединениям снаружи на этот ip (и/или к другим соединениям [других клиентов] наружу с этого же ip).

>>То, что написано в man iptables,
>>-- четыре %) большие разницы.
>Вот уже не знал...

Это не знание, собственно. Скорее личное ощущуние-впечатление. Возможно несколько отягощённое "неудачным" дистрибутивом, "левым" ядром, собсвенными ошибками-незнанием-некомпетентностью или ещё чем... :) YMMV, наверное

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

4. "Проблема с пулом адресов"  
Сообщение от Иван (??) on 29-Янв-09, 18:48 
>http:/openforum/vsluhforumID10/3630.html
>и прочие google.ru + "double nat" site:opennet.ru
>
>Ещё бы "транслирующий" DNS -- так вообще отлично бы было. Для небольшого
>набора серверов, "выставляемых" в "чужие" сеть/пространство адресов, можно обойтись >небольшим к-вом
>статических записей в своём DNS или вообще давать пользователям числовые ip...

Тут, собственно, одними днс-записями не обойтись. Ретрекер - он один и таблица подключенных пиров у него тоже одна. А одинаковых сетей много. И надо, чтобы они, получив с ретрекера информацию друг о друге еще и друг друга видели и траффиком обменивались, причем по тем ip, которые в базе ретрекера появляются. Поэтому и приходится копать в сторону ната. А адрес ретрекера они все получают у торрентс.ру, когда оттуда торрент-файл качают. А потом на этот же адрес за списком нынедоступных пиров лезут. Точнее, их торрент-клиенты лезут. А сами юзеры об этом даже не подозревают. И не должны. И единственный вариант - сделать такой вот хитрый нат. А за ссылку спасибо, сейчас почитаю.

>Я собственно не про "выражения", а про суть: соединение клиента "наружу" с
>конкретного ip не имеет никакого отношения (в рассматриваемом контексте - nat-а
>средствами iptables) к [новым/другим] соединениям снаружи на этот ip (и/или к
>другим соединениям [других клиентов] наружу с этого же ip).
>

А вот это как раз мне и нужно. Такой динамический маппинг адресов. Чтобы впн не делать. Ибо нельзя. Было бы у меня клиентов поменьше, руками бы статический нат прописал. Самое оно, только не для 10000 хостов, а то и 20000, которые в нашей пиринговой сети ожидаются, как только я это все реализую.

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

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

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




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

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