On 2006/08/27 15:23, Joachim Schipper wrote:
> >     pass in log on $ext_if inet proto tcp from any to ($ext_if) \
> >         port $tcp_services flags S/SA keep state
> 
> Also, the flags directive is redundant with scrub, unless I am mistaken.

Where you're using a standard PF setup using stateful filtering
you want `flags S/SA keep state' on _every_ tcp pass rule, or you can
end up with state sync'd to non-initial packets, causing problems
with OS using TCP window-scaling.

(PF checks that TCP sequence numbers are within reasonable bounds;
to know what bounds are OK, it needs to know what window-scaling
options were negotiated in the 3-way handshake; state created from
an existing connection [i.e. packet without SYN set] does not have
the information to determine this).

Reply via email to