Модераторы: powerfox, ZeeLax
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> iptables forward 
:(
    Опции темы
Goganchic
Дата 18.4.2007, 09:55 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



Вопрос такой: машина является NAT-ом, таким образом на нее сливаются все пакеты которые предназначены для другой сети. Как сделать так, чтобы пакеты, предназначенные не этой машине форвардились дальше? Надо сделать чтобы это было на все порты, причем если пакет попадает под определенное правило (тоже порт), то он остается на данной машине (нужно для каких-либо проверок, например начальство хочет видеть все разговоры пользователей по ICQ и т.п., естественно пользователи об этом осведомлены и дают свое согласие).
Подоволя итог, надо чтобы в общем случае пакеты посылались дальше в сеть, а в частных случаях оставлялись на данной машине.
Для частного случая команда для iptables выглядит так:
Код

iptables -t nat -A PREROUTING -s 0/0 -p tcp -d 0/0 --dport 123 -j DNAT --to-destination 1.1.1.1

где 123 - номер порта, а 1.1.1.1 - IP текущей машины (NAT'а)
Как сделать правило по-умолчанию для форвардинга всего дальше в сеть?
PM Jabber   Вверх
bilbobagginz
Дата 18.4.2007, 10:35 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 34
Всего: 317



если я вас правильно понял вы хотите всего лишь сделать это:
echo "1" >> /proc/sys/net/ipv4/ip_forward

когда ваш машина поднимается.
Часто в дистрибутивах есть для этого уже скриптик, а включают его либо установив какую-то переменную в /etc/sysconfig/ ( и грепнув на forward: grep -i forward ... )
либо если система основана на Дебиан - /etc/default/ и грепнув в том же духе.

если что-то непонятно... дайте больше данных о вашей системе, и возьмите это за правило. 


--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
Goganchic
Дата 18.4.2007, 11:01 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



Цитата(bilbobagginz @  18.4.2007,  10:35 Найти цитируемый пост)
echo "1" >> /proc/sys/net/ipv4/ip_forward

Спасибо, помогло. И еще такой вопрос: не будут ли пакеты, которые мы забираем себе в user space с помощью iptables форвардиться дальше в сеть?
Машина - Debian 4.0
Еще нужны данные о машине?
PM Jabber   Вверх
bilbobagginz
Дата 18.4.2007, 15:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 34
Всего: 317



для того, чтобы это:
Код

echo "1" >> /proc/sys/net/ipv4/ip_forward

не делать самому каждый ребут, нужно редактировать файл /etc/network/options и добавить в него строку:
Код

ip_forward=yes


тогда система сама будет это делать автоматически ( при запуске системного скрипта /etc/init.d/networking )

Цитата

И еще такой вопрос: не будут ли пакеты, которые мы забираем себе в user space с помощью iptables форвардиться дальше в сеть?

не понимаю вопрос... можно пример ?




--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
Goganchic
Дата 18.4.2007, 21:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



предположим что машина 1 имеет ip 1.2.3.4. У машины 2 1.2.3.5 машина 1 установлена в качестве default gateway. Машина 2 устанавливает tcp сессию с машиной 3 с ip адресом 1.2.4.1 и посылает все пакеты через машину 1. На машине 1 мы вынимаем сессию в user space с помощью соответствующего правила в iptables. С другой стороны на машине 2 установлен ip forwarding. Вопрос в том получит ли машина 2 только копии пакетов от машины 1 к машине 3 или же сессия будет только на машине 2 и дальше в сеть не пойдет?
PM Jabber   Вверх
bilbobagginz
Дата 19.4.2007, 00:30 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 34
Всего: 317



если вопрос: можно ли отражать все сообщения проходящие между 2 и 3 в обоих направлениях и обрабатывать их, без эффекта на коммуникацию между 2 и 3, то ответ - ДА.
если вопрос обратный - буду ли они отражаться автоматически, - то ответ зависит от оборудования сети:
если связь между 1,2,3 - на концентраторе (hub) - то все узлы локальной сети видят ВСЕ СООБЩЕНИЯ.
если на коммутаторе (switch), то обычно - НЕТ, если не включен особый режим.
если связь - беспроводная, то сообщения слышат/видят не только узлы данной локальной сети, но и все узлы способные принимать передачу на канале данной сети.

не понимаю к чему были слова "юзер спейс", "вынимаем сессию", "копии пакетов" и т.д.



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
ZeeLax
Дата 19.4.2007, 05:02 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
****


Профиль
Группа: Модератор
Сообщений: 4388
Регистрация: 20.8.2006
Где: Алма-Ата

Репутация: 7
Всего: 88



Цитата(Goganchic @  19.4.2007,  00:36 Найти цитируемый пост)
в качестве default gateway

в качестве маршрутизатора по умолчанию.

Цитата(Goganchic @  19.4.2007,  00:36 Найти цитируемый пост)
На машине 1 мы вынимаем сессию в user space с помощью соответствующего правила в iptables

Какого это такого правила?
Вам к Таненбауму надо сходить.


--------------------
Utility is when you have one telephone, luxury is when you have two, opulence is when you have three — and paradise is when you have none.
— Doug Larson
PM MAIL WWW ICQ Skype Jabber   Вверх
bilbobagginz
Дата 19.4.2007, 09:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Naughtius Maximus
****


Профиль
Группа: Экс. модератор
Сообщений: 8813
Регистрация: 2.3.2004
Где: Israel

Репутация: 34
Всего: 317



Цитата(ZeeLax)

Вам к Таненбауму надо сходить. 

Подписываюсь Под Каждым Словом.



--------------------
Я ещё не демон. Я только учусь.
PM WWW   Вверх
Goganchic
Дата 19.4.2007, 14:04 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Опытный
**


Профиль
Группа: Участник
Сообщений: 678
Регистрация: 18.6.2004

Репутация: нет
Всего: 5



в общем, вопрос решен
PM Jabber   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Linux/UNIX: Администрирование"
ZeeLax
Imple
nerezus
Этот форум предназначен для решения вопросов по администрации *n?x-систем, в частности по настройке сложных сетей и обслуживанию серверного оборудования.

  • Вы должны соблюдать правила форума.
  • Помните: какой вопрос, такой и ответ. Прежде чем задать вопрос прочитайте вот эту статью на форуме CIT.
  • Оскорблять запрещается.
  • Религиозные войны в Религиозных войнах.
  • Общение "просто так" в Клубе юнуксоидов. В отличие от многих других разделов, здесь разрешается сдержанно оффтопить и юморить в тему.

За интересные статьи, находки, решения, программы и просто реальную помощь будут ставиться + в репу).


В данный момент этот раздел модерируют nerezus, nickless, powerfox, pythonwin, Imple и ZeeLax. Если вы хотите помочь нам, пишите в ПМ и мы обсудим.


Спасибо. И use UNIX or die; С уважением, nerezus, nickless, powerfox, pythonwin, Imple, ZeeLax.

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Администрирование *NIX систем | Следующая тема »


 




[ Время генерации скрипта: 0.0552 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.