Inhaltsverzeichnis

NdisWrapper

FRITZ!WLAN-USB-Stick

OpenSolaris 2008

# wificonfig -i iwi0 scan
   essid           bssid             type          encryption     signallevel
   DLINK_WAP       00:0f:3d:ac:97:a8 access point  wep            14
   peanutsfans     00:17:18:19:20:21 access point  wep            15
# wificonfig createprofile peanutsfans \
      essid=peanutsfans \
      proto=WPA \
      key_mgmt=WPA \
      key_mgmt=WPA-PSK \
      pairwise=TKIP \
      psk=password
#!/bin/sh

# WLAN-Infos
BSSID="00:17:18:19:20:21"
WEPKEY="geheim"
PROFILENAME="peanutsfans"

# Netzwerkinfos
NETZWERKKARTE="iwi0"
WIFICONFIG="/export/home/root/Solaris/wificonfig"

### W-LAN-Netz suchen
ESSID="`${WIFICONFIG} -i "${NETZWERKKARTE}" scan | grep "${BSSID}" | awk '{print $1}'`"

### ohne Profil
# ${WIFICONFIG} -i ${NETZWERKKARTE} connect ${ESSID}

echo "
### mit Profiel
${WIFICONFIG} createprofile ${PROFILENAME} essid=${ESSID} encryption=wep wepkey1=${WEPKEY}
${WIFICONFIG} -i ${NETZWERKKARTE} connect ${PROFILENAME}

### Netzwerkkarte konfigurieren
ifconfig ${NETZWERKKARTE} dhcp
"

Linux allgemein

Mir ist nur bekannt, dass der Originaltreiber für Linux auf SUSE und Ubuntu läuft. Auf allen anderen Distributionen muss der "ndiswrapper" verwendet werden.

das einbinden des Flash-Rom's als CD-Laufwerk verhindern:

# vi /etc/udev/rules.d/10-fritz_wlan.rules
# UDEV-Regel fuer Fritz!WLAN USB-Stick Version V1.1 ID 057c:6201
# Verhindert die Einbindung des Flash-Rom als CD-Laufwerk
# Flash Stick-ID 62FF
SUBSYSTEM=="block", SYSFS{idVendor}=="057c", SYSFS{idProduct}=="62ff", ACTION=="add", OPTIONS+="ignore_device"
# yum install ndiswrapper wpa_supplicant wireless-tools

32 Bit:

# ndiswrapper -i 32Bit/fritz-wlan_usb_stick_build_090320/fwlan.inf

64 Bit:

# ndiswrapper -i 64Bit/fritz-wlan_usb_stick_x64_build_090320/fwlan64.inf
# mv /etc/ndiswrapper/fwlan64 /etc/ndiswrapper/fwlan
# ndiswrapper -l
      fwlan : driver installed
              device (057C:6201) present
# ndiswrapper -m
adding "alias wlan0 ndiswrapper" to /etc/modprobe.d/ndiswrapper ...
# mv /etc/modprobe.d/ndiswrapper /etc/modprobe.d/ndiswrapper.conf
# cat /etc/modprobe.d/ndiswrapper.conf
alias wlan0 ndiswrapper
# modprobe ndiswrapper
# iwconfig
lo        no wireless extensions.

eth0      no wireless extensions.

pan0      no wireless extensions.

wlan0     IEEE 802.11g  ESSID:off/any  
          Mode:Managed  Frequency:2.412 GHz  Access Point: Not-Associated   
          Bit Rate:54 Mb/s   Tx-Power:10 dBm   Sensitivity=0/3  
          RTS thr:off   Fragment thr:off
          Encryption key:off
          Power Management:off
          Link Quality:0  Signal level:0  Noise level:0
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0
# dmesg | grep ndis
ndiswrapper version 1.54 loaded (smp=yes, preempt=no)
ndiswrapper: driver fwlan (AVM GmbH,12/28/2006,2.0.6.1647) loaded
usbcore: registered new interface driver ndiswrapper
# lsusb
Bus 001 Device 006: ID 057c:6201 AVM GmbH WLAN USB v1.1

Windowstreiber Optionen

Bei Problemen mit Verbindungsabbrüchen oder Abstürzen können die Treibereinstellungen angepasst werden. Folgende Werte in den Konfigurationsdateien unter /etc/ndiswrapper/fwlan können geändert werden.

Je nach verwendetem Typ (ID) des Sticks die Datei 057C:5601.F.conf oder 057C:6201.F.conf editieren.

WLAN-Netz konfigurieren

# iwlist wlan0 scan
wlan0     Scan completed :
          Cell 01 - Address: 00:17:18:19:20:21
                    Channel:1
                    Frequency:2.412 GHz (Channel 1)
                    Quality=70/70  Signal level=-39 dBm  
                    Encryption key:on
                    ESSID:"peanutsfans"
                    Bit Rates:1 Mb/s; 2 Mb/s; 5.5 Mb/s; 11 Mb/s; 6 Mb/s
                              9 Mb/s; 12 Mb/s; 18 Mb/s
                    Bit Rates:24 Mb/s; 36 Mb/s; 48 Mb/s; 54 Mb/s
                    Mode:Master
                    Extra:tsf=00000006228b0b4a
                    Extra: Last beacon: 532296ms ago
                    IE: Unknown: 0008574C414E2D44534C
                    IE: Unknown: 010882848B960C121824
                    IE: Unknown: 030101
                    IE: IEEE 802.11i/WPA2 Version 1
                        Group Cipher : CCMP
                        Pairwise Ciphers (1) : CCMP
                        Authentication Suites (1) : PSK
                    IE: Unknown: 2A0100
                    IE: Unknown: 32043048606C
                    IE: Unknown: DD180050F2020101060003A4000027A4000042435E0062322F00
                    IE: Unknown: DD1E00904C334E101BFFFF000000000000000000000000000000000000000000
                    IE: Unknown: 2D1A4E101BFFFF000000000000000000000000000000000000000000
                    IE: Unknown: DD1A00904C34010D0800000000000000000000000000000000000000
                    IE: Unknown: 3D16010D0800000000000000000000000000000000000000
                    IE: Unknown: DD0900037F01010000FF7F
                    IE: Unknown: DD0A00037F04010004000000

Ubuntu:

# cat /usr/share/doc/wpasupplicant/examples/wpa-psk-tkip.conf >> /etc/wpa_supplicant/wpa_supplicant.conf
# vi /etc/wpa_supplicant/wpa_supplicant.conf
      ctrl_interface=/var/run/wpa_supplicant
      ctrl_interface_group=0
      eapol_version=1
      ap_scan=1
      fast_reauth=1
      network={
              ssid="peanutsfans"
              mode=0
              key_mgmt=WPA-PSK
              proto=WPA
              pairwise=TKIP
              group=TKIP
              psk="123Dwxaf9352abwG"
      }
# wegen einem Problem mit der Prozesspriorität geht DHCP nicht immer
# vi /etc/network/interfaces
      auto wlan0
      iface wlan0 inet static
              wpa-conf /etc/wpa_supplicant/wpa_supplicant.conf
              address 192.168.9.9
              network 192.168.9.0
              netmask 255.255.255.0
              broadcast 192.168.9.255
              gateway 192.168.9.254

Fedora:

# cat /usr/share/doc/wpa_supplicant-0.6.8/examples/wpa-psk-tkip.conf >> /etc/wpa_supplicant/wpa_supplicant.conf
# vi /etc/wpa_supplicant/wpa_supplicant.conf
      ctrl_interface=/var/run/wpa_supplicant
      ctrl_interface_group=wheel
      # WPA-PSK/TKIP
      network={
              ssid="peanutsfans"
              bssid=00:17:18:19:20:21
              scan_ssid=1
              mode=0
              key_mgmt=WPA-PSK
              proto=WPA
              pairwise=TKIP
              group=TKIP
              psk="123Dwxaf9352abwG"
      }

Die Datei wpa_supplicant.conf kann mehrere solcher network-Blöcke gleichzeitig enthalten. Dies ist zum Beispiel dann nützlich, wenn man häufig zwischen verschiedenen Wireless-Netzen wechselt. Dieses Verfahren macht im Allgemeinen den Einsatz des (zickigen) NetworkManagers unnötig.

Dies sind lediglich die grundlegenden Parameter, es gibt noch verschiedene weitere für unterschiedlichste Konfigurationen. Wer eine spezielle Art der Verschlüsselung nutzen möchte oder Hintergrundinformationen benötigt, findet diese in der Bespielkonfiguration auf der Homepage des Projekts: http://hostap.epitest.fi/wpa_supplicant/:

# /usr/sbin/wpa_supplicant -B -D wext -i wlan0 -c /etc/wpa_supplicant/wpa_supplicant.conf

Dieser Befehl würde den wpa_supplicant als Hintergrunddienst (Option -B) mit dem Interface wlan0 und den Linux Wireless Extensions (Option -D wext ) starten. Die WPA-Konfiguration wird hierbei aus der Datei /etc/wpa_supplicant/wpa_supplicant.conf geholt.

Um den wpa_supplicant korrekt als Dienst zu starten, ist ein wenig "Feintuning" angesagt. Hierzu muss die Datei /etc/sysconfig/wpa_supplicant editiert werden. Um für o.g. Beispiel mit dem Interface wlan0 und den Wireless Extensions den Dienst möglich zu machen, fügt man folgende Zeilen in die Datei ein.

# vi /etc/sysconfig/wpa_supplicant
INTERFACES="-iwlan0"
DRIVERS="-Dwext"
# /sbin/chkconfig --level 2345 wpa_supplicant on

Es gibt eine einfache grafische Oberfläche zur Konfiguration des wpa_supplicant, das wpa_gui. Dieses Paket ist über das Fedora Extras-Repository erhältlich. Man kann es so installieren:

# yum install wpa_supplicant-gui