Orinoco VS. ndiswrapper

Fórumok

Sziasztok...!

Adott egy Linksys PKW-WMP11 -es típusú, 802.11b hálózati szabványt támogató kártya. Meghajta a Linux kernelben található orinoco_pci driver, illetve az ndiswrapper segítségével is sikerült bele életet lehetnem. Nem tudom, melyiket lenne a jobb használni, melyik nyút több lehetőséget, és stabilabb kapcsolatot.

Pl., ha az orinoco_pci driverrel működtetem a kártyát, és szeretnék frekvenciát váltani, ezt kapom:

root@pocok:~# iwconfig eth1 channel 6
Error for wireless request "Set Frequency" (8B04) :
SET failed on device eth1 ; Device or resource busy.

Ha pedig az ndiswrapper -rel hajtom meg, ez lesz az eredmény:

root@pocok:~# iwconfig eth1 channel 6
Error for wireless request "Set Frequency" (8B04) :
SET failed on device eth1 ; Invalid argument.

Lehet, hogy nincs is különbség a kétféle driver tudása közt?

Az lspci ezt mondja a kártyáról:
Network Controller: Intersil Corporation Prism 2.5 wavelan chipset (rev 01.)

Köszönöm a segítségeteket.

Hozzászólások

mukodik 1altalan? Kapcsolat letrejon?
ifup-kor mi irodik a syslog-ba?

dmesg mit ír ki, amikor megpróbálod változtatni a channelt?

Aztán lehet, hogy másik kártya lesz belőle, ami mondjuk tudja a 802.11g -t is. Érdemes lenne másik kártyára váltani, vagy maradjak ennél? És ha váltok, milyen kártyát válasszak a "G" -sek közül, amit maradéktalanul kezel a Linux, és árban/minőségben is kedvező?

--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

Nekem egy haaver azt mondta, hogy csak monitor modban lehet channelt valtoztatni, _HA_ tamogatja a kartyad a monitor modot.

Ahogy néztem, támogatja a monitor módot, mindenesetre, ha így van, akkor gáz. Mi van olyankor, ha aza lapértelmezett csatorna túl zajos, és másikra szeretnék váltani?

--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

!Szerintem! inkább a hostap driverrel próbálkozz, bár úgy tűnik hogy neked nem driverproblémád van. A prism 2.5 linux alatt nativan támogatott, úgyhogy pls aki nem ismeri a chipet az ne válaszoljon vaktában. Egyébként is a topicnyitóból kiderül hogy volt a kártyához a kernelben is nativ driver... tehát: próbálkozz előszöris azzal hogy modul betölt, a kártyát az ifconfig akarmi up paranccsal bekapcsolod, utána iwconfig mode managed essid foo channel 5. Ha van hibaüzenet ifconfig akarmi down és újra az iwconfigos parancs. Valamelyik verziónak menni kell. Némely esetben nem lehet paramétereket váltani ha él/nem él a kártya.

Nos, helyzetjelentés.

Először is, csatornaváltás, orinoco driverrel, felhúzott, illetve lelőtt hálókártya mellett:


root@pocok:~# modprobe orinoco
root@pocok:~# modprobe orinoco_pci
root@pocok:~# lsmod | grep orinoco
orinoco_pci             7168  0
orinoco                43156  1 orinoco_pci
hermes                  7808  2 orinoco_pci,orinoco
root@pocok:~# ifconfig eth1 up
root@pocok:~# iwconfig eth1 mode managed essid pocok channel 5
Error for wireless request "Set Frequency" (8B04) :
    SET failed on device eth1 ; Device or resource busy.
root@pocok:~# ifconfig eth1 down
root@pocok:~# iwconfig eth1 mode managed essid pocok channel 5
Error for wireless request "Set Frequency" (8B04) :
    SET failed on device eth1 ; Device or resource busy.

a dmesg -be csak a hálókártya felhúzása, és lelövése került bele.

Ugyanezt kipróbáltam ndiswapper -rel:


root@pocok:~# modprobe ndiswrapper
root@pocok:~# lsmod | grep orinoco
root@pocok:~# lsmod | grep ndiswrapper
ndiswrapper           170512  0
usbcore               129668  5 ndiswrapper,usb_storage,usbhid,uhci_hcd
root@pocok:~# ifconfig eth1 up
root@pocok:~# iwconfig eth1 mode managed essid pocok channel 5
Error for wireless request "Set Frequency" (8B04) :
    SET failed on device eth1 ; Invalid argument.
root@pocok:~# ifconfig eth1 down
root@pocok:~# iwconfig eth1 mode managed essid pocok channel 5
Error for wireless request "Set Frequency" (8B04) :
    SET failed on device eth1 ; Invalid argument.

dmesg -be ez került csatornaváltási kísérletkor:

[4296054.227000] ndiswrapper (iw_set_freq:370): setting configuration failed (C0010015)

ez pedig akkor, amikor eltávolítottam az ndiswrapper modult:

[4296146.344000] ndiswrapper: device eth1 removed
[4296156.467000] unregister_netdevice: waiting for eth1 to become free. Usage count = 7
[4296166.630000] unregister_netdevice: waiting for eth1 to become free. Usage count = 7
[4296167.920000] ACPI: PCI interrupt for device 0000:00:0f.0 disabled
[4296167.921000] Badness in remove_proc_entry at fs/proc/generic.c:705
[4296167.922000] [] remove_proc_entry+0x113/0x120
[4296167.922000] [] wrap_procfs_remove+0x24/0x30 [ndiswrapper]
[4296167.922000] [] module_cleanup+0x1f/0x40 [ndiswrapper]
[4296167.923000] [] sys_delete_module+0x11e/0x150
[4296167.923000] [] sys_munmap+0x3a/0x60
[4296167.923000] [] sysenter_past_esp+0x54/0x79
[4296167.924000] ndiswrapper (ntoskernel_exit:239): Windows driver didn't free all MDLs; freeing them now

monitor-módba kapcsolva ndiswrapper -rel:


root@pocok:~# iwconfig eth1 mode monitor essid pocok channel 5
Error for wireless request "Set Mode" (8B06) :
    SET failed on device eth1 ; Invalid argument. 

dmesg -be nem került semmi.

orinoco driver beüzemelve:


[4296271.729000] orinoco_pci: Detected device 0000:00:0f.0, mem:0xec040000-0xec040fff, irq 10
[4296272.690000] eth1: Hardware identity 8013:0000:0001:0000
[4296272.691000] eth1: Station identity  001f:0002:0001:0004
[4296272.692000] eth1: Firmware determined as Intersil 1.4.2
[4296272.692000] eth1: Ad-hoc demo mode supported
[4296272.693000] eth1: IEEE standard IBSS ad-hoc mode supported
[4296272.693000] eth1: WEP supported, 104-bit key
[4296272.694000] eth1: MAC address 00:06:25:09:B3:81
[4296272.694000] eth1: Station name "Prism  I"
[4296272.695000] eth1: ready
[4296272.880000] ADDRCONF(NETDEV_UP): eth1: link is not ready
[4296272.881000] bridge-eth1: enabling the bridge
[4296272.882000] bridge-eth1: up 

orinoco driverrel monitor módba váltás sikeres, hibaüzenet nincs.

A kérdés már csak az: ha egy adott csatorna zajos, és másikat szeretnénk használni, milyen módon lehet váltani?
--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

Közben kipróbáltam Windows XP alatt is a kártyát, a saját eszközprogramjával, illetve a Windows saját programjával is (Eszközkezelő). A saját programja Ad-hoc módban engedte a csatornaváltást, infrastruktúra módban nem.
Az Eszközkezelő mindkét módban engedte a csatornaváltást.

Akkor most mi a lőcs van? :)

--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

Managed (infrastruktura) modban te egy APhez kapcsolodsz, ssid alapjan, es ez meg is hatarozza a csatornat, tehat itt nincs ertelme atallitani.
Ad-hoc, illetve master modban van (ez utobbiban te viselkedsz ugy, mint egy access point), itt lehet is allitgatni. Az utobbihoz viszont nem eleg az alap orinoco driver, de ha jol tudom a kartyadat meghajtja a hostap driver is, az okosabb.

Köszönöm a választ. Még nem tudom, hogy master módban tud -e működni a kártya (ha jól tudom, nem mindegyik tudja ezt a módot), de mindenképpen kipróbálom.
Néztem a hostap drivert, de nem akarta működtetni a kártyát, mindenesetre tovább próbálkozom vele.

A rendszer, amellyel próbálkozom, Ubuntu 6.06, az ndiswrapper pedig 1.17 -es verzió, forrásból.

--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

Nos, kipróbáltam a dolgokat.
Az ndiswrapper félre van téve, mert minek. Az orinoco driver csak ad-hoc, managed, és monitor módba enged váltani (csatornaváltás csak monitor módban), viszont a hostap driverrel szépen működik, egy gyors próbálgatással minden módot enged, és a csatornaváltást is támogatja (managed módban is).

Szóval örülök, hogy az alapfunkciók tekintetében a kedvenc operációs rendszerem alatt háromféle módon (orinoco, hostap, ndiswrapper) működtetni a kártyát. Igaz, "csak" b -s a kártya, de úgy gondolom, mindenképpen jó választás Linux alá. :)
Vagyis, eddig úgy tűnik. :)

--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

Ha valaki érdekelt ilyesféle cserében, akkor némi készpénz ráfizetése mellett szivesen átcserélném olyan kártyára, amely tudja a 802.11g -t is, illetve a topicban vázolt paraméterekkel rendelkezik (natívan működik Linux alatt ndiswrapper nélkül, hostap és kismet kompatibilis, nem csak az "ad-hoc" és "infrastructure" módot támogatja, illetve külső antennával rendelkezik).

Igazából valami Prism chipset -tel rendelkező kártya lenne szerintem a legjobb. :)

Részleteket itt, vagy a kapcsolatfelvételi űrlapon. :)

A kártyámhoz megvan a külső bontantenna, és a driver-cd is.

--- GTK programozás C nyelven ---
http://hu.wikibooks.org/wiki/GTK%2B_programoz%C3%A1s_C_nyelven

Egy kis segítségre lenne szükségem. Az alábbi hibaüzenetet kapom a modprobe ndiswrapper futtatása után a dmesgt megnézve:

ndiswrapper: module not supported by Novell, setting U taint flag.
ndiswrapper version 1.23 loaded (preempt=no,smp=yes)
ndiswrapper (import:241): unknown symbol: ntoskrnl.exe:'ZwEnumerateKey'
ndiswrapper (import:241): unknown symbol: NDIS.SYS:'NdisCloseAdapter'
ndiswrapper (import:241): unknown symbol: NDIS.SYS:'NdisRequest'
ndiswrapper (import:241): unknown symbol: NDIS.SYS:'NdisOpenAdapter'
ndiswrapper (import:241): unknown symbol: NDIS.SYS:'NdisDeregisterProtocol'
ndiswrapper (import:241): unknown symbol: NDIS.SYS:'NdisRegisterProtocol'
ndiswrapper (load_sys_files:214): couldn't prepare driver 'netcbg54'
ndiswrapper (load_wrap_driver:113): loadndiswrapper failed (65280); check system log for messages from 'loadndisdriver'

ndiswrapper -v
utils version: 1.8
driver version: 1.23
vermagic: 2.6.16.13-4-smp SMP 586 REGPARM gcc-4.1

Suse linux 10.1-et használok. A segítséget előre is köszönöm.

Prism chipsethez legjobb választás jelen pillanatban a hostap IMHO.

hella, acx111-hez is jó lenne a hostap?
mindenképp master módba kellene használnom, de ndiswrapper nem enged.. még monitort sem!
d-link dwl-g520+
acx1xx driverrel meg nem megy egyaltalan.. :(

szerk: ja hát persze h nem...:
http://ndiswrapper.sourceforge.net/mediawiki/index.php/FAQ:

"-Is master mode or promiscuous mode supported?
-No! NDIS doesn't support Master/Repeater/Monitor modes. The only modes supported are Ad-Hoc and Managed."

-minden, aminek kezdete van, véget is ér-