Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 6 Feb 2011 06:43:07 +0000 (GMT)
From:      Robert Watson <rwatson@FreeBSD.org>
To:        Prabhu Hariharan <prabhuh@gmail.com>
Cc:        freebsd-net@freebsd.org
Subject:   Re: Connections not purged on address deletion
Message-ID:  <alpine.BSF.2.00.1102060641580.5437@fledge.watson.org>
In-Reply-To: <AANLkTimKvMUrT-yh6aRnvdeex0V0dNepc6yz0HvyQMe-@mail.gmail.com>
References:  <AANLkTimKvMUrT-yh6aRnvdeex0V0dNepc6yz0HvyQMe-@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help

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



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?alpine.BSF.2.00.1102060641580.5437>