Das coolste in der IT sind meiner Meinung nach die Netze. Und damit natürlich Primär das Internet. Als Millenial hatte ich Glück und ich bin so richtig mittendrin in dem "spannenden" Teil aufgewachsen. Von Dial-Up über ISDN zu DSL. OG IP :D Am Anfang hat man das halt einfach so benutzt und wusste gar nicht wie das funktioniert. Dann kamen LAN-Partys, FTP- und IRC-Server. Und man hat sich immer mal wieder mit IP-Adressen und Routing auseinander gesetzt.
Aber wie funktioniert das eigentlich ausserhalb des eigenen LANs? Woher kommen eigentlich die IP-Adressen die einem der (DSL-)Router anzeigt? Was ist eigentlich die Default-Free-Zone? Das habe ich erst so richtig begriffen als ich während des Studiums in einem Rechenzentrum einen Job angefangen habe. Denn im Internet spricht man BGP. Das macht aber normalerweise dein Internetprovider für dich. Wenn du das selbst machen willst musst du dich schon etwas anstrengen :)
Aber bevor du dir jetzt sofort eine VM oder eine Colocation klickst, bei der man eine eigene AS-Nummer und ein Netz gesponsort kriegt (teuer, selten), kannst du das mit dem Routing auch einfach mal ausprobieren. Dafür gibt es DN42 ("Decentralized Network 42"). Das hat übrigens mein Kumpel mortzu (mit-)erfunden (So die Legende. Ich hoffe, er schreibt mal was dazu).
Das Ganze ist ein Netzwerk aus VPN-Verbindungen (meistens mit Wireguard). Diese Verbindungen simulieren die Glasfasern und MPLS-Netze die in der "echten" Welt die Verbindungen zwischen den einzelnen Providern herstellen. Das Routing wird (wie im Internet) natürlich mit BGP gemacht. Ein tolles Protokoll!
Einen guten Einstieg bietet das Wiki. Wenn du dich etwas eingelesen hast willst du vielleicht ja auch daran teilnehmen. Dazu brauchtst du nur irgendein Gerät das Wireguard und BGP spricht. Das kann ein Raspberry Pi sein. Oder ein kleiner Plastik-Router (Beliebt sind z.B. die Router von Mikrotik). Oder eine einfach eine VM (Lokal oder irgendwo im Internet) mit einem Linux und bird (Bird is the word!). Dann musst du dich in der DN42-Registry registrieren. Wie das geht steht auch im Wiki. Hast du eine AS-Nummer und IP-Adressen (true Hacker:innen benutzen natürlich nur IPv6-Only), kannst du anfangen dir Peeringpartner zu suchen.
Wenn du, so wie ich, nicht so Bock drauf hast fremde Menschen im Internet zu belästigen, kannst du auch sogenannte "Auto-Peerings" verwenden. Das sind Webseiten die dir eine Wireguard-Config ausspucken mit der du dich zu deren Routern verbinden kannst. Ganz ohne sozialen Kontakt und sehr introvert-freundlich :) Klick dich einfach durch die Liste. Manche sind evtl. nicht mehr erreichbar. Nimm einfach irgendwelche. Zwei sollten für den Anfang reichen. Häufig findest du auf der Webseite des Auto-Peerings einen Hinweis wie man sich registriert und einen Tunnel einrichtet.
Sobald dein Wireguard-Tunnel steht kannst du anfangen BGP auf deinem Router einzurichten und dann mit deinem Nachbarn (Peers) routen auszutauschen. Im Internet ist es üblich, dass man mindestens zwei Nachbarn hat ("Multi-Homed"). Wenn du das gebaut hast, hast du quasi das "Standard"-Setup was die meisten ASse im Internet fahren (Provider, Firmen, Vereine). Tubular! (Siehe auch: The Internet is a series of tubes!).
Meine AS-Nummer im DN42 ist übrigens AS4242420280. Die Verbindungen kann man auch auf einigen Maps sehen.
Wenn du es bis hier geschafft hast, nice! Hier noch ein paar Dinge die du danach ausprobieren kannst:
- Versuche die internen Dienste des DN42 in deinem Heimnetz erreichbar zu machen
- Baue mehr Router auf (z.B. einen pro Peer)
- Baue zu deinem eBGP noch iBGP (oder OSFP in deinem Heimnetz)
- Probier was neues, z.B. Multicast! (und Mate bei 3°C!)
- Anycast, anyone?
- Erzähle Menschen von DN42 und wie toll Routing, BGP und Netzwerke sind!
Und wenn das nicht reicht: Werde Netzwerker:in und bau am echten Internet rum :)