DESCRIPTION:

    peer2anonet is an autoconfiguration utility for setting
    up core services on AnoNet2. Enjoy :-).

DEPENDS ON:

    quicktun, bird, bash for now. it also installs some cool shit
    that you'll use later.

AUTHOR:

    d3v11 from www.d3v11.ano, somtimes, maybe, dunno.

    REPORT BULLSHIT TO:

        IRC:
        
            /relayhell/d3v11

        EMAIL:
        
            d3v11@d3v11.ano

USAGE:

    From $RESDB_ROOT do:

        ./contrib/peer2anonet/peer2anonet --configure             generate a new local configuration and exit

        ./contrib/peer2anonet/peer2anonet --update                regenerate peer configurations

        ./contrib/peer2anonet/peer2anonet --configure-peer        generate a new peer configuration and update

        ./contrib/peer2anonet/peer2anonet --rm-peer               remove a peer configuration and update

        ./contrib/peer2anonet/peer2anonet --install-daemontools   installs daemontools

        ./contrib/peer2anonet/peer2anonet --install-ucspi-tcp     installs ucspi-tcp

        ./contrib/peer2anonet/peer2anonet --install-djbdns        installs djbdns

        ./contrib/peer2anonet/peer2anonet --configure-dns         configures dnscache and tinydns zones

        ./contrib/peer2anonet/peer2anonet --update-dns            updates tinydns-ano zone

RTFM:

    CONFIGURE:

        I highly recommend that before you use peer2anonet
        you ./configure resdb with tinydns support.

        ./contrib/peer2anonet/peer2anonet --configure

        EXAMPLES:

            Enter your AnoNet subnet: 1.1.5.0
            Enter your AnoNet router: 1.1.5.1
            Enter your peering ip: 1.1.5.2
            Enter your AnoNet asn: 1150

    CONFIGURE PEER:

        ./contrib/peer2anonet/peer2anonet --configure-peer

            KEY PAIRS:

                before running peer2anonet to configure peers you can use
                quicktun to generate keypairs:

                    quicktun.keypair < /dev/random

            EXAMPLES:

                Enter your peer's name: d3v11
                Enter your peer's remote ip: 11.11.55.1
                Enter your peer's peering ip: 1.1.5.2
                Enter your peer's remote port: 21150
                Enter your local port: 61150
                Enter your peer's asn: 1150
                Enter your peer's public key: * see KEY PAIRS above *
                Enter your private key: * see KEY PAIRS above *

            RUN CHANGES:

                peer2anonet exports the /service/$PEER/run file to
                /etc/peer2anonet/peers/$PEER/run. If you need to
                create customizations for peerings then make adjustments
                to that file.

            CONFIGURATION FILES:

                /etc/peer2anonet/peers/$PEER/* contains:
                
                    asn  local_port  peering_ip  pubkey  remote_ip  remote_port  run  seckey

                In the event you want to reconfigure a peer's tunnel you can alter the run
                file and do `--update', rm run and modify the above files then use `--update',
                or reconfigure the peering tunnel altogether with --configure-peer and choose
                that peer's name. If you think this is absurd then you're probably right! I 
                plan on doing something with these files later.

    CONFIGURE DNS:

        If you did not ./configure resdb with tinydns support
        then you need to do that before using this function.

        also before using you will need to have installed
        daemontools, djbdns, and ucspi-tcp. peer2anonet
        can do this for you with --install-* options.

        ./contrib/peer2anonet/peer2anonet --configure-dns

        UPDATE DNS:

            After a successful `--configure-dns', you can now
            enjoy to use `--update-dns' to bring your AnoNet
            domains up to speed.

    COMPLAIN:

        If this README doesn't tell you what you need to know
        you can head over to www.d3v11.ano/peering. If that
        doesn't get you what you want then either complain to
        me or shoot both of us in the face.