#1 Le 13/04/2015, à 05:58
- tozman47
Ubuntu server|Carte Marvell Libertas 88w8335=>NDISwrapper+wpa_supplica
Bonjour tout le monde,
Accrochez vous, parce que ça va être sport !
J'ai un vieux PC que je voudrais transformer en serveur. Donc j'ai installé dessus Ubuntu Server
14.04.1. L'idée c'est de pouvoir le caler n'importe où dans la maison sans avoir besoin de le brancher au routeur qui est dans le salon, donc forcément j'ai besoin d'une connexion Wifi. Jusque là, tout va bien.
Le 1er hic c'est que ma carte wifi n'est pas prise en charge automatiquement. Donc je fais un petit :
lspci
...
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88w8335 [Libertas] 802.11b/g Wireless (rev 03)
...
Donc Marvell Libertas 88w8335, dans la doc ubuntu sur les cartes wifi (http://doc.ubuntu-fr.org/wifi_liste_carte#l) on dit qu'il faut que j'installe le driver Mrv8000c.inf avec NDISwrapper. Donc je suis la procédure et je check avec
ndiswrapper -l
mrv8000c : driver installed
device (11AB:1FAA) present
J'ai juste un léger doute sur la partie où il faut "décharger le module qui gère par défaut votre carte Wi-Fi", parce que je n'ai pas trouvé de tel module. Il "semblerait" que de base il n'y en ait pas sur Ubuntu Server (lors de l'installation, j'ai choisi une connexion ethernet par défaut).
Mais si je fais:
lspci -k
...
02:00.0 Ethernet controller: Marvell Technology Group Ltd. 88w8335 [Libertas] 802.11b/g Wireless (rev 03)
Subsystem: Netgear WG311v3 802.11g Wireless PCI Adapter
Kernel driver in use: ndiswrapper
...
C'est que donc ndiswrapper est utilisé comme driver, et que aussi il a été chargé dans le kernel.
Au cas où, voici les modules chargés, on y retrouve bien ndiswrapper:
lsmod
Module Size Used by
nls_iso8859_1 12617 1
uas 22631 0
usb_storage 52721 2 uas
dm_crypt 22653 0
ppdev 17391 0
dcdbas 14448 0
snd_intel8x0 37321 0
snd_ac97_codec 105860 1 snd_intel8x0
ac97_bus 12642 1 snd_ac97_codec
snd_pcm 87194 2 snd_ac97_codec,snd_intel8x0
snd_timer 28648 1 snd_pcm
snd 66670 4 snd_ac97_codec,snd_intel8x0,snd_timer,snd_pcm
serio_raw 13251 0
soundcore 14599 1 snd
joydev 17113 0
lpc_ich 16877 0
parport_pc 32021 1
shpchp 32143 0
i82875p_edac 12853 0
mac_hid 13059 0
edac_core 45743 2 i82875p_edac
ndiswrapper 192915 0
lp 13299 0
parport 40836 3 lp,ppdev,parport_pc
raid10 47588 0
raid456 85170 0
async_raid6_recov 12971 1 raid456
async_memcpy 12645 2 raid456,async_raid6_recov
async_pq 13096 2 raid456,async_raid6_recov
async_xor 12942 3 async_pq,raid456,async_raid6_recov
async_tx 13251 5 async_pq,raid456,async_xor,async_memcpy,async_raid6_recov
xor 26221 1 async_xor
raid6_pq 97455 2 async_pq,async_raid6_recov
raid1 34949 0
multipath 12977 0
linear 12766 0
raid0 17525 2
hid_logitech_dj 18077 0
nouveau 1067426 1
mxm_wmi 12893 1 nouveau
psmouse 91236 0
wmi 18689 2 mxm_wmi,nouveau
video 19475 1 nouveau
i2c_algo_bit 13197 1 nouveau
ttm 76999 1 nouveau
drm_kms_helper 55007 1 nouveau
usbhid 47035 0
e100 35960 0
hid 95946 2 usbhid,hid_logitech_dj
pata_acpi 12901 0
drm 255469 4 ttm,drm_kms_helper,nouveau
mii 13654 1 e100
Module Size Used by
nls_iso8859_1 12617 1
uas 22631 0
usb_storage 52721 2 uas
dm_crypt 22653 0
ppdev 17391 0
dcdbas 14448 0
snd_intel8x0 37321 0
snd_ac97_codec 105860 1 snd_intel8x0
ac97_bus 12642 1 snd_ac97_codec
snd_pcm 87194 2 snd_ac97_codec,snd_intel8x0
snd_timer 28648 1 snd_pcm
snd 66670 4 snd_ac97_codec,snd_intel8x0,snd_timer,snd_pcm
serio_raw 13251 0
soundcore 14599 1 snd
joydev 17113 0
lpc_ich 16877 0
parport_pc 32021 1
shpchp 32143 0
i82875p_edac 12853 0
mac_hid 13059 0
edac_core 45743 2 i82875p_edac
ndiswrapper 192915 0
lp 13299 0
parport 40836 3 lp,ppdev,parport_pc
raid10 47588 0
raid456 85170 0
async_raid6_recov 12971 1 raid456
async_memcpy 12645 2 raid456,async_raid6_recov
async_pq 13096 2 raid456,async_raid6_recov
async_xor 12942 3 async_pq,raid456,async_raid6_recov
async_tx 13251 5 async_pq,raid456,async_xor,async_memcpy,async_raid6_recov
xor 26221 1 async_xor
raid6_pq 97455 2 async_pq,async_raid6_recov
raid1 34949 0
multipath 12977 0
linear 12766 0
raid0 17525 2
hid_logitech_dj 18077 0
nouveau 1067426 1
mxm_wmi 12893 1 nouveau
psmouse 91236 0
wmi 18689 2 mxm_wmi,nouveau
video 19475 1 nouveau
i2c_algo_bit 13197 1 nouveau
ttm 76999 1 nouveau
drm_kms_helper 55007 1 nouveau
usbhid 47035 0
e100 35960 0
hid 95946 2 usbhid,hid_logitech_dj
pata_acpi 12901 0
drm 255469 4 ttm,drm_kms_helper,nouveau
mii 13654 1 e100
Donc pour voir si déjà le matériel est reconnu, je fait un :
ifconfig
...
wlan0 Link encap:Ethernet HWaddr XX:XX:XX:XX:XX:XX
UP BROADCAST MULTICAST MTU:1500 Metric:1
Packets reçus:0 erreurs:0 :0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
Octets reçus:0 (0.0 B) Octets transmis:0 (0.0 B)
Interruption:21 Mémoire:fbff0000-fc000000
iwconfig
wlan0 IEEE 802.11b ESSID:off/any
Mode:Managed Channel:0 Access Point: Not-Associated
Bit Rate:1 Mb/s Sensitivity=-200 dBm
RTS thr=2346 B Fragment thr=2346 B
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
lsw -C network
*-network:0
description: Wireless interface
product: 88w8335 [Libertas] 802.11b/g Wireless
vendor: Marvell Technology Group Ltd.
physical id: 0
bus info: pci@0000:02:00.0
logical name: wlan0
version: 03
serial: xx:xx:xx:xx:xx:xx
width: 32 bits
clock: 66MHz
capabilities: pm bus_master cap_list ethernet physical wireless
configuration: broadcast=yes driver=ndiswrapper+mrv8000c driverversion=1.59+Marvell,09/17/2004,3.1.0.19 latency=64 link=no multicast=yes wireless=IEEE 802.11b
resources: irq:21 memory:fbfe0000-fbfeffff memory:fbff0000-fbffffff
Donc ça semble pas trop mal jusque là.
Pour être sûr j'ai tester les commandes de scan des wifis environnants et je retrouve donc mon réseau:
iwlist wlan0 s
wlan0 Scan completed :
...
Cell 07 - Address: XX:XX:XX:XX:XX:XX
ESSID:"MONWIFI"
Protocol:IEEE 802.11b
Mode:Master
Frequency:2.462 GHz (Channel 11)
Quality:75/100 Signal level:-48 dBm Noise level:-96 dBm
Encryption key:on
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
Extra:bcn_int=100
Extra:atim=0
IE: Unknown: 000D564944454F54524F4E34323932
IE: Unknown: 010882848B960C121824
IE: Unknown: 03010B
IE: Unknown: 050400010000
IE: Unknown: 2A0100
IE: WPA Version 1
Group Cipher : TKIP
Pairwise Ciphers (1) : TKIP
Authentication Suites (1) : 802.1x
IE: WPA Version 1
Group Cipher : CCMP
Pairwise Ciphers (1) : CCMP
Authentication Suites (1) : PSK
IE: Unknown: 32043048606C
IE: Unknown: DD180050F2020101030003A4000027A4000042435E0062322F00
IE: Unknown: DD1E00904C33CE111BFFFF000000000000000000000000000000000000000000
IE: Unknown: DD1A00904C340B080800000000000000000000000000000000000000
IE: Unknown: DD0900037F01010000FF7F
IE: Unknown: DD2B0050F204104A00011010440001021057000101104900140024E26002000101600000020001600100020001
Ensuite de ça j'ai tenter de me connecter au Wifi avec une clé WPA, mais en mode console c'est pas trop évident. Je me suis donc lancé dans WPA-Supplicant. J'ai suivi tout un tas de procédures, mais à chaque fois infructueuse.
J'ai fait un fichier wpa_supplicant.conf tout simple avec juste
network={
ssid="MYSSID"
#psk="passphrase"
psk=59e0d07fa4c7741797a4e394f38a5c321e3bed51d54ad5fcbd3f84bc7415d73d
}
Le psk m'a été donné par la commande
wpa_passphrase MYSSID passphrase
Mais quand je lance la connexion (et c'est là que j'ai besoin d'aide) j'ai les messages d'erreurs suivants:
wpa_supplicant -iwlan0 -c/etc/wpa_supplicant.conf -Dwext
Successfully initialized wpa_supplicant
ioctl[SIOCSWPMKSA]: Invalid argument
ioctl[SIOCSIWENDOEEXT]: Invalid argument
ioctl[SIOCSIWENDOEEXT]: Invalid argument
ioctl[SIOCSWPMKSA]: Invalid argument
Puis ça reste bloqué comme ça jusqu'à ce que je fasse un Ctrl+c
Je me posais une question sur le driver à utiliser, comme tout le monde j'ai mis wext, mais étant donné que j'ai installé mrv8000c avec ndiswrapper, je me demandais c'était pas mieux de le choisir. Le truc c'est qu'il n'est pas dans la liste des driver avec wpa-supplicant:
wpa-supplicant
...
drivers:
nl80211 = Linux nl80211/cfg80211
wext = Linux wireless extensions (generic)
wired = Wired Ethernet driver
none = no driver (RADIUS server/WPS ER)
...
Et concernant l'argument invalide, il n'y en pas beaucoup.
cat /etc/network/interfaces
# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet dhcp
########################################################
# Ajouté par moi pour cette putain de connexion !!!
pre-up wpa_supplicant -Bw -Dwext -iwlan0 -c/etc/wpa_supplicant.conf
post-down killall -q wpa_supplicant
J'ai essayé plusieurs config pour le wpa_supplicant.conf, mais rien n'a marché jusque là.
Help ! \o/
Hors ligne
#2 Le 07/05/2015, à 03:13
- tozman47
Re : Ubuntu server|Carte Marvell Libertas 88w8335=>NDISwrapper+wpa_supplica
Up ?
Hors ligne