realisticer
Active Member
Tag allerseits,
ich habe mich letztes Wochenende mal daran gemacht, meine WLAN Karte auch unter FreeBSD ans
laufen zu bekommen. Ich gebe hier eine kurze Anleitung, wie ich das gemacht habe:
-------
Einbinden der WLAN-Karte 'DWL-G650+' in FreeBSD
mit Hilfe des ndis-wrappers
1.Was wird benoetigt?
2.Erstellen der Header- + Objektdatei 'ndis_driver_data'
3.FwRad16.bin und FwRad17.bin – Was hat es damit auf sich?
4.Anpassen der Kernelkonfiguration
5.Wohin mit den Dateien ndis_driver_data.(h/o)
6.Anpassen der Makefile fuer den Kernel
7.Letzte Schritte
1. Was wird benoetigt?
Zunaechst einmal benoetigen wir die Windows 2000/XP-Treiber. Diese koennen hier erworben
werden: http://www.dlink.com.tw/ (*1)
tnet1130.cat
GPLUS.INF
GPLUS.SYS
FwRad16.bin
FwRad17.bin
2. Erstellen der Header + Objektdatei 'ndis_driver_data'
Wir benoetigen eine Header und eine Objektdatei, welche dann zum bauen des Kernelmoduls
genutzt werden. Dabei gehen wir wie folgt vor:
1.Die Dateien aus 1.) in ein Verzeichnis entpacken, z. B. /tmp/ndis
2.Nun erstellen wir die Header + Objektdatei mittels des tools 'ndiscvt':
ndiscvt -i GPLUS.INF -s GPLUS.SYS -o ndis_driver_data.h -O
Diese Zeile wird, mit Hilfe der beiden Dateien GPLUS.INF/SYS die Headerdatei ndis_driver_data.h
und ndis_driver_data.o erstellen.
Anmerkung: Das Device welches erstellt wird, ist ndis0. Diesen Namen kann man aendern, wenn
wir die Option -n <devname> noch zusaetzlich spezifizieren.
3. FwRad16.bin und FwRad17.bin – Was hat es damit auf sich?
Bei manchen Karten wird eine Firmware mitgeliefert, die bei Aktivierung der Karte geladen wird.
Eine solche Firmware wird auch bei D-Link's AirPlus XTREME G+ DWL-G650+ mitgeliefert.
Wenn man die Karte nicht zum Booten des Systems nutzt, reicht es diese Datei nach /compat/ndis
zu kopieren, sie wird dann automatisch vom Modul mitgeladen.
Benoetigt man allerdings die Karte zum Booten des Systems, so muss man diese Datei in eine
shared-object-file konvertieren, damit der Kernel in der Lage ist, diese zu laden. Dazu gibt man in
der Befehlszeile folgendes ein:
ndiscvt -f <firmware>
Die shared-object-file kann dann beim boot-prompt bzw. mit Hilfe der loader.conf geladen werden.
Das war relativ knapp, da ich darauf nicht angewiesen bin. Etwas genauer kann man das unter
'man ndiscvt' nachlesen.
4. Anpassen der Kernelkonfiguration
Eines der einfachsten Schritte ist es, die Kernelkonfiguration entsprechend anzupassen. Dazu
oeffnen wir die Kernelkonfigurationsdatei mit unserem Lieblingseditor und fuegen folgende Zeilen
der Datei hinzu (am besten unter '# Wireless NIC cards'):
options NDISAPI
device ndis
danach speichern und schliessen wir den Editor wieder.
5. Wohin mit den Dateien ndis_driver_data.(h/o)
Nun, damit beim Bauen des Kernels die Dateien ndis_driver_data.h und ndis_driver_data.o auch
gefunden werden koennen, muessen diese natuerlich auch im entsprechenden Verzeichnis
vorhanden sein.
Wir kopieren die beiden Dateien nach
/usr/src/sys/i386/compile/<Kernelname>
6. Anpassen der Makefile fuer den Kernel
Damit auch die Objektdatei ndis_driver_data.o zum Kernel hinzugelinkt wird, muss diese noch in
der Makefile mit angegeben werden.
Dazu oeffnen wir mit unserem Lieblingseditor die Datei
/usr/src/sys/i386/compile/<Kernelname>/Makefile
Gleich auf der ersten Seite sollte uns die Variable 'OBJS' auffallen, welche saemtliche Objektdateien
auflistet, welche zum Bauen des Kernels benoetigt werden. Wir gehen an den Schluss der
Definition dieser Variable und fuegen dort hinter der letzten aufgefuehrten Objektdatei
'ndis_driver_data.o' an.
Danach speichern und schliessen wir die Makefile wieder.
7. Letzte Schritte
Die letzten Schritte sollten im Prinzip klar sein, wir muessen natuerlich den Kernel neu
uebersetzen. Dazu gehen wir ganz normal nach Handbuch vor.
Ab dem naechsten Start des Systems kann die Karte DWL-G650+ dann genutzt werden. Nachdem
die Karte eingesteckt worden ist, sollte sie dann genutzt werden koennen. Evtl. muss man noch
ein 'ifconfig <devname> up' machen.
Naehere Informationen dazu findet man in den Manpages von 'ifconfig'.
(*1) Mit den Treibern von dlink.de kann man nur eine Datenuebertragungsrate bis max 11Mb/s
bekommen. Keine Ahnung, wo da der Unterschied ist.
------
Hoffe das versetzt einige in die Lage, ihre Karte zu nutzen, sollte mit jeder X-beliebigen Karte
so moeglich sein, diese ans laufen zu bekommen.
Ausserdem hoffe ich mal, dass ich jetzt nichts vergessen hab.
Wenn Dinge zu verbessern sind, einfach schreiben .
mfg
realisticer
ich habe mich letztes Wochenende mal daran gemacht, meine WLAN Karte auch unter FreeBSD ans
laufen zu bekommen. Ich gebe hier eine kurze Anleitung, wie ich das gemacht habe:
-------
Einbinden der WLAN-Karte 'DWL-G650+' in FreeBSD
mit Hilfe des ndis-wrappers
1.Was wird benoetigt?
2.Erstellen der Header- + Objektdatei 'ndis_driver_data'
3.FwRad16.bin und FwRad17.bin – Was hat es damit auf sich?
4.Anpassen der Kernelkonfiguration
5.Wohin mit den Dateien ndis_driver_data.(h/o)
6.Anpassen der Makefile fuer den Kernel
7.Letzte Schritte
1. Was wird benoetigt?
Zunaechst einmal benoetigen wir die Windows 2000/XP-Treiber. Diese koennen hier erworben
werden: http://www.dlink.com.tw/ (*1)
tnet1130.cat
GPLUS.INF
GPLUS.SYS
FwRad16.bin
FwRad17.bin
2. Erstellen der Header + Objektdatei 'ndis_driver_data'
Wir benoetigen eine Header und eine Objektdatei, welche dann zum bauen des Kernelmoduls
genutzt werden. Dabei gehen wir wie folgt vor:
1.Die Dateien aus 1.) in ein Verzeichnis entpacken, z. B. /tmp/ndis
2.Nun erstellen wir die Header + Objektdatei mittels des tools 'ndiscvt':
ndiscvt -i GPLUS.INF -s GPLUS.SYS -o ndis_driver_data.h -O
Diese Zeile wird, mit Hilfe der beiden Dateien GPLUS.INF/SYS die Headerdatei ndis_driver_data.h
und ndis_driver_data.o erstellen.
Anmerkung: Das Device welches erstellt wird, ist ndis0. Diesen Namen kann man aendern, wenn
wir die Option -n <devname> noch zusaetzlich spezifizieren.
3. FwRad16.bin und FwRad17.bin – Was hat es damit auf sich?
Bei manchen Karten wird eine Firmware mitgeliefert, die bei Aktivierung der Karte geladen wird.
Eine solche Firmware wird auch bei D-Link's AirPlus XTREME G+ DWL-G650+ mitgeliefert.
Wenn man die Karte nicht zum Booten des Systems nutzt, reicht es diese Datei nach /compat/ndis
zu kopieren, sie wird dann automatisch vom Modul mitgeladen.
Benoetigt man allerdings die Karte zum Booten des Systems, so muss man diese Datei in eine
shared-object-file konvertieren, damit der Kernel in der Lage ist, diese zu laden. Dazu gibt man in
der Befehlszeile folgendes ein:
ndiscvt -f <firmware>
Die shared-object-file kann dann beim boot-prompt bzw. mit Hilfe der loader.conf geladen werden.
Das war relativ knapp, da ich darauf nicht angewiesen bin. Etwas genauer kann man das unter
'man ndiscvt' nachlesen.
4. Anpassen der Kernelkonfiguration
Eines der einfachsten Schritte ist es, die Kernelkonfiguration entsprechend anzupassen. Dazu
oeffnen wir die Kernelkonfigurationsdatei mit unserem Lieblingseditor und fuegen folgende Zeilen
der Datei hinzu (am besten unter '# Wireless NIC cards'):
options NDISAPI
device ndis
danach speichern und schliessen wir den Editor wieder.
5. Wohin mit den Dateien ndis_driver_data.(h/o)
Nun, damit beim Bauen des Kernels die Dateien ndis_driver_data.h und ndis_driver_data.o auch
gefunden werden koennen, muessen diese natuerlich auch im entsprechenden Verzeichnis
vorhanden sein.
Wir kopieren die beiden Dateien nach
/usr/src/sys/i386/compile/<Kernelname>
6. Anpassen der Makefile fuer den Kernel
Damit auch die Objektdatei ndis_driver_data.o zum Kernel hinzugelinkt wird, muss diese noch in
der Makefile mit angegeben werden.
Dazu oeffnen wir mit unserem Lieblingseditor die Datei
/usr/src/sys/i386/compile/<Kernelname>/Makefile
Gleich auf der ersten Seite sollte uns die Variable 'OBJS' auffallen, welche saemtliche Objektdateien
auflistet, welche zum Bauen des Kernels benoetigt werden. Wir gehen an den Schluss der
Definition dieser Variable und fuegen dort hinter der letzten aufgefuehrten Objektdatei
'ndis_driver_data.o' an.
Danach speichern und schliessen wir die Makefile wieder.
7. Letzte Schritte
Die letzten Schritte sollten im Prinzip klar sein, wir muessen natuerlich den Kernel neu
uebersetzen. Dazu gehen wir ganz normal nach Handbuch vor.
Ab dem naechsten Start des Systems kann die Karte DWL-G650+ dann genutzt werden. Nachdem
die Karte eingesteckt worden ist, sollte sie dann genutzt werden koennen. Evtl. muss man noch
ein 'ifconfig <devname> up' machen.
Naehere Informationen dazu findet man in den Manpages von 'ifconfig'.
(*1) Mit den Treibern von dlink.de kann man nur eine Datenuebertragungsrate bis max 11Mb/s
bekommen. Keine Ahnung, wo da der Unterschied ist.
------
Hoffe das versetzt einige in die Lage, ihre Karte zu nutzen, sollte mit jeder X-beliebigen Karte
so moeglich sein, diese ans laufen zu bekommen.
Ausserdem hoffe ich mal, dass ich jetzt nichts vergessen hab.
Wenn Dinge zu verbessern sind, einfach schreiben .
mfg
realisticer