Open Source im professionellen Einsatz
Linux-Magazin 01/2008
© Mordechai/Photocase.com

© Mordechai/Photocase.com

Hochverfügbarer Internetzugang für zu Hause mit Perl

Doppelt genäht

Fällt der Internetprovider aus, sitzt der Nutzer zu Hause auf dem Trockenen. Es sei denn, er hilft sich wie ein Profi und schaltet auf die Konkurrenz um. Ein Perl-Skript konfiguriert dann den Rechner neu.

391

In Kalifornien gibt es derzeit zwei große Konkurrenten für Internetanschlüsse in Privathaushalten: die Telefongesellschaft AT&T mit ihrem DSL und die Kabelfirma Comcast, die durch das Fernsehkabel ebenfalls Breitband-Internet anbietet. Ein DSL- oder Kabelmodem zapft die Daten aus der Leitung, ein vorgeschalteter Router verbindet sämtliche Rechner des Haushalts im Handumdrehen mit dem Internet (Abbildung 1).

Abbildung 1: Ein Blick auf das Haushaltsnetzwerk der Perlmeister-Studios.

Billig oder schnell

Beide Anbieter haben Vor- und Nachteile. So leidet die Kabelverbindung, wenn zu viele Kinder in der Nachbarschaft "World of Warcraft" spielen, weil die Bandbreite mit der Zahl der Nutzer abnimmt. Der legendäre Werbespot "Web Hog!" [2] des DSL-Anbieters Southern Bell illustriert humorvoll, wie sich friedfertige Nachbarn einer Kleinstadt über Nacht in Berserker verwandeln, weil sie sich angeblich gegenseitig das Internet lahmlegen. Das DSL der Telefongesellschaft ist zumindest in der langsamen Billigversion preisgünstiger und jeder bekommt die gleiche Bandbreite. Allerdings hängen Verfügbarkeit und tatsächlicher Durchsatz von der Entfernung zum nächsten Knotenpunkt ab.

Keines der beiden Verfahren ist jedoch absolut zuverlässig, immer wieder gibt\'s Probleme: ein Stromausfall oder ein Bauarbeiter, der ein Kabel anbohrt, - schon fällt das Internet aus. Ärgerlich für den, der es gerade dringend braucht. Da aber sowohl DSL als auch Kabel-Internet im Sonderangebot monatlich nur etwa 20 Dollar kosten, habe ich mir beide bestellt. Wenn ein Anbieter ausfällt, schalte ich einfach auf den anderen um.

Schalter-Skript

Das Skript »isp-switch« (Listing 1) nimmt als Parameter entweder »cable« oder »dsl« auf der Kommandozeile entgegen und führt die zum Umschalten nötigen Schritte aus. In dem Skript bestimmt Zeile 21 die möglichen Werte dieser Parameter. Bei unbekannten Providernamen bricht es mit »pod2usage()« ab und gibt eine Fehlermeldung sowie die verkürzte Bedienungsanleitung aus.

Die weiche Referenz »$switch_to->()« in Zeile 31 ruft dann die weiter unten definierten Funktionen »cable()« oder »dsl()« auf. Damit der Perl-Interpreter im Strict-Modus bei diesem schmutzigen Trick nicht ausflippt, muss das Skript die Strenge mit »no strict \'refs\'« etwas abmildern. Das umschließende »eval«-Konstrukt fängt etwaige Fehler ab und lässt es weiterrattern, auch wenn nicht alle Schritte erfolgreich ablaufen.

Das Skript nutzt Log::Log4perl für die Status- und Fehlermeldungen. Das in Zeile 48 verwendete Makro »ALWAYS« kam allerdings erst mit Version 1.13 hinzu, deshalb fordert Zeile 9 mindestens diese Version an.

Linux-Magazin kaufen

Einzelne Ausgabe
 
Abonnements
 
TABLET & SMARTPHONE APPS
Bald erhältlich
Get it on Google Play

Deutschland

Ähnliche Artikel

  • Schnurlos schnurren

    Ohne Kabel online - technisch kein Problem, nur die Sicherheitsprobleme der Funknetze stören die Gemütlichkeit. Jedem Besucher im Caf} gegenüber beliebig Bandbreite schenken ist nicht jedermanns Sache, also muss eine Authentifizierung her. Die sollte plattformunabhängig funktionieren.

  • Kräftespiel

    Als Kind des Internet hat Linux seit seiner frühen Jugend eine klare Affinität zum Netzwerk. Ob Linux auf Standard-PCs sich mit der spezialisierten Hardware der Netzwerkausrüster messen kann und wo das freie System seine Stärken am besten ausspielt, zeigt dieser Lagebericht.

  • Mailheader

    Die Header von E-Mails geben Auskunft über Strukturen des lokalen Netzwerks. Dies lässt sich schon auf dem eigenen Mailserver so weit reduzieren, dass Fremde hier nur solche Daten vorfinden, die für den Transport der Nachrichten notwendig sind.

  • SDN und Open Stack

    In klassischen Virtualisierungsumgebungen ist Software Defined Networking ein nettes Add-on, aber in Clouds gehören virtuelle Netze zum Pflichtprogramm. Am Beispiel Open Stack lässt sich gut nachvollziehen, wie Clouds die abstrahierte Netzwerklogik konkret nutzen.

  • Mikro-Filter

    Die Kombination aus Paketfilter, VPN-Gateway und DSL-Router passt bei der Microliss-Firewall in ein Gehäuse, das etwa so klein wie ein Modem ist. Das Gerät enthält zusätzlich ein Intrusion-Detection-System.

comments powered by Disqus

Ausgabe 08/2016

Artikelserien und interessante Workshops aus dem Magazin können Sie hier als Bundle erwerben.