Zum Inhalt springen

(K)Ubuntu und die D-Link DWL-G122 (C1)

2. Dezember 2007

Wie mittlerweile recht viele Leute nenne auch ich einen D-Link DWL-G122 WLAN-USB-Stick der C1-Revision (sieht aus wie rechts im Bild) mit dem RaLink RT73-Chipset mein eigen. Nun hat mein Laptop zwar, wie im entsprechenden Howto beschrieben, eine integrierte WLAN-Karte, die auch hervorragend funktioniert, aber wie wir Informatiker so sind musste ich natürlich trotzdem ausprobieren, diese Karte unter Ubuntu zu benutzen.

Die Treibersituation bei dieser Art Karte ist etwas verwirrend (so sind Herstellertreiber und mindestens zwei verschiedene Open Source-Versionen im Netz zu finden), aber die gute Nachricht ist, dass es Treiber gibt, die auch sehr anständig funktionieren. Ich persönlich habe sehr gute Erfahrungen mit den „larbig“-Treibern gemacht und werde daher deren Installation hier kurz skizzieren.

Vorab: Bevor ihr euch an diesem Howto versucht, müsst ihr sicherstellen, dass ihr wirklich eine „C1“-Revision der Karte erwischt habt, gerade wenn diese schon eine Weile bei euch im Einsatz ist. D-Link hat unter derselben Bezeichnung drei verschiedene Chipsätze verbaut; A1 und A2 wären dabei ein „Intersil Prism“-Chipset, während „B1“ zwar ein RaLink-Chipset verwendet wie C1, allerdings eine andere Baureihe. Nur wo „C1“ draufsteht, ist „RT73“ drin.

Ist das geklärt, beginnen wir mit dem Download der Treiber. Diese gibt es hier in der Sektion „RaLink RT73 USB Enhanced Driver“.
Danach begeben wir uns in das Verzeichnis, wo der Treiber liegt, und entpacken diesen per

tar -xjvf rt73-k2wrlz-2.0.1.tar.bz2

(Vorsicht, der Dateiname enthält die aktuelle Versionsbezeichnung und muss je nachdem entsprechend angepasst werden).
Ist er entpackt, wechseln wir in das entsprechende Verzeichnis und dort in das Unterverzeichnis „Module“:

cd rt73-k2wrlz-2.0.1/Module/

Dort kompilieren wir den Treiber mit dem Befehl

make

Ist das erfolgreich abgeschlossen, basteln wir unser Kernel-Modul (benötigt Superuser-Rechte):

sudo make install

Wenn das funktioniert hat, müssen wir das Modul nur noch laden. Bei Ubuntu geschieht das per

sudo modprobe rt73

Nicht verwirren lassen, wenn kein Output erscheint; das ist das normale Verhalten wenn alles funktioniert hat.

Somit sind unsere Treiber dann an sich einsatzbereit. Damit jedoch alles auch richtig funktioniert, sind noch ein paar Anpassungen nötig.
Ubuntu kommt standardmäßig mit einigen RaLink-Treibermodulen, die sich mit dem Enhanced Driver nicht richtig vertragen und zu Problemen führen. Diese müssen wir also blacklisten (das heißt am Laden hindern). Dazu rufen wir in einem Texteditor unserer Wahl (bei mir immer vim, Anfänger bevorzugen meist eher nano) mit Superuser-Rechten die entsprechende Datei auf:

sudo vim /etc/modprobe.d/blacklist

Dort fügen wir dann einige Zeilen hinzu, die die entsprechenden Module blacklisten. Am besten schreibt ihr euch noch eine Kommentarzeile (eingeleitet mit einer „#“) davor, in der ihr beschreibt, wozu der entsprechende Code ist. So behaltet ihr später leichter den Überblick. Folgender Code wird eingefügt:

blacklist rt2500usb
blacklist rt73usb
blacklist rt2x00usb

Damit die Karte auch richtig angesprochen wird, öffnet ihr noch die Datei

sudo vim /etc/modprobe.d/aliases

und fügt dort die Zeile

alias ra0 rt73

hinzu.

Einige Guides empfehlen nun, die Module per

sudo update-modules

zu laden. Ich persönlich würde allerdings eher einen Neustart empfehlen, auf meinem System hat sonst ifconfig nicht richtig mit der Karte funktioniert.

Nach dem Neustart kann die Karte dann wenn alles funktioniert hat per

sudo ifconfig rausb0 up

aktiviert werden. Der Output von iwconfig sieht dann in etwa wie folgt aus (beachtet, dass ich hier keinen Access Point in der Nähe und somit keine ESSID und Link Quality habe):

rausb0 RT73 WLAN ESSID:““ Nickname:““
Mode:Managed Frequency=2.412 GHz Bit Rate=54 Mb/s
RTS thr:off Fragment thr:off
Link Quality=0/100 Signal level:-121 dBm Noise level:-115 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0

Jetzt sollte der Verwendung der Karte nichts mehr im Wege stehen.

38 Kommentare leave one →
  1. Martin permalink
    11. Dezember 2007 5:41 am

    danke fuer das klasse dwl-g122 howto. hat alles einwandfrei funktioniert. so gute howtos findet man leider selten!
    nochmals vielen dank!

    gruss martin

  2. Annika permalink*
    12. Dezember 2007 3:27 am

    Danke für das Lob 😀 freut mich sehr, dass ich helfen konnte.
    Übrigens: Wer Erfahrungen mit anderen Distributionen als Ubuntu hat, oder andere Karten mit demselben Chipsatz, dessen Erfahrungen würde ich sehr gerne in den Kommentaren lesen. Wenn es Probleme gibt selbstverständlich auch, vielleicht findet man ja gemeinsam eine Lösung.

  3. Martin permalink
    13. Dezember 2007 11:11 pm

    Hi,

    bin blutiger linux beginner. Beschreibung ist super, bin nur zu doof das alles anzuwenden. Zumal es in meinem kubuntu bereist ein Verzeichnis mit sys/module/rt73usb/drivers/usb:rt73usb gibt. Komme irgendwie nicht richtig dran.

    Auch der Umgang mit dem editor muß ich wohl noch ein wenig übenr – bekomme die Textzeilen nicht abgespeichert.

    Könnte mir bitte jemand Nachhilfe geben?

    Danke und Gruß

    Martin

  4. Annika permalink*
    13. Dezember 2007 11:52 pm

    Hi Martin,

    ja, Kubuntu hat bereits eigene Treiber dabei, bei Gutsy sollen die auch (mit etwas Nachhilfe) funktionieren laut ubuntuforen.de.
    Qualitativ kann ich absolut nichts zu diesen Modulen sagen. Falls du es ausprobieren möchtest, versuch doch mal, nur die anderen beiden Module zu blacklisten und anschließend neu zu starten.
    Wenn nicht, kannst du die Enhanced Drivers einfach drüber installieren, dazu ist das „Blacklisting“ ja gut.
    Welchen Editor nutzt du denn?

    Viele Grüße
    Annika

  5. Martin permalink
    14. Dezember 2007 12:21 am

    Hallo Annika,

    habe es mit nano versucht und sowohl die blacklist als auch die aliases ergänzt.

    Bei Eingabe ifconfig rausb0 up erhalte ich dann leider die Meldung „FEHLER beim Auslesen der Schnittstellenmerker: no such device“.

    Blöderweise ist der stick jetzt auch aus der interface Umgebung „verschwunden“ in der er vorher aufgeführt gewesen ist (system settings/network settings).

    Danke schon mal

    Martin

  6. 14. Dezember 2007 1:06 am

    @Martin
    Ich hab zwar keine Ahnung, was der „Schnittstellenmerker“ sein soll, verwende mein Linux auf englisch, aber guck doch mal ob in der /etc/network/interfaces die Karte eingetragen ist.

    Gruß
    Markus

  7. Martin permalink
    17. Dezember 2007 11:17 pm

    Hallo Markus,

    bevor ich die Installationsschritte von Annika durchgeführt habe, war der stick in den interfaces eingetragen – habe ihn lediglich nicht zum Laufen bringen können.

    Jetzt ist er leider auch aus der interface Umgebung „verschwunden“.

    Bin etwas ratlos.

    Hast Du ’ne Idee?

    Danke Martin

  8. 18. Dezember 2007 12:23 am

    Hallo Martin,

    dann trag die Karte doch einfach wieder ein:

    sudo echo „#RaLink RT73“ >> /etc/network/interfaces
    sudo echo „auto rausb0“ >> /etc/network/interfaces
    sudo echo „iface rausb0 inet dhcp“ >> /etc/network/interfaces

    Gruß
    Markus

  9. Martin permalink
    18. Dezember 2007 12:30 am

    permission denied

    Martin

  10. Martin permalink
    18. Dezember 2007 12:37 am

    Hallo Makrus,

    permission denied

    Martin

  11. 18. Dezember 2007 1:02 am

    bist du dir sicher, dass du das sudo nicht vergessen hast?

  12. Martin permalink
    26. Dezember 2007 1:24 am

    Hallo Markus,

    sorry, bin derzeit nur bedingt online. Muß es noch mal probieren. Danke schon mal für Deinen Tip.

    Gruß

    Martin

  13. Martin permalink
    26. Dezember 2007 10:43 pm

    Hallo,

    permission denied trotz sudo.

    Am Besten, ich installiere komplett neu.

    Gruß

    Martin

  14. Patrick permalink
    9. März 2008 12:31 am

    Klasse How2, hat auf Anhieb funktioniert.
    Mangelnde WLAN-Funktionalität war der einzige Grund, nicht auf Ubuntu umzusteigen – tja, dumm gelaufen für Windoof. 😉

  15. Annika permalink*
    9. März 2008 12:24 pm

    Danke, freut mich 🙂 auch, dass es jetzt einen Linuxer mehr gibt.

  16. 9. März 2008 2:01 pm

    Hallo zusammen,

    Erst mal, geniales HowTo das du da geschrieben hast, Kompliment. Doch bleibt bei mir noch eine offene Frage…

    Ich verwende die openSUSE Distribution in der Version 10.3 und kriege kein Link mit dem „D’Link DWL G122“ stick (verwendeter Befehl: iwconfig rausb0).

    Zudem werden die Netzwerkeinstellungen die ich im Yast setze nicht gespeichert (schreibe die config, öffne den Netzwerkmanager erneut und der Status ist wieder auf „Not Conigured“). Wenn ich sie per Konsole eingebe, speichert er sie, aber wenn ich dann wieder ins Yast zurückgehe ist der Status erneut auf „Not Configured“. Dies ist aber nur bei diesem stick der fall und nicht auf dem internen Ethernet Anschluss. Vieleicht hat dies ja was mit meinem Linkproblem zu tun.

    Hat wer eine Idee wie ich das Problem lösen könnte?

    Merci im voraus…

  17. Annika permalink*
    9. März 2008 2:16 pm

    Mit OpenSUSE kenne ich mich jetzt nicht so gut aus, mir ist das zwar mal auf einem Server untergekommen aber da hatte ich natürlich nichts mit WLAN zu tun.
    Wenn sich jemand anders hier damit auskennt, bin ich froh 😉 ansonsten werde ich mir mal eine Live-CD besorgen und etwas herumprobieren.

  18. okst666 permalink
    25. März 2008 10:40 pm

    man ist das ein krampf. Zumindest auf meinem Ubuntu 7.10

    ich habs kompiliert
    ich habs installiert
    ich hab alles wie in deiner anleitung gemacht und das erzählt mir jetzt im dmesg irgendwas von error -71 bei dem ding

    um dann wieder irgendwas zu machen muss ich erst die ganzen blacklist einträge rausnehmen damit ich meinen alten wlan-adapter wieder nutzen kann.
    kannst du nicht irgendwie ne art setup.exe davon machen wo das 100%tig mit funktioniert ?

  19. Annika permalink*
    25. März 2008 11:50 pm

    Wenn ich das könnte, wäre ich wahrscheinlich in der Szene schon ziemlich berühmt 😉 Scherz beiseite, leider ist jedes System anders und was auf einem Rechner (beispielsweise meinem) bestens funktioniert macht woanders Probleme. Wie meinst du das mit dem „den alten WLAN-Adapter nutzen“? Ist das eine andere Karte, oder betreibst du dann die D-Link mit den normalen Treibermodulen?

  20. TAXI permalink
    8. Mai 2008 10:22 am

    „kannst du nicht irgendwie ne art setup.exe davon machen wo das 100%tig mit funktioniert ?“ <- finger weg von linux… bleib bei windows 😉 make && make install is doch fast schon n automatisches setup 😉

    nutze gentoo und wär mit den ra2x00 treibern fast durchgedreht, der hier vorgestellte scheint schöner zu sein 🙂
    habs grad installiert (allerdings die version 3.0.0).

    einziger makel bis jetzt (hat aber mitm ra2x00 treiber auch bzw. erst recht nicht funktioniert):
    iwlist rausb0 scan
    rausb0 No scan results

  21. Annika permalink*
    8. Mai 2008 10:39 am

    Ja, so eine Mentalität passt in der Tat besser zu Windows, aber trotzdem kann man ja den Umstieg schaffen 😉
    Gut zu wissen, dass das Ganze auch mit Gentoo funktioniert, das hatte ich nämlich noch nicht getestet.
    Das mit dem Scannen ist komisch, irgendwie scheint er einfach keine APs aufzufinden dabei, denn wenn die Funktionalität gar nicht gegeben wäre, würde man normalerweise eher ein „interface does not support scanning“ bekommen. Wieso das so ist, damit bin ich aber gerade auch überfragt.

  22. TAXI permalink
    8. Mai 2008 11:28 am

    NACHTRAG:
    komme einfach nicht online… was mach ch falsch?

    modules_wlan0=( „iwconfig“ )
    essid_wlan0=“WLAN“
    key_WLAN=“XX:XX:XX:XX:XX enc open“
    mode_WLAN=“managed“
    scan_mode_wlan0=“ad-hoc“
    channel_WLAN=“11″
    sleep_scan_WLAN=“1″
    config_wlan0=( „192.168.2.3 netmask 255.255.255.0 brd 192.168.2.255“ )
    routes_wlan0=( „default via 192.168.2.1“ )

    ausgabe:
    /etc/init.d/net.wlan0 start
    * Starting wlan0
    * Configuring wireless network for wlan0
    * wlan0 connected to ESSID „WLAN“
    * in managed mode on channel 11 (WEP enabled)
    * Bringing up wlan0
    * 192.168.2.3 [ ok ]
    * Adding routes
    * default via 192.168.2.1 … [ ok ]

  23. bse00 permalink
    13. Mai 2008 5:08 pm

    Ist der Link tot?
    http://homepages.tu-darmstadt.de/~p_larbig/wlan/

    Gibt es eine alternative Quelle?

  24. Annika permalink*
    14. Mai 2008 12:27 am

    Jetzt geht er wieder, die Uni Darmstadt hat wohl in letzter Zeit ab und zu Serverprobleme. Von Alternativen Quellen weiß ich nichts.

    TAXI, ich bin momentan überfragt, sorry… vielleicht weiß einer der Leser mehr. Mit Gentoo kenne ich mich nicht ganz so gut aus.

  25. flo permalink
    12. Juli 2008 2:32 pm

    nach einigem hin und her hat die installation bei mir jetzt funktioniert.
    allerdings wenn ich jetzt die verbindung zu meinem router herstellen will, stürzt das komplette system ab. das bild friert ein und es geht überhaupt nichts mehr.
    nach neustart dann immer wieder das gleiche problem.

    woran kann das liegen?

  26. Annika permalink*
    12. Juli 2008 7:02 pm

    Das klingt allerdings sehr ungewöhnlich. So spontan fällt mir nichts dazu ein, aber möglicherweise kommen wir ja gemeinsam drauf. Könntest Du vielleicht ein paar Details zu Deinem System (welche Distribution, welche Version, womit stellst Du die Verbindung her… ) posten?

  27. flo permalink
    14. Juli 2008 5:20 pm

    ich hab mir erst vor ein paar tagen das aktuelle ubuntu (8.04.1.) in der i386 version installiert. zum verbindung herstellen hab ich nix neues installiert. einfach das schon vorhandene programm benutzt.

    ich muss allerdings sagen, dass ich blutiger anfänger auf linux bin.

  28. Annika permalink*
    15. Juli 2008 12:39 pm

    Also wahrscheinlich den bei GNOME mitgelieferten Network-Manager. Das sollte eigentlich vollkommen in Ordnung sein; allerdings nutzt Du ja laut eigener Aussage das neue Ubuntu „Hardy“, also 8.04, mit dem ich bisher noch keine Erfahrungen habe. Ich bin nicht ganz sicher, ob es vielleicht damit zusammenhängt. Wäre schön, wenn eventuelle Hardy-Nutzer unter den Lesern mal eine Rückmeldung geben könnten, ob es bei ihnen läuft und was vielleicht anders ist als bei „Gutsy“ (7.10), das ich nutze und worauf ich dieses Howto getestet habe.

  29. 1. August 2008 8:51 pm

    Hallo habe alles gemacht bekomme aber danach bei iwconfig keine ESSID.

    Muß ich vielleicht irgendwo noch was eintragen???

  30. Annika permalink*
    2. August 2008 4:34 am

    Naja, um eine ESSID zu haben, musst Du dich erst noch mit einem Access Point verbinden. Die ESSID bezeichnet ja den „Netzwerk-Namen“, also hast Du auch nur eine, wenn Du in einem WLAN-Netz bist. Zum Verbinden kannst du z.B. WICD, KNetworkmanager oder die Kommandozeile nehmen.

  31. cee permalink
    2. September 2008 10:16 pm

    Hallo

    Ich bin sehr froh über diese einfach gehaltene Schritt für Schritt Anleitung. Ich habe alles wie gewollt durchgeführt, aber nun habe ich das Problem, dass ich im Terminal zwar meine SSID sehe und auch relativ gute Verbindungswerte habe, aber ich komme trotzdem nicht ins Internet.
    Also dachte ich, ich probiere den Tip von Markus und habe die Zeilen in /etc/network/interfaces hinzugefügt. (musste zuerst noch sudo chmod 777 interfaces) machen, da die Datei schreibgeschützt war. Nach dem Eintragen der drei Zeilen, habe ich mit vi noch die anderen Zeilen der Datei gelöscht, denn da war noch ein wlan0 und das rasub0 drin von vorherigen Versuchen mit dem Internet zu verbinden.
    … wollte mich eigentlich nach Hilfe erkundigen, aber nachdem ich oben rechts auf dem Desktop die Netzwerkeinstellungen nocheinmal richtig eingestellt habe gings. Die Netzwerkeinstellungen waren auf Roaming Mode eingestellt.

    Also bleibt mir für den Moment nicht mehr zu sagen als VIELEN dank für dein gutes Tutorial!
    Merci

  32. cee permalink
    4. September 2008 9:00 pm

    Ich hab noch was…
    Dass ich den ganzen Inhalt aus /etc/network/interfaces gelöscht habe war natürlich nicht so toll.

    Ich bekam immer einen Fehler beim starten des Gnome und bis der Desktop sichtbar wurde verging so einige Zeit.

    Aber nachdem ich

    iface lo inet loopback
    auto lo

    wieder eingefügt habe und mit

    sudo ifconfig lo up

    gestartet habe, funktioniert alles bestens.

    Wollte das nur noch los werden, wenn’s vielleicht jemandem hilft.

    Gruss vom neuen UBUNTU-user

  33. CheeTah permalink
    8. September 2008 9:00 pm

    Tag,
    erstmal vielen dank für diese schmucke Anleitung!
    Allerdings mach ich das ganze gerade im Xubuntu 8.04 und wie’s scheint kann er sich nur mit wep verschlüsselten w-lans verbinden. Bei wpa kann er keine Verbindung aufbauen.

    Grüße.

  34. Annika permalink*
    10. September 2008 10:23 pm

    Es könnte sich dabei möglicherweise um einen Bug handeln, der bereits im Ausgangs-Treiber von Serialmonkeys ist. Ich untersuche der gerade.

    EDIT: Wird in der Tat momentan nicht unterstützt.

  35. Ossay permalink
    30. September 2008 8:42 pm

    also ich hab auch alles so gemacht wie gesagt, mein Dlink ding war dann auch nicht in dieser liste, ich hab die sudo echo-sachen gemacht, in der interface datei stehen die dinge die ich reinschreiben wollte, aber es kommt trotzdem noch die meldung “rausb0: FEHLER beim Auslesen der Schnittstellenmerker: no such device”. Ich verwende die 8.04 Ubuntu Version. Fällt irgendwem dazu noch was ein???

    Vielen Dank:-)

  36. Markus permalink
    7. Juni 2009 12:15 pm

    Hallöchen,
    besten Dank erstmal für die super Anleitung! Leider gibt es unter Ubuntu 9.04 kein aliases File mehr. Ich habe es dann einfach selbst neu erstellt und die Zeile alias ra0 rt73 eingefügt. Fehlanzeige. Keine Ahnung was da schief läuft. Es werden zwar alle Access Points in der Umgebung erkannt aber ich kann einfach nicht darauf verbinden. Auch nicht auf die unverschlüsselten.

    ifconfig rausb0 liefert bei mir
    rausb0

  37. Markus permalink
    9. Juni 2009 8:09 am

    …ich bins nochmal. Problem ist gelöst, es funktioniert mit Plug&Play – einfach nicht zu weit suchen 😀

  38. Nachdenklich permalink
    22. Juli 2010 12:42 pm

    Hurrah!

    Fachidioten unter sich, oder wie?

    Man „feiert“ wieder unverholen ein Betriebssystem, welches es nicht mal Ansatzweise schafft die Pfadstrukturen für Jedermann verständlich zu erklären! Wer gern angeberisch, kompliziert denkt und agiert, sich deshalb arrogant zur Linux/Unix „Elite“ zählen will, der soll weiter unnötig verkomplizierten Pfaden, Installern und Dateipackern samt ihrer sich selbst ständig glorifizierenden Helfern huldigen!

    Diesen ganezen Hochsicherheitstrakt Schwachsinn Marke Linux braucht doch absolut kein Privat Anwender! Somit auch keine Kommandos, die nicht schon vom Ausdruck her verständlich bleiben.

    Wer ein verständliches in der Struktur und Bedienung nachvollziehbares System aufsetzen und auch bedingt selbst kontrollieren will der sollte die Finger davon lassen und sich doch lieber eines MS Produktes bedienen!
    Andernfalls zahlt er spätestnes bei den Treibern Preis, (den man für Windows nunmal entrichten muß!) durch ständige Hilfsanfragen, weil man wieder was nicht nachvollzogen und umgesetzt werden kann, als immer wieder kehrenden Zeitaufwand drauf!

Hinterlasse einen Kommentar