Werbung hier klicken! www.conrad.de Werbung

Fritz!Card DSL SL-Mini-Howto für Debian Woody

Seit einigen Wochen erfreue ich mich nun auch an einer DSL-Leitung. Mein DSL-Internetprovider spendierte mir dazu eine Fritz!Card DSL SL-Karte, die auf meinem Router installiert werden musste. Dieser läuft unter Debian Woody, so dass ein wenig Handarbeit gefragt war. Um das ganze eventuell auch später einmal nachzuvollziehen, ist dieses kleine Mini-Howto entstanden, vielleicht ist es für den einen oder anderen auch ganz hilfreich.

  • Zunächst habe ich einen neuen Kernel gebaut. Das ganze natürlich mit make-kpkg & Co, damit das auch als DEB-Paket installiert werden kann. Der Kernel sollte für ISDN, CAPI und PPP entsprechend konfiguriert werden, nähere Informationen dazu findet man in der Dokumentation des Kartentreibers (siehe nächster Punkt) bzw. auf den Seiten der anderen Howtos (siehe unten).
  • Anschließend habe ich die Kartentreiber fcdslsl-suse8.2-03.11.02.tar.gz heruntergeladen und entpackt. In der src.drv/defs.h musste ich die Deklaration in Zeile 85 auskommentieren, weil die von mir verwendete Kernelversion (2.4.26) das Symbol schon selbst deklariert. In der src.drv/makefile habe ich die Zeile mit KRNLINCL geändert auf KRNLINCL = /usr/src/linux/include, weil dort die Includes zu meinem selbstgebauten Kernel zu finden waren. In der gleichen Datein sollte man bei den DEFINES noch ein -DMODVERSIONS anfügen, bei den CCFLAGS eine Zeile mit -include $(KRNLINCL)/linux/modversions.h. Zusätzlich kann man bei den CCFLAGS auch noch die genaue Architektur angeben, ich habe also noch ein -march=k6 angefügt, weil das Modul auf einem AMD K6 laufen soll. Das ist aber nicht unbedingt nötig.
  • Nach diesen Vorbereitungen schiebt man die Compilierung der Treiber im fritz-Verzeichnis mittels make clean; make an. Wenn alles gut geht, findet man anschließend in src.drv eine Datei namens fcdslsl.o.
  • Auf dem Rechner, wo die Karte eingebaut ist, sollten nun noch folgende Debian-Pakete installiert werden: isdnactivecards und pppdcapiplugin. Möglicherweise braucht man das letztere Paket nicht unbedingt, weil das Plugin noch keine Unterstützung für diese AVM-Karte hat, ich habe es installiert, weil es auch das Userpass-Plugin enthält.
  • Da man aber ein entsprechendes Plugin mit der avmadsl-Unterstützung braucht, muss es selbst compiliert werden. Dazu habe ich apt für den unstable-Zweig konfiguriert und anschließend ein apt-get source pppdcapiplugin ausgeführt. Dieser Befehl entpackt die Quellen der isdnutils. Damit das ganze ohne Probleme compiliert, musste ich noch in der debian/control in der Zeile Build-Depends die Version von debhelper auf >=4.02 setzen. Dann baute ein debuild die ganzen Pakete, die ich allerdings nicht installiert habe, da sie mir zu viele neue Abhängigkeiten besitzen.
  • Da der Rechner, auf dem ich compiliere, nicht der gleiche ist, wo die Karte eingebaut ist, habe ich jetzt folgende Dateien auf den Zielrechner kopiert (das Zielverzeichnis steht in Klammern):
    fritz/drdsl                (/root/drdsl)
    fritz/drdsl.ini            (/root/drdsl)
    fritz/fdssbase.bin         (/usr/share/isdn)
    fritz/src.drv/fcdslsl.o    (/lib/modules/2.4.26/misc)
    Da mir noch nicht ganz klar ist, ob man das drdsl permanent benötigt, habe ich es einfach in ein seperates Verzeichnis verbannt. Außerdem muss ja noch das capiplugin aktualisiert werden. Dazu habe ich einfach die capiplugin.so aus den Verzeichnissen isdnutils-3.3/pppdcapiplugin/pppd-2.* an die entsprechenden Stellen auf dem Zielrechner unter /usr/lib/pppd kopiert.
  • In der /etc/isdn/capi.conf habe ich zunächst alles auskommentiert und anschließend folgende Zeile ergänzt: fcdslsl fdssbase.bin - - - - -
  • Nun lässt man drdsl die Parameter der Gegenstelle herausfinden, die gefundenen Werte habe ich in der /etc/modutils/fcdslsl hinterlegt: options fcdslsl VPI=1 VCI=32 VCC=1
  • Man sollte nun noch ein update-modules durchführen, damit die Änderungen übernommen werden, und ein depmod -a aktualisiert die Depencies, damit der laufende Kernel beim Laden von Modulen nicht ständig rummeckert.
  • Ein /etc/init.d/isdnactivecards start sollte nun die Kartentreiber laden
  • In /etc/rc2.d musste ich noch die Start-Reihenfolge von isdnactivecards und ppp ändern, weil der pppd ja eine initialisierte Karte benötigt. Mittels cd /etc/rc2.d/; rm S20isdnactivecards; ln -s ../init.d/isdnactivecards S13isdnactivecards habe ich dies zumindest für Runlevel 2 korrigiert.
  • Da ich möchte, dass die DSL-Verbindung bei jeden Booten automatisch hergestellt wird, habe ich die vorhandene /etc/ppp/peers/dsl-provider nach /etc/ppp/peers/provider kopiert. Diese habe ich dann auf ungefähr das folgende geändert:
    noipdefault
    defaultroute
    hide-passwort
    lcp-echo-interval 300
    lcp-echo-failure 3
    connect /bin/true
    noauth
    persist
    mtu 1492
    sync
    plugin userpass.so
    user "..."
    password "..."
    plugin capiplugin.so
    avmadsl
    protocol adslpppue
    noproxyarp
    usepeerdns
    dev/null
    maxfail 0
  • Ein anschließendes /etc/init.d/ppp start sollte die Verbindung hochfahren.

Es ist gut möglich, dass dieses Mini-Howto unvollständig ist, die Einrichtung der Karte ist nun mittlerweise schon ein paar Wochen her. Wer noch weitergehende Infos braucht, sollte sich auch mal die folgenden Seiten anschauen, die mir bei der Geschichte sehr geholfen haben. Vielen Dank an dieser Stelle an die jeweiligen Autoren.