Connections not purged on address deletion

Robert Watson rwatson at FreeBSD.org
Sun Feb 6 06:43:08 UTC 2011


On Fri, 4 Feb 2011, Prabhu Hariharan wrote:

> When I delete an IP-address from an interface, the TCP (and other) 
> connections using that local IP-address are not getting purged.  The telnet 
> or ssh sessions on the other end just get hung, as FreeBSD address-deletion 
> doesn't handle this situation and fails to call pfctlinput() to notify 
> protocols on this event.  The TCP connections simply linger in the system 
> and takes it due course on TCP timers to free those inpcbs.
>
> tcp4 0 0 30.30.30.31.22 30.30.30.30.58796 ESTABLISHED
>
> Is this by design?  Or any significance on relying on applications 
> intelligently to do timeouts, without a notification from network layer?

I don't know if it's by design per se, but it proves extremely handy in 
practice when 802.11 blips and DHCP goes funny.  Or, perhaps more 
historically, when PPP was restarted, leading to addresses being removed and 
re-added.

Robert


More information about the freebsd-net mailing list