| | #1 (permalink) |
| Erfahrener Benutzer Registriert seit: 08.07.2009
Beiträge: 200
Abgegebene Danke: 1
Erhielt 14 Danke für 12 Beiträge
| ich wollte mal ad-hoc WLAN-Netze angehen (für Tethering etc.); hab mir dazu die wireless_tools compiled, vor allem iwconfig ist nützlich. iwlist funktioniert leider nicht, ist aber verschmerzbar. Link: http://static.volatilevoid.net/wirel...android.tar.gz Mit Code: iwconfig eth0 mode ad-hoc iwconfig eth0 essid whatever ifconfig eth0 192.168.0.1 Das Problem ist allerdings, dass offenbar wpa_supplicant (oder irgendwas anderes) im Hintergrund ständig wieder auf managed mode zurückschaltet, sodass die Verbindung wenn überhaupt immer nur kurz zustande kommt. Wenn man wpa_supplicant abschießt, ist auch das Interface weg und im Menü steht WLAN als disabled. Ich hab auch probiert, das ad-hoc-Netz in /data/misc/wifi/bcm_supp.conf einzutragen; es wird dann zwar in der Liste angezeigt, aber immer als außer Reichweite und ich kann nicht verbinden. Hat irgendwer eine Idee, wie man dem Android-Framework die WLAN-Verwaltung wegnehmen kann? Bei den HTC-Geräten gibts ja tiwlan.ini, aber beim Galaxy nicht. |
| | |
| Folgender Benutzer bedankt sich bei leromarinvit für diesen Beitrag: | Lubomir (10.09.2009) |
| | #2 (permalink) | |
| Erfahrener Benutzer Registriert seit: 16.07.2009
Beiträge: 206
Abgegebene Danke: 1
Erhielt 21 Danke für 20 Beiträge
| Zitat:
Ich rede hier bestimmt Unsinn, da ich mich nicht so viel mit WLAN unter Linux auskenne. Aber steht nichts im init.rc, das durch eine Änderung dessen Zeile, dies bewältigen könnte? | |
| | |
| | #3 (permalink) |
| Erfahrener Benutzer Registriert seit: 08.07.2009
Beiträge: 200
Abgegebene Danke: 1
Erhielt 14 Danke für 12 Beiträge
|
Tatsächlich! Code: on property:init.svc.wpa_supplicant=stopped
stop dhcpcd
on property:init.svc.dhcpcd=stopped
dhcpcd -k eth0
# end of wifi |
| | |
| | #4 (permalink) |
| Erfahrener Benutzer Registriert seit: 08.07.2009
Beiträge: 200
Abgegebene Danke: 1
Erhielt 14 Danke für 12 Beiträge
|
Leider doch nicht so einfach. Hab die paar Zeilen auskommentiert, aber es verhält sich immer noch gleich. ifrename hab ich auch probiert: wenn man ein passendes /etc/iftab erstellt und eth0 umbenennt, pfuscht Android nicht mehr rein. Man kann also problemlos auf ad-hoc stellen und es bleibt auch so. Leider hab ich es aber damit dann nicht mehr geschafft tatsächlich eine Verbindung zu bekommen... Edit: ratet mal, wie ich gerade im Internet bin ![]() ![]() ![]() Hab eigentlich nichts anders gemacht als vorher, diesmal ging die Verbindung. Oder doch, aber der einzige Unterschied war, dass ich jetzt wieder den alten Kernel drauf hab, wo die Sachen in init.rc nicht auskommentiert sind. Ist noch nicht ganz eine "One-Click-Lösung": man braucht einen Kernel mit Netfilter/iptables-Support (zb hier) und muss dann ein paar Module manuell laden: Code: # lsmod ipt_MASQUERADE 2912 1 - Live 0xbf067000 iptable_nat 4936 1 - Live 0xbf064000 nf_nat 15894 2 ipt_MASQUERADE,iptable_nat, Live 0xbf05f000 nf_conntrack_ipv4 13900 3 iptable_nat,nf_nat, Live 0xbf05a000 nf_conntrack 54912 4 ipt_MASQUERADE,iptable_nat,nf_nat,nf_conntrack_ipv4, Live 0xbf04b000 ipt_REJECT 3136 1 - Live 0xbf026000 xt_multiport 3360 0 - Live 0xbf024000 xt_owner 2944 1 - Live 0xbf022000 iptable_filter 3040 1 - Live 0xbf020000 ip_tables 10928 2 iptable_nat,iptable_filter, Live 0xbf01c000 x_tables 13896 6 ipt_MASQUERADE,iptable_nat,ipt_REJECT,xt_multiport,xt_owner,ip_tables, Live 0xbf017000 (Standard-Module:) bcm4325 135600 0 - Live 0xbf028000 multipdp 13408 2 - Live 0xbf012000 dpram 67384 6 - Live 0xbf000000 Code: cat /etc/iftab wlan mac xx:xx:xx:xx:xx:xx ifconfig eth0 down ifrename iwconfig wlan mode ad-hoc iwconfig wlan essid whatever ifconfig wlan 192.168.0.1 echo 1 >/proc/sys/net/ipv4/ip_forward Edit: natürlich das wichtigste vergessen... iptables -t nat -A POSTROUTING -j MASQUERADE PS: Das Galaxy ist bis jetzt das mit Abstand schnellste HSDPA-Gerät, das ich hab. Laut speedtest.net 4.18 mbps down - mindestens doppelt so schnell wie die diversen Huawei-Sticks. Und 1.21 mbps up - HSUPA funktioniert also auch gut. Geändert von leromarinvit (11.09.2009 um 20:28 Uhr) |
| | |
| Folgender Benutzer bedankt sich bei leromarinvit für diesen Beitrag: | Hanneskitz (12.09.2009) |
| | #5 (permalink) |
| Neuer Benutzer Registriert seit: 12.09.2009
Beiträge: 5
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
Ich habe mal eine vielleicht ganz doofe Frage. ![]() Und zwar wie genau hast du die wireless-tools für dein Android-Phone compiliert und installiert. Mit adb? Oder auf dem PC compiliert und dann aufs Handy? Naja ich hoffe du kannst mir das vielleicht genauer beschreiben. Vielen Dank schon mal und MFG r0w3zz |
| | |
| | #6 (permalink) |
| Erfahrener Benutzer Registriert seit: 08.07.2009
Beiträge: 200
Abgegebene Danke: 1
Erhielt 14 Danke für 12 Beiträge
|
Auf meinem PC mit einem Cross-Compiler; aber nicht mit der Android-Toolchain, weil die libc zu verstümmelt ist für die meisten Programme. Hab einfach eine arm-eabi-glibc Toolchain genommen (die ich schon hatte) und statisch gelinkt. Source ist im Tarball dabei, die paar Makefile-Änderungen sind auch eingetragen (LDFLAGS=-static, libm abschalten).
|
| | |
| | #7 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 31.07.2009
Beiträge: 75
Abgegebene Danke: 1
Erhielt 25 Danke für 13 Beiträge
|
@r0w3zz: er wird ein debian draufgemacht haben (z.b. so Debian auf dem Galaxy). Ich hab's noch nicht ganz hinbekommen (irgend was fehlt) aber das hier koennte helfen: apt-get install wpasupplicant wpa_cli -p /data/misc/wifi/ scan_results >reply: networks in range add_network >reply e.g. "0" set_network 0 ssid "olsr.freifunk.net" set_network 0 bssid 02:ca:ff:ee:ba:be set_network 0 key_mgmt NONE >reply: OKOKOK list_networks >should list the network enable_network 0 >reply: OK select_network 0 Zum lesen: Red Hat Knowledgebase: What is the wpa_cli command and how do I use it? // Sven-Ola |
| | |
| | #8 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 31.07.2009
Beiträge: 75
Abgegebene Danke: 1
Erhielt 25 Danke für 13 Beiträge
|
Got it. Wer lesen kann ist klar im Vorteil (cat /system/etc/wifi/wpa_supplicant.conf). Jedenfalls geht es auch ohne ein fettes Debian da drauf, denn der wpa_cli ist Teil der Android-Installation. Root-Shell aufrufen und dann so: Wifi einschalten und adb shell aufrufen su -c "/system/bin/wpa_cli -p /data/misc/wifi/" (kommt die wpa_cli Kommandozeile) scan_results (Zeigt vorhandene Netze) add_network (Neues Netz hinzufugen, zeigt Nummer an, bei mir "2") set_network 2 mode 1 set_network 2 ssid "olsr.freifunk.net" set_network 2 bssid 02:ca:ff:ee:ba:be set_network 2 frequency 2457 set_network 2 key_mgmt NONE enable_network 2 (Das neue Netz konfigurieren) ap_scan 2 (Das war das fehlende Teil: damit geht es dann gleich) select_network 2 (Neues Netz auswählen, Antwort "Trying to assoc") ap_scan 2 (Manchmal muss man das zweimal) Und so sieht es dann bei mir aus: Code: $ su -c "/system/bin/wpa_cli -p /data/misc/wifi/" wpa_cli v0.5.10 Copyright (c) 2004-2008, Jouni Malinen <j@w1.fi> and contributors This program is free software. You can distribute it and/or modify it under the terms of the GNU General Public License version 2. Alternatively, this software may be distributed under the terms of the BSD license. See README and COPYING for more details. Selected interface 'eth0' Interactive mode > <2>CTRL-EVENT-SCAN-RESULTS Ready scan_results bssid / frequency / signal level / flags / ssid 00:16:38:e6:38:31 2412 -49 [WPA2-PSK-TKIP+CCMP] Sven-Ola 00:16:38:e6:38:31 2412 -50 [WPA2-PSK-TKIP+CCMP] Sven-Ola 02:ca:ff:ee:ba:be 2457 -40 [IBSS] olsr.freifunk.net > <2>CTRL-EVENT-SCAN-RESULTS Ready add_network 2 > <2>CTRL-EVENT-SCAN-RESULTS Ready set_network 2 mode 1 OK > set_network 2 ssid "olsr.freifunk.net" OK > set_network 2 bssid 02:ca:ff:ee:ba:be OK > set_network 2 frequency 2457 OK > set_network 2 key_mgmt NONE OK > enable_network 2 OK > ap_scan 2 <2>CTRL-EVENT-SCAN-RESULTS Ready OK > select_network 2 OK <2>CTRL-EVENT-STATE-CHANGE id=1 state=0 > <2>CTRL-EVENT-DISCONNECTED - Disconnect event - remove keys <2>CTRL-EVENT-STATE-CHANGE id=-1 state=0 <2>CTRL-EVENT-STATE-CHANGE id=-1 state=2 <2>Trying to associate with SSID 'olsr.freifunk.net' <2>CTRL-EVENT-STATE-CHANGE id=-1 state=3 <2>CTRL-EVENT-STATE-CHANGE id=2 state=4 <2>Associated with 02:ca:ff:ee:ba:be <2>CTRL-EVENT-STATE-CHANGE id=2 state=7 <2>CTRL-EVENT-CONNECTED - Connection to 02:ca:ff:ee:ba:be completed (reauth) [id=2 id_str=] <2>CTRL-EVENT-SCAN-RESULTS Ready <2>CTRL-EVENT-STATE-CHANGE id=2 state=8 <2>CTRL-EVENT-DISCONNECTED - Disconnect event - remove keys <2>CTRL-EVENT-STATE-CHANGE id=-1 state=8 <2>CTRL-EVENT-STATE-CHANGE id=-1 state=2 <2>CTRL-EVENT-SCAN-RESULTS Ready <2>CTRL-EVENT-SCAN-RESULTS Ready Code: root@galaxy:/# ifconfig eth0 104.198.65.66
root@galaxy:/# iwconfig
lo no wireless extensions.
eth0 IEEE 802.11-DS ESSID:"olsr.freifunk.net" Nickname:""
Mode:Ad-Hoc Frequency:2.457 GHz Cell: 02:CA:FF:EE:BA:BE
Bit Rate=54 Mb/s Tx-Power:32 dBm
Retry min limit:7 RTS thr:off Fragment thr:off
Encryption key:off
Power Managementmode:All packets received
Link Quality=5/5 Signal level=-39 dBm Noise level=-92 dBm
Rx invalid nwid:0 Rx invalid crypt:0 Rx invalid frag:0
Tx excessive retries:0 Invalid misc:0 Missed beacon:0
root@galaxy:/# ping 104.198.65.65
PING 104.198.65.65 (104.198.65.65) 56(84) bytes of data.
64 bytes from 104.198.65.65: icmp_seq=1 ttl=64 time=19.1 ms
^C
--- 104.198.65.65 ping statistics ---
1 packets transmitted, 1 received, 0% packet loss, time 1ms
rtt min/avg/max/mdev = 19.190/19.190/19.190/0.000 ms
root@galaxy:/# wget -O /dev/null http://104.198.65.65/cgi-bin-dev-zero.bin
--2009-09-13 10:27:19-- http://104.198.65.65/cgi-bin-dev-zero.bin
Connecting to 104.198.65.65:80... connected.
HTTP request sent, awaiting response... 200 OK
Length: unspecified [application/octet-stream]
Saving to: `/dev/null'
[ <=> ] 13,269,256 1.21M/s ^C |
| | |
| Folgender Benutzer bedankt sich bei sven-ola für diesen Beitrag: | skrj2e (15.09.2009) |
| | #9 (permalink) |
| Neuer Benutzer Registriert seit: 10.07.2009
Beiträge: 7
Abgegebene Danke: 1
Erhielt 0 Danke für 0 Beiträge
|
@sven-ola bei mir kommt nach "wpa_cli" immer so: "Could not connect to wpa_supplicant - re-trying" könnte es sein, dass wpa_supplicant nicht gestarted wird? ich kann aber durch "ps" wpa_supplicant in der Liste ablesen. noch eine Frage, braucht man noch einen Kernel mit Netfilter/iptables-Support wie leromarinvit gesagt hat, wenn man wpa_supplicant angepass hat? |
| | |
| | #10 (permalink) |
| Android-Hilfe.de Mitglied Registriert seit: 31.07.2009
Beiträge: 75
Abgegebene Danke: 1
Erhielt 25 Danke für 13 Beiträge
|
Hey, du hast bestimmt das "-p /data/misc/wifi" vergessen. Dann versucht es wpa_cli mit dem falschem Pfad fuer den Socket. Andernfalls unterscheidet sich dein Galaxy von meinem und es hilft evnt. ein "lsof -n 2>/dev/null | grep wpa_supp" oder so. Der Kernel-Netfilter-Support hat nichts mit dem wpa_supplicant zu tun. Der interagiert nur mit den Linux-Wireless-Extensions. Ich wuerde daher erwarten, dass es egal ist ob der Kernel den Netfilter kennt. // Sven-Ola |
| | |
![]() |
|
| Themen-Optionen | |
| Ansicht | |
| |
| ||||
| Thema | Autor | Forum | Antworten | Letzter Beitrag |
| Connection / Internet per Ad Hoc | Hagbard235 | Android Allgemein | 7 | 01.09.2010 14:28 |
| Android Market per Wifi?? [Gelöst] | sophie | HTC Magic Forum | 9 | 10.09.2009 09:26 |
| WiFi Indikator | Axel_Foley | Samsung Galaxy (I7500) Forum | 12 | 10.08.2009 17:10 |
| Im Standby: WiFi aus, 3G an? [Gelöst] | XEP-624 | Samsung Galaxy (I7500) Forum | 8 | 09.08.2009 14:33 |
| G1 - Aktivierung über Wifi | zx128 | T-Mobile G1 Forum | 2 | 02.02.2009 18:19 |