Skip to content

routedbits/dn42-peers

Repository files navigation

RoutedBits: DN42 Peering Configuration

This repository contains the peering configuration for each of our DN42 routers.

Requesting/Managing Peering

Pull-requests are welcomed by users requesting peering to one or more locations. Information about nodes and configuration information about each location can be found on our site. You may also modify your peering by submitting additional pull requests with your desired changes.

Please note that prefixes are subject to the following:

Alternative Method

You can click here to submit a peering request via Google Form. This is an easier method for users that do not wish to interact with Git or GitHub.

Steps

  1. Fork this repository

    git clone git@github.com:routedbits/dn42-peers.git
    cd dn42-peers
    
  2. Install dependencies

    python -m venv venv
    source venv/bin/activate
    pip install -r requirements.txt
    
  3. Run the interactive.py script and provide the requested information

    • Alternatively, you can manually update the appropriate router with your peering information
    python interactive.py
    
  4. Create a PR

    git checkout -b AS123456789_LON1
    git add .
    git commit -m "Add AS123456789 peering at LON1"
    git push origin AS123456789_LON1
    

Once approved and merged, we automatically distribute your configuration to the routers in our network. Please allow some time for the process to complete.

Examples

  1. Multi-protocol (IPv4/IPv6) with Extended Nexthop Capability (Preferred)
- name: YOUR-PEER-NAME    # Name your connection; please use capital letters and dashes only
  asn: 4242420000         # Your DN42 ASN
  ipv6: fe80::1234        # Your IPv6 tunnel address (Link-local preferred, /64 assumed unless specified)
  multiprotocol: true     # Send both IPv4 and IPv6 AFIs in the same BGP session
  extended_nexthop: true  # Enable BGP Extended Nexthop Capability
  sessions:               # Protocol to use for session connection (ipv6)
    - ipv6
  wireguard:
    remote_address: 2001:db8:abcd:ef::1                        # Your clear net/public IPv4 or IPv6 address (or FQDN)
    remote_port: 20207                                         # Your WireGuard Listen Port
    public_key: abdcefabdcefabdcefabdcefabdcefabdcefabdcefg=   # Your WireGuard Public Key
  1. Multi-protocol (IPv4/IPv6)
- name: YOUR-PEER-NAME    # Name your connection; please use capital letters and dashes only
  asn: 4242420000         # Your DN42 ASN
  ipv4: 172.20.0.1        # Your IPv4 tunnel/endpoint address
  ipv6: fe80::1234        # Your IPv6 tunnel address (Link-local preferred, /64 assumed unless specified)
  multiprotocol: true     # Send both IPv4 and IPv6 AFIs in the same BGP session
  sessions:               # Protocol to use for session connection (ipv4 or ipv6)
    - ipv6
  wireguard:
    remote_address: 2001:db8:abcd:ef::1                        # Your clear net/public IPv4 or IPv6 address (or FQDN)
    remote_port: 20207                                         # Your WireGuard Listen Port
    public_key: abdcefabdcefabdcefabdcefabdcefabdcefabdcefg=   # Your WireGuard Public Key
  1. IPv4 and IPv6 in separate sessions
- name: YOUR-PEER-NAME    # Name your connection; please use capital letters and dashes only
  asn: 4242420000         # Your DN42 ASN
  ipv4: 172.20.0.1        # Your IPv4 tunnel/endpoint address
  ipv6: fe80::1234        # Your IPv6 tunnel address (Link-local preferred, /64 assumed unless specified)
  sessions:               # Protocol to use for session connection (ipv4 and ipv6)
    - ipv4
    - ipv6
  wireguard:
    remote_address: 2001:db8:abcd:ef::1                        # Your clear net/public IPv4 or IPv6 address (or FQDN)
    remote_port: 20207                                         # Your WireGuard Listen Port
    public_key: abdcefabdcefabdcefabdcefabdcefabdcefabdcefg=   # Your WireGuard Public Key
  1. IPv4 Only
- name: YOUR-PEER-NAME    # Name your connection; please use capital letters and dashes only
  asn: 4242420000         # Your DN42 ASN
  ipv4: 172.20.0.1        # Your IPv4 tunnel/endpoint address
  sessions:               # Protocol to use for session connection (ipv4)
    - ipv4
  wireguard:
    remote_address: 2001:db8:abcd:ef::1                        # Your clear net/public IPv4 or IPv6 address (or FQDN)
    remote_port: 20207                                         # Your WireGuard Listen Port
    public_key: abdcefabdcefabdcefabdcefabdcefabdcefabdcefg=   # Your WireGuard Public Key
  1. IPv6 Only
- name: YOUR-PEER-NAME    # Name your connection; please use capital letters and dashes only
  asn: 4242420000         # Your DN42 ASN
  ipv6: fe80::1234        # Your IPv6 tunnel address (Link-local preferred, /64 assumed unless specified)
  sessions:               # Protocol to use for session connection (ipv4 or ipv6)
    - ipv6
  wireguard:
    remote_address: 2001:db8:abcd:ef::1                        # Your clear net/public IPv4 or IPv6 address (or FQDN)
    remote_port: 20207                                         # Your WireGuard Listen Port
    public_key: abdcefabdcefabdcefabdcefabdcefabdcefabdcefg=   # Your WireGuard Public Key