Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 Apr 2000 09:24:02 +0300
From:      "Ari Suutari" <ari@suutari.iki.fi>
To:        "Arun Sharma" <adsharma@sharmas.dhs.org>, <freebsd-net@FreeBSD.ORG>
Subject:   Re: kernel vs user level implementation of NAT
Message-ID:  <006401bf9d35$37bddb00$0e05a8c0@intranet.syncrontech.com>
References:  <20000331234156.A28140@sharmas.dhs.org>

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


> Can someone point me to some discussion or literature on why *BSDs chose
> to implement natd as a daemon as opposed to a kernel service ? I'm
> particularly interested in the performance (latency) aspects of the issue.
>

    The history goes something like this:

    Some years ago I had a cable modem connection at home. I had
    internal network with some hosts and a FreeBSD server machine
    (running 2.x if I remember correctly). I was looking for solutions how
    to get my internal machines to access internet with similar
    manner as ip masquerading in Linux (Couldn't use Linux, I'v
    always been fond of *BSD).

    Well, I found that Darren Reed's ipfilter didn't work with 2.x so
    that was out. Porting of it looked like too much effort at that time.

    Then I found out from somewhere that user mode ppp had
    nat features and took a look at it. Surprisingly all the functions
    necessary to do it were packaged to a few source files
    which I took into natd. These sources were written by Charles
    Mott and eventually ended into libalias library.

    There was also another similar program in the beginning,
    Brian Somer's masqd. I don't remeber any more why I decided
    to go along with natd - maybe both were at very early stage of
development
    and I just had more time to play with natd. Anyway, Brian also
    contributed to natd.

    What I found good about doing this in user process was the
    ease of debugging and testing of new versions.

        Ari S.




To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-net" in the body of the message




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?006401bf9d35$37bddb00$0e05a8c0>