Civilizator 0 Posted 2004-09-03 20:33:35 Share Posted 2004-09-03 20:33:35 Вопрос. Не получается найти четкий ответ: При прохождении цепочек и таблиц, в каком месте выполняется автоматическое преобразование ответного трафика маскараженного/наченного трафика? То что сам маскарадинг/нат в конкретном месте, описанном много где, я знаю. Распишу подробнее, что бы біло понятно для чего мне это надо: В таблице mangle я маркирую пакеты ОТ внутрисетевых пользователей по направлениям. В частности Украина, Мир, локалка и прочее. После этого происходит НАТ. Тут все ясно. причем как для первого пакета потока, так и для прочих ИЗНУТРИ сети. Но ответный трафик ИЗВНЕ сети к пользователям "разначивается" автоматически. В каком месте цепочки прохождения это происходит? Если я в правиле в том же mangle напишу, что маркировать пакеты от УКРАИНЫ (реальные адреса) к пользователю внутри сети (локалка), то будет ли это работать? Link to post Share on other sites
POWERLan 0 Posted 2004-09-03 20:52:35 Share Posted 2004-09-03 20:52:35 На 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. Так можна зделать и на все сети... Эсли я правильно понял твой вопрос Link to post Share on other sites
Crocodylus 0 Posted 2004-09-04 09:03:09 Share Posted 2004-09-04 09:03:09 При прохождении цепочек и таблиц, в каком месте выполняется автоматическое преобразование ответного трафика маскараженного/наченного трафика? По идее обратное преобразование идет в nat prerouting, но похоже что если соединение находится в conntrack (ESTABLISHED, RELATED) то оно не проходит nat prerouting правила вообще. По крайней мере iptables -t nat -I PREROUTING -i eth0 -j LOG ничего не показывает. Link to post Share on other sites
Civilizator 0 Posted 2004-09-04 20:33:27 Author Share Posted 2004-09-04 20:33:27 По идее обратное преобразование идет в nat prerouting, но похоже что если соединение находится в conntrack (ESTABLISHED, RELATED) то оно не проходит nat prerouting правила вообще. По крайней мере iptables -t nat -I PREROUTING -i eth0 -j LOG ничего не показывает. Это да. Об этом кстати пишут во всех доках, что таблицу НАТ вообще только первый пакет потока/соединения проходит. Но остальные и ответные где-то же преобразуются. А где, непонятно. Меня собственно не столько интересует где именно, сколько то, в каких цепочках таблицы mangle метить пакеты, что бы при пометке эти пакеты были не заначены. Для прямого трафика, который натится в цепочке POSTROUTING все понятно, так как сам нат делается практически самым последним в цепочке прохождения пакетов, а вот в каком месте "разначивается" ответный трафик?.. Если рассуждать логически, то раз НАТ делается последним, то обратное действие должно делаться первым. Но похоже это не так. Хотя в результатах экспериментов я еще не разобрался, выглядит странновато... Link to post Share on other sites
Hash 0 Posted 2004-09-06 08:21:36 Share Posted 2004-09-06 08:21:36 а вот в каком месте "разначивается" ответный трафик?.. Если тебе нужно метить пакеты, которые должны разнатиться, то их можно выловить в цепочке 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 Link to post Share on other sites
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now