Перейти до

IPTABLES - вопрос знатокам


Рекомендованные сообщения

Вопрос. Не получается найти четкий ответ:

 

При прохождении цепочек и таблиц, в каком месте выполняется автоматическое преобразование ответного трафика маскараженного/наченного трафика?

 

То что сам маскарадинг/нат в конкретном месте, описанном много где, я знаю.

 

Распишу подробнее, что бы біло понятно для чего мне это надо:

 

В таблице mangle я маркирую пакеты ОТ внутрисетевых пользователей по направлениям. В частности Украина, Мир, локалка и прочее. После этого происходит НАТ. Тут все ясно. причем как для первого пакета потока, так и для прочих ИЗНУТРИ сети. Но ответный трафик ИЗВНЕ сети к пользователям "разначивается" автоматически. В каком месте цепочки прохождения это происходит? Если я в правиле в том же mangle напишу, что маркировать пакеты от УКРАИНЫ (реальные адреса) к пользователю внутри сети (локалка), то будет ли это работать?

Ссылка на сообщение
Поделиться на других сайтах

На FreeBSD

Фаервол так и делает

типа

ipfw add allow all from 192.168.0.1 to 10.10.11.0/24 via ed0

ipfw add allow all from 10.10.11.0/24 to 192.168.0.1 via ed0

вот так трафик идёт туды и возвращаетса, пример просто на сетку 10.10.11.0/24.

Так можна зделать и на все сети...

Эсли я правильно понял твой вопрос

Ссылка на сообщение
Поделиться на других сайтах
При прохождении цепочек и таблиц, в каком месте выполняется автоматическое преобразование ответного трафика маскараженного/наченного трафика?

По идее обратное преобразование идет в nat prerouting, но похоже что если соединение находится в conntrack (ESTABLISHED, RELATED) то оно не проходит nat prerouting правила вообще. По крайней мере iptables -t nat -I PREROUTING -i eth0 -j LOG ничего не показывает.

Ссылка на сообщение
Поделиться на других сайтах
По идее обратное преобразование идет в nat prerouting, но похоже что если соединение находится в conntrack (ESTABLISHED, RELATED) то оно не проходит nat prerouting правила вообще. По крайней мере iptables -t nat -I PREROUTING -i eth0 -j LOG ничего не показывает.

Это да. Об этом кстати пишут во всех доках, что таблицу НАТ вообще только первый пакет потока/соединения проходит. Но остальные и ответные где-то же преобразуются. А где, непонятно. Меня собственно не столько интересует где именно, сколько то, в каких цепочках таблицы mangle метить пакеты, что бы при пометке эти пакеты были не заначены. Для прямого трафика, который натится в цепочке POSTROUTING все понятно, так как сам нат делается практически самым последним в цепочке прохождения пакетов, а вот в каком месте "разначивается" ответный трафик?.. :)

 

Если рассуждать логически, то раз НАТ делается последним, то обратное действие должно делаться первым. Но похоже это не так. Хотя в результатах экспериментов я еще не разобрался, выглядит странновато...

Ссылка на сообщение
Поделиться на других сайтах
а вот в каком месте "разначивается" ответный трафик?..
Если тебе нужно метить пакеты, которые должны разнатиться, то их можно выловить в цепочке FORWARD таблицы mangle. т.е. следующие рулесы

iptables -t mangle -A FORWARD -s наш_ип -j LOG
iptables -t mangle -A FORWARD -d наш_ип -j LOG

будут логировать все пакеты, для соединения, которому ты сделал NAT.

 

Для более глубокого пониматия ситуации рекомендую почитать http://www.netfilter.org/documentation/HOWTO//NAT-HOWTO.txt

Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Вхід

Уже зарегистрированы? Войдите здесь.

Войти сейчас
  • Зараз на сторінці   0 користувачів

    Немає користувачів, що переглядають цю сторінку.

×
×
  • Створити нове...