# $FreeBSD$ # This is a working example of ppp.conf.span-isp that uses ppp connections # to the same machine through 3 null-modem serial cables. # # cuaD03 <-> cuaD04 # cuaD01 <-> cuaD06 # cuaD00 <-> cuaD07 # # with gettys running on cuaD04, cuaD06 and cuaD07. The gettytab entry # for these devices has a pp= capability that references a script that # says: # # #! /bin/sh # tty=$(tty) # exec /usr/sbin/pppin -direct isp-in-${tty#${tty%?}} # # The whole thing is brought up with these commands: # # ppp -b isp1 # ppp -b isp2 # ppp -b isp3 # # Something rather strange happens here. # If you connect to the vpn-in diagnostic socket with ``pppctl # /var/tmp/vpn-in'' and do a ``show links'', only a single link shows up. # If you connect to the vpn diagnostic socket (which is created in # ppp.linkup.span-isp.working, you see three links. This is because inetd # is told to ``wait'' for ppp to finish and the receiving ppp gets to # handle all incoming packets on the first descriptor. # # This is why enabling LQR won't work - VPN-IN has magic number problems, # fails to reply to LQRs and the VPN invocations end up shutting down. # # If anyone can come up with a better way of doing PPP over UDP I'd be # interrested to hear it. Currently, the server doesn't connect() or # bind().... but the client connect()s. Is there any other way ? # # Answers on a postcard please ! (to brian@Awfulhak.org) # default: set speed 115200 set device /dev/cuaD00 /dev/cuaD01 /dev/cuaD03 set dial set login set redial 3 5 set timeout 0 enable lqr set lqrperiod 15 isp1: set authname isp1name set authkey isp1key isp2: set authname isp2name set authkey isp2key isp3: set authname isp3name set authkey isp3key vpn: set enddisc LABEL set speed sync set mrru 1500 set mru 1504 # Room for the MP header set authname vpnname set authkey vpnkey add! default HISADDR disable deflate pred1 lqr deny deflate pred1 vpn1: rename 1 set device 127.0.2.7:ppp/udp vpn2: rename 2 set device 127.0.2.6:ppp/udp vpn3: rename 3 set device 127.0.2.4:ppp/udp vpn-in: set enddisc label set speed sync set mrru 1500 set mru 1504 # Room for the MP header enable chap disable lqr set ifaddr 127.0.0.2 127.0.0.3 set server /var/tmp/vpn-in "" 0177 isp-in-7: set ifaddr 127.0.2.7 127.0.3.7 isp-in-6: set ifaddr 127.0.2.6 127.0.3.6 isp-in-4: set ifaddr 127.0.2.4 127.0.3.4