Subject: Re: IP Tunneling I think ?
To: Michael C. Richardson <mcr@sandelman.ottawa.on.ca>
From: Andrew Brown <twofsonet@graffiti.com>
List: tech-net
Date: 01/25/1999 23:02:30
On Mon, Jan 25, 1999 at 08:49:53PM -0500, Michael C. Richardson wrote:
>...
>  PPTP essentially creates tunnel for the PPP layer packets on top of
>IP.

actually...i think it's more like

ppp{ip{pptp{ip}}}

1) since ppp is your link layer between you and your provider...
2) ip gets the pptp packets (ip protocol number 47) from the pptp
client to the pns (pptp network server :)...
3) and it encapsulates ip datagrams that are (optionally) encrypted.

ppp here can, of course, be replaced by anything that will get ip
packets from one to another (eg, ethernet as i saw at work).

this could probably be easily accomplished by

1) pppd dialing in and establishing a ppp connection...
2) pptpd (a rose by any other name) connecting to a pns and
negotiating a pptp tunnel with two endpoints and ifconfiging tun0...
3) pptpd then deleting any default route installed by pppd, replacing
it with a route that says the pns can be reached via the remote ppp
endpoint and a default route that ensures that traffic goes through
tun0 and into the pptpd...
4) pptpd would then encapsulate any packets it got via tun0 into type
47 packets and send them on their merry way.

or something like that.  the reverse situation would be a bit more
difficult to handle.  a userspace pptpd with ppp built in (akin to
freebsd's userspace ppp) would make all of this a bit easier.

disclaimer: my thoughts on how to do it should by no means be taken as
an expert opinion, nor should they indicate that i might even be
qualified to do such a silly thing.  of course...i can still think
about it.  :)

-- 
|-----< "CODE WARRIOR" >-----|
codewarrior@daemon.org             * "ah!  i see you have the internet
twofsonet@graffiti.com (Andrew Brown)                that goes *ping*!"
andrew@crossbar.com       * "information is power -- share the wealth."