Subject: Re: IP-in-TCP?
To: Gert Doering <gert@greenie.muc.de>
From: Seth Kurtzberg <seth@cql.com>
List: tech-net
Date: 02/02/2005 13:24:45
Gert Doering wrote:
>Hi,
>
>On Wed, Feb 02, 2005 at 09:40:30PM +1100, Daniel Carosone wrote:
>
>
>>On Wed, Feb 02, 2005 at 09:44:39AM +0100, Gert Doering wrote:
>>
>>
>>>TCP will not *really* save you here. If the idle period is long enough,
>>>and the NAT device is stupid enough, it might very well time out your
>>>TCP NAT table entry (without telling the endpoints, of course).
>>>
>>>
>>That's what TCP keepalives are for. NTP is handy (or annoying,
>>depending on your perspective) for keeping links non-idle, too.
>>
>>
>
>TCP keepalives are usually sent once per hour or so (did some googling:
>default on most unixes seems to be 2 hours), which is enough to clean
>up "dead" TCP connections, but usually not enough to keep open over-eager
>NAT routers.
>
>
That's just a default. Usually you can override the default with a
setsockopt call, or an ioctl call, depending on the O/S.
However, I've found in many cases that TCP keepalive is simply broken
(not in NetBSD, but broken anywhere along the path is broken for the
entire path).
>(This is the reason why, for example, OpenSSH contains a protocol-level
>keepalive mechanism, which sends packets much more frequently).
>
>gert
>
>
>
>