Re: Действие DROP в nat/POSTROUTING и nat/PREROUTING
On Tue, Jul 29, 2008 at 03:53:10AM +0400, Alexander GQ Gerasiov wrote:
> На Tue, 29 Jul 2008 01:13:13 +0400
> Alexander Tyurin <alexanderyt@gmail.com> записано:
>
> > Приветствую!
> > Есть хост 192,168,1,20. Все последующие правила прописаны именно на
> > этом хосте.
> >
> > При правиле
> > iptables -A INPUT -p tcp -d 192.168.1.20 -j DROP
> > доступа к сетевым ресурсам нет. Логично.
> >
> > При
> > iptables -A OUTPUT -p tcp -s 192.168.1.20 -j DROP
> > нет доступа к ресурсм сети. Логично.
> >
> > При
> > iptables -t nat -A POSTROUTING -p tcp -s 192.168.1.20 -j DROP
> > доступа нет. Вот тут уже интересно т.к. не понятно почему.
> >
> > При
> > iptables -t nat -A PREROUTING -p tcp -d 192.168.1.20 -j DROP
> > а вот это правило не понятно почему не действует. Никаких проблем с
> > коннектом у хоста не возникает. Кто-нить может объяснить такую
> > разницу в поведении 2х последних правил?
> Читать iptables manual aka руководство по iptables на предмет того для
> каких пакетов какие цепочки из каких таблиц работают.
> По крайней мере описываемое поведение вполне логично.
Это, конечно, хорошо сразу ткнуть носом в мануалы, но хоть бы подсказали
человеку, в каком направлении копать.
В man странице, например, релевантен имхо только один абзац. И истинный
смысл его понятен с первого прочтения лишь просветленным:
nat:
This table is consulted when a packet that creates a new connection is encoun‐
tered. It consists of three built-ins: PREROUTING (for altering packets as
soon as they come in), OUTPUT (for altering locally-generated packets before
routing), and POSTROUTING (for altering packets as they are about to go out).
--
Stanislav
Reply to: