ipw2100: iwconfig ist ok aber IP-Adresse? [gelöst]

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
Tropezien
Beiträge: 5
Registriert: 30.06.2005 16:59:08

ipw2100: iwconfig ist ok aber IP-Adresse? [gelöst]

Beitrag von Tropezien » 30.06.2005 17:26:12

Hallo zusammen,

ich werde noch verrückt mit diesem Mistding hier. Ich habe einen ACER Travelmate 661LCi mit Intel Centrino M Technologie, also mit dem ipw2100 Mini-PCI eingebaut. Und jetzt habe ich noch einen Linksys WRT54GS-AccessPoint dazu und versuche das ganze Paket an den Router zu bringen, der wiederum zum DSL-Internet-Access routet.

Über 10-Base-T funktioniert das Ganze wunderbar.

Unter Windows XP habe ich den AccessPoint eingestellt und kann auch über den ipw2100 eine Verbindung zum Internet herstellen (Site-Download, etc.). IP-Adressvergabe über DHCP funktioniert. WEP-Codierung auch. Also alles in Butter sollte man meinen.Leider Fehlanzeige.
Ich habe den Laptop so konfiguriert, daß kein Interface automatische startet (/etc/network/interfaces hat außer für lo keine auto-Einträge). Netzwerkkabel sind keine angeschlossen. Das route-Kommando zeigt keine routing-Einträge.

Die /etc/network/interfaces sieht folgendermaßen aus:

Code: Alles auswählen

# /etc/network/interfaces -- configuration file for ifup(8), ifdown(8)

# The loopback interface
# automatically added when upgrading
auto lo
iface lo inet loopback
iface eth1 inet dhcp
Dann mache ich folgendes:

Code: Alles auswählen

root@jeordi:/etc# modprobe ipw2100
root@jeordi:/etc# lsmod |grep ipw
ipw2100               137668  0
ieee80211              35876  1 ipw2100
ieee80211_crypt         4808  3 ipw2100,ieee80211,ieee80211_crypt_wep
/var/log/messages zeigt, daß PCI-Device erkannt wurde.Ein erstes iwlist zeigt auch:

Code: Alles auswählen

root@jeordi:/etc# iwlist scan
lo        Interface doesn't support scanning.

eth2      Interface doesn't support scanning.

eth0      Interface doesn't support scanning.

eth1      Scan completed :
          Cell 01 - Address: 00:13:10:27:E4:68
                    ESSID:"SPONGEBOB"
                    Protocol:IEEE 802.11bg
                    Mode:Master
                    Channel:5
                    Encryption key:on
                    Bit Rate:54 Mb/s
                    Extra: Rates (Mb/s): 1 2 5.5 6 9 11 12 18 24 36 48 54
                    Signal level=-50 dBm
                    Extra: Last beacon: 20ms ago
Also der access-point ist da. Ich mache weiter mit einem:

Code: Alles auswählen

 root@jeordi:/etc# iwconfig eth1
eth1      unassociated  ESSID:off/any  Nickname:"ipw2100"
          Mode:Managed  Channel=0  Access Point: 00:00:00:00:00:00
          Bit Rate=0 kb/s   Tx-Power:off
          Retry:on   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
Klar ist ja noch nichts konfiguriert. Das kommt jetzt per Hand:

Code: Alles auswählen

 root@jeordi:/etc# iwconfig eth1 essid "SPONGEBOB"
root@jeordi:/etc# iwconfig eth1 key s:apFGi open
root@jeordi:/etc# iwconfig eth1

eth1      IEEE 802.11b  ESSID:"SPONGEBOB"  Nickname:"ipw2100"
          Mode:Managed  Frequency:2.432 GHz  Access Point: 00:13:10:27:E4:68
          Bit Rate=11 Mb/s   Tx-Power:off
          Retry:on   RTS thr:off   Fragment thr:off
          Encryption key:6170-4647-69   Security mode:open
          Power Management:off
          Link Quality=100/100  Signal level=-42 dBm
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:0   Missed beacon:0
Das sieht doch vielversprechend aus. Oder?
Aber jetzt kommt nach dem alles entscheidenden:

Code: Alles auswählen

root@jeordi:/etc# ifup eth1
Internet Software Consortium DHCP Client 2.0pl5
Copyright 1995, 1996, 1997, 1998, 1999 The Internet Software Consortium.
All rights reserved.

Please contribute if you find this software useful.
For info, please visit http://www.isc.org/dhcp-contrib.html

eth2: unknown hardware address type 24
eth2: unknown hardware address type 24
Listening on LPF/eth1/00:04:23:59:48:1b
Sending on   LPF/eth1/00:04:23:59:48:1b
Sending on   Socket/fallback/fallback-net
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 6
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 8
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 11
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 11
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 15
DHCPDISCOVER on eth1 to 255.255.255.255 port 67 interval 9
No DHCPOFFERS received.
No working leases in persistent database.

Exiting.

Failed to bring up eth1.
root@jeordi:/etc#


Die MAC-Adresse 00:04:23:59:48:1b gehört zum ipw2100.
Diese Mistteil bekommt keine IP-Adresse vom access-point. Aber warum? Unter Windows XP funktioniert das. Ich habe nichts an der access-point Einstellung geändert.
Da flackert keine LED am access-point, da kommt nichts bei raus.
Ich habs schon mit pump -i eth1 versucht. Fehlanzeige.
Ich habe schon statisch konfiguriert. Routing gesetzt. Fehlanzeige.
Ich habe schon die Usenet-groups durchgelesen, die Mailinglisten durchforstet. Nichts. Kein Hinweis, was das sein könnte.

Hat jemand von euch eine Ahnung, warum das blöde Ding irgendwie keine Verbindung zum access-point macht?

Liebend gerne würde ich den traffic-on-air belauschen, aber das geht eben leider nicht. Dann könnte ich den Unterschied zu Windows XP herausfinden.

Was mache ich falsch?

Ciao, Georg
Zuletzt geändert von Tropezien am 03.07.2005 20:35:46, insgesamt 1-mal geändert.

Tropezien
Beiträge: 5
Registriert: 30.06.2005 16:59:08

Beitrag von Tropezien » 01.07.2005 12:00:16

Okay, jetzt habe ich mal einen Ethereal-Trace gezogen, wenn WinXP über ipw2100 den access-point anspricht. Den Ethereal habe ich an einem der switch-ports des access-points drangehängt. Ich erhalte eine saubere DHCP-Anforderung:

Code: Alles auswählen

No.     Time        Source                Destination           Protocol Info
      6 53.355786   0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0x41692c7f

No.     Time        Source                Destination           Protocol Info
      7 53.358182   192.168.99.1          Broadcast             ARP      Who has 192.168.99.100?  Tell 192.168.99.1

No.     Time        Source                Destination           Protocol Info
      8 54.356535   192.168.99.1          255.255.255.255       DHCP     DHCP Offer    - Transaction ID 0x41692c7f

No.     Time        Source                Destination           Protocol Info
      9 54.456205   0.0.0.0               255.255.255.255       DHCP     DHCP Request  - Transaction ID 0x41692c7f

No.     Time        Source                Destination           Protocol Info
     10 54.459555   192.168.99.1          255.255.255.255       DHCP     DHCP ACK      - Transaction ID 0x41692c7f

No.     Time        Source                Destination           Protocol Info
     11 54.648459   192.168.99.100        Broadcast             ARP      Who has 192.168.99.100?  Gratuitous ARP
Unter Linux habe ich den ethereal direkt auf dem Laptop laufen lassen und bin über eines der pseudo-any-devices gegangen, da das Ethernet-Device noch nicht zur Verfügung war:

Code: Alles auswählen

No.     Time        Source                Destination           Protocol Info
      3 0.002624    0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0x141d2359

No.     Time        Source                Destination           Protocol Info
      4 4.001717    0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0x141d2359

No.     Time        Source                Destination           Protocol Info
      5 11.002655   0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0x141d2359
Da kommt also anscheinend nichts aus dem Interface heraus, soll heißen, daß nicht wirklich etwas auf dem "air-channel" übertragen wird.
Unter Windows-XP werden zwar noch ein paar weitere DHCP-options verwendet:

Code: Alles auswählen

    Option 53: DHCP Message Type = DHCP Discover
    Option 116: DHCP Auto-Configuration (1 bytes)
    Option 61: Client identifier
        Hardware type: Ethernet
        Client MAC address: 00:04:23:59:48:1b (192.168.99.100)
    Option 12: Host Name = "JEORDI"
    Option 60: Vendor class identifier = "MSFT 5.0"
    Option 55: Parameter Request List
        1 = Subnet Mask
        15 = Domain Name
        3 = Router
        6 = Domain Name Server
        44 = NetBIOS over TCP/IP Name Server
        46 = NetBIOS over TCP/IP Node Type
        47 = NetBIOS over TCP/IP Scope
        31 = Perform Router Discover
        33 = Static Route
        Unknown Option Code: 249
        43 = Vendor-Specific Information
    End Option
aber im Gegensatz zu den Optionen unter Linux:

Code: Alles auswählen

    Option 53: DHCP Message Type = DHCP Discover
    End Option
sehe ich das nicht als prinzipielles Problem.

Ich denke, daß hier irgendetwas mit der ipw2100 faul ist. Irgendetwas "weiß" Windows-XP über diese ACER-ipw2100 Karte, die Linux nicht "weiß". Ich werde da mal weiter suchen.

Das war schon mit dem Display von diesem Laptop (1400x1050) genau das gleiche. Unter Windows alles in Butter, unter Linux Fehlanzeige. Grund damals: der 855-Chipsatz wurde unter Windows-XP am BIOS vorbei direkt programmiert.

Ciao, Georg

Benutzeravatar
Joghurt
Beiträge: 5244
Registriert: 30.01.2003 15:27:31
Wohnort: Hamburg
Kontaktdaten:

Beitrag von Joghurt » 01.07.2005 15:02:13

Versuch es erstmal, es ohne Verschlüsselung zum laufen zu bekommen. Außerdem solltest du nach Möglichkeit das Kennwort immer in Hexadezimalform angeben, mit Klartextkennwörtern gibt es oft Probleme, da das Verfahren, aus einem String den Hexwert zu erzeugen, meines Wissens nach nicht standardisiert ist.

Tropezien
Beiträge: 5
Registriert: 30.06.2005 16:59:08

Beitrag von Tropezien » 01.07.2005 18:39:07

Joghurt hat geschrieben:Versuch es erstmal, es ohne Verschlüsselung zum laufen zu bekommen. Außerdem solltest du nach Möglichkeit das Kennwort immer in Hexadezimalform angeben, mit Klartextkennwörtern gibt es oft Probleme, da das Verfahren, aus einem String den Hexwert zu erzeugen, meines Wissens nach nicht standardisiert ist.
Man sollte es ja nicht glauben, aber in der Tat ohne Verschlüsselung funktioniert es. Vielen Dank erstmal für diesen Hinweis.

Aber nachdem das funktionierte geht's natürlich wieder in die andere Richtung: WEP eingeschaltet.

Code: Alles auswählen

>iwconfig eth1 essid "SPONGEBOB"
>iwconfig eth1 mode Managed
>iwconfig eth1 key 1234567890 open
> iwconfig eth1

eth1      IEEE 802.11b  ESSID:"SPONGEBOB"  Nickname:"ipw2100"
          Mode:Managed  Frequency:2.412 GHz  Access Point: 00:13:10:27:E4:68   
          Bit Rate=11 Mb/s   Tx-Power:off   
          Retry:on   RTS thr:off   Fragment thr:off
          Encryption key:1234-5678-90   Security mode:open
          Power Management:off
          Link Quality=100/100  Signal level=-49 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:2   Missed beacon:0
Und siehe da der access-point taucht auch auf. Aber jetzt kommt's dann wieder knüppeldick. Voller Freude mache ich ein ifup eth1, aber nichts geht. Zwar flackert die LED am access-point ein paar Mal, aber keine IP-Zuweisung. Wieder den ethereal angeschmissen und jetzt kommt heraus:

Code: Alles auswählen

No.     Time        Source                Destination           Protocol Info
      1 0.000000    0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0x474c390d

No.     Time        Source                Destination           Protocol Info
      2 0.002294    192.168.99.1          Broadcast             ARP      Who has 192.168.99.100?  Tell 192.168.99.1

No.     Time        Source                Destination           Protocol Info
      3 1.001956    192.168.99.1          255.255.255.255       DHCP     DHCP Offer    - Transaction ID 0x474c390d

No.     Time        Source                Destination           Protocol Info
      4 5.999502    0.0.0.0               255.255.255.255       DHCP     DHCP Discover - Transaction ID 0x474c390d

No.     Time        Source                Destination           Protocol Info
      5 6.001794    192.168.99.1          Broadcast             ARP      Who has 192.168.99.100?  Tell 192.168.99.1

No.     Time        Source                Destination           Protocol Info
      6 6.995588    192.168.99.1          255.255.255.255       DHCP     DHCP Offer    - Transaction ID 0x474c390d
Das ist doch unglaublich. Jetzt kommt kein DHCP-Request von eth1 an den access-point. Der hält ihm die IP hin, aber er nimmt sie nicht. Ich werde noch verrückt.

Weiß jemand, was dem Teil jetzt fehlt.

Übrigens habe ich kurz mal auf kernel 2.6.12 upgedated gehabt. Das dafür gebaute ipw2100-Modul mag aber den obigen key-Befehl überhaupt nicht, bzw. nimmt ihn zwar an, setzt aber den key nicht.

Ciao, Georg

Tropezien
Beiträge: 5
Registriert: 30.06.2005 16:59:08

Beitrag von Tropezien » 03.07.2005 20:44:38

Haha, heureka.

Ich habe die Original-Source von http://ipw2100.sourceforge.net/ gezogen. Die patches für wpa_supplicant und doppeltem define des is_multicast_ether_addr() hinzugenommen und alles mit

Code: Alles auswählen

cd /usr/src/ipw2100-1.1.0
make KSRC=/usr/src/linux
su
make KSRC=/usr/src/linux install
compiliert und installiert.
Dann habe ich noch den initialen Debug-Level in ipw2100.c auf 0x3ff gestellt, so daß ich gleich sehen konnte, was da so abläuft.
Jetzt funktioniert das bereits oben geschilderte Procedere mit iwconfig essid und iwconfig key mit anschließendem ifup eth1.

Im Gegensatz zur ipw2100-Version aus driver-2.6.12-kanotix-1 wird jetzt auch der key bei iwconfig angzeigt.

Code: Alles auswählen

eth1      IEEE 802.11b  ESSID:"SPONGEBOB"  Nickname:"ipw2100"
          Mode:Managed  Frequency:2.412 GHz  Access Point: 00:13:10:27:E4:68   
          Bit Rate=11 Mb/s   Tx-Power:off   
          Retry:on   RTS thr:off   Fragment thr:off
          Encryption key:1234-5678-90   Security mode:open
          Power Management:off
          Link Quality=100/100  Signal level=-49 dBm  
          Rx invalid nwid:0  Rx invalid crypt:0  Rx invalid frag:0
          Tx excessive retries:0  Invalid misc:38   Missed beacon:0

Problem war dann noch, daß ich im access-point als key-index eine 2 eingetragen hatte, dann aber in /var/log/debug sehen konnte, daß der ipw2100 einen Index 0 überträgt. Also habe ich im access-point auf key-index 1 gestellt (zählt von 1-4) und dann hat's geklappt.

Ciao

Antworten