Re: Firewall Script Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Monday 08 March 2004 8:12 pm, David Cannings wrote:

> >     0     0 DROP       tcp  --  any    any     anywhere
> > anywhere           tcp flags:FIN,ACK/FIN
>
> As I understand it, this means "check the flags FIN and ACK, only match if
> FIN is set and ACK isn't".  This would match packets that only have the
> FIN flag set, which I am fairly sure are valid.  I may need correcting on
> this issue, however.

You are correct.

TCP connections start with:
packet 1: SYN (only) from the client
packet 2: SYN/ACK from the server
packet 3: ACK from the client
all further packets have the ACK flag set from both client and server

and then they end with
packet n-3: FIN (only) from the side which wants to stop talking
packet n-2: FIN/ACK from the other side
packet n-1: FIN (only) from the other side (to confirm it will stop talking 
too)
packet n: FIN/ACK from the side which ended the communication

(Although note that the final two packets are optional and often not seen, 
indeed often blocked by netfilter because by that time it thinks the 
connection is no longer ESTABLSIHED.)

Regards,

Antony.

-- 
What is this talk of "software release"?
Our software evolves and matures until it is capable of escape, leaving a 
bloody trail of designers and quality assurance people in its wake.

                                                     Please reply to the list;
                                                           please don't CC me.



[Index of Archives]     [Linux Netfilter Development]     [Linux Kernel Networking Development]     [Netem]     [Berkeley Packet Filter]     [Linux Kernel Development]     [Advanced Routing & Traffice Control]     [Bugtraq]

  Powered by Linux