Utiliser [ifupdown] pour configurer une carte wifi et son interface réseau

Tags: #<Tag:0x00007f46ab61b108>

Je suis un jeune administrateur système et réseau de 59 ans. Ma formation initiale remonte au début des années 1980 ! Je sais. La préhistoire de l’informatique. Je suis maintenant autodidacte et je souhaite monter un mini-réseau pour mes projets personnels autour de la santé. C’est pour cela que j’ai choisi le libre et Debian 8 Jessie. Plus spécifiquement :

Linux srv-web-idlas 3.16.0-4-686-pae #1 SMP Debian 3.16.39-1+deb8u2 (2017-03-07) i686 GNU/Linux

Ce qui m’amène aujourd’hui concerne la configuration réseau d’une carte wifi. Plus spécifiquement :

04:00.0 Ethernet controller: Qualcomm Atheros AR2417 Wireless Network Adapter [AR5007G 802.11bg] (rev 01)

Je ne souhaite pas utiliser NetworkManager. Je l’ai donc arrêter et désactiver :

‘systemctl stop NetworkManager.service’
‘systemctl disable NetworkManager.service’

A la place je souhaite donc utiliser [ifupdown]. J’ai donc paramétrer les fichiers /etc/hosts, /etc/resolv.conf, /etc/network/interfaces et /run/default/networking comme suit pour le réseau filaire :

Fichier ‘/etc/hosts’

127.0.0.1 localhost
192.168.0.51 srv-web-idlas.santeonaturel.edu web

The following lines are desirable for IPv6 capable hosts

::1 localhost
ip6-localhost ip6-loopback
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters

Fichier ‘/etc/network/interfaces’

The loopback network interface

auto lo
iface lo inet loopback

The primary network interface

auto eth0
iface eth0 inet
static address 192.168.0.51
netmask 255.255.255.0
gateway 192.168.0.254
dns-nameservers 212.27.40.240 212.27.40.241

Fichier ‘/etc/resolv.conf’

search santeonaturel.edu
domain santeonaturel.edu
nameserver 212.27.40.240 et 212.27.40.241

Fichier ‘/run/default/networking’

Configuration for networking init script being run during the boot sequence

Set to ‘no’ to skip interfaces configuration on boot

CONFIGURE_INTERFACES=yes

Don’t configure these interfaces. Shell wildcards supported/

#EXCLUDE_INTERFACES=

Set to ‘yes’ to enable additional verbosity

VERBOSE=yes

Cela fonctionne très bien. NetworkManager n’est pas lancé. Je peux agir sur mon interface réseau filaire avec les commandes ifconfig, ifup et ifdown.

eth0
Link encap:Ethernet HWaddr 00:0d:88:cd:41:00
inet adr:192.168.0.51 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: fe80::20d:88ff:fecd:4100/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:
RX packets:1691 errors:0 dropped:3 overruns:0 frame:0
TX packets:522 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:317351 (309.9 KiB) TX bytes:223123 (217.8 KiB)

Cela devient plus problématique avec la configuration de ma carte wifi sur wlan0 ou wlan1. Je fais en effet des tests avec deux cartes. La deuxième carte est une carte D-LINK AMD/ATI assez ancienne.

Je me suis déjà fait aidé par les internautes des sites debian-fr.org et forums.debian.net. J’ai lu les docs et utilisé les exemples présents dans /usr/share/doc/wpasupplicant. Je me heurte pour l’instant toujours au même problème. Aucune de mes interfaces wlan0 et wlan1 ne fonctionne.

Voilà comment j’ai procédé.

J’ai modifié le fichier /etc/network/interfaces en ajoutant :

#Wifi interface
auto wlan0
iface wlan0 inet dhcp
wpa-conf /etc/wpa_supplicant/wpa_supplicant-wlan0.conf

J’ai créé le fichier /etc/wpa_supplicant/wpa_supplicant-wlan1.conf comme ceci :
root@srv-web-idlas:/home/pilipe# cat /etc/wpa_supplicant/wpa_supplicant-wlan1.conf

ctrl_interface=DIR=/var/run/wpa_supplicant GROUP=netdev
update_config=1
network={
ssid="freebox_idlas"
psk=ce5e31a930c814da382a989fb12150429fcf52b54687e5f9e518d385f7e9f4e5
proto=WPA
key_mgmt=WPA-PSK
pairwise=CCMP
group=CCMP
auth_alg=OPEN
}

Pour calculer la clef secrète psk j’ai utilisé la commande wpa_passphrase avec le SSID et le mot-de-passe en ASCII.

J’ai fait plusieurs essais différents en modifiant les différents paramètres de network sans résultat.

J’ai associé ma carte wifi avec le point d’accès comme ceci :
wpa_supplicant -B -Dnl80211,wext -i wlan1 -c /etc/wpa_supplicant/wpa_supplicant-wlan1.conf

Et pourtant le résultat d’un iwconfig me dit que mon interface réseau wlan1 n’est associé avec aucun point d’accès ??

Le point d’accès est géré par mon routeur FREE (freebox V5). C’est une carte Ralink RT2880. Après analyse de la présence des autres routeurs dans le voisinage j’ai modfié le canal en choisissant le canal 4 qui n’est utilisé par aucun autre point d’accès du voisinage (fréquence 2462).

Au démarrage de mon serveur, l’interface wlanx n’est pas activée :

wlan1 Link encap:Ethernet HWaddr 00:17:3f:f5:f6:aa
adr inet6: fe80::217:3fff:fef5:f6aa/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:786 errors:0 dropped:0 overruns:0 frame:0
TX packets:24 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:109682 (107.1 KiB) TX bytes:3359 (3.2 KiB)

Voici également la liste des services démarrés par systemd :

root@srv-web-idlas:/home/pilipe# systemctl list-unit-files|grep enabled
acpid.path enabled
cups.path enabled
accounts-daemon.service enabled
anacron-resume.service enabled
anacron.service enabled
atd.service enabled
avahi-daemon.service enabled
bluetooth.service enabled
cron.service enabled
cups-browsed.service enabled
cups.service enabled
dbus-fi.epitest.hostap.WPASupplicant.service enabled
dbus-org.bluez.service enabled
dbus-org.freedesktop.Avahi.service enabled
dbus-org.freedesktop.ModemManager1.service enabled
display-manager.service enabled
gdm.service enabled
getty@.service enabled
hwclock-save.service enabled
lm-sensors.service enabled
lvm2-activation-early.service enabled
lvm2-activation.service enabled
lvm2-monitor.service enabled
ModemManager.service enabled
openvpn.service enabled
pppd-dns.service enabled
rsyslog.service enabled
syslog.service enabled
unattended-upgrades.service enabled
wpa_supplicant.service enabled
acpid.socket enabled
avahi-daemon.socket enabled
cups.socket enabled
dm-event.socket enabled
lvm2-lvmetad.socket enabled
remote-fs.target enabled

J’ai en effet lu quelque part qu’il était possible que wpa_supplicant.service soit gêné par un autre service. Est-ce le cas ?

Une commande ifdown donne le résultat suivant :

root@srv-web-idlas:/usr/share/doc/wpasupplicant# ifdown wlan1
ifdown: interface wlan1 not configured

Si je regarde les processi utilisant l’application wpa_supplicant j’obtiens la liste suivante :

root 676 0.0 0.0 7892 3192 ? Ss 11:19 0:00 /sbin/wpa_supplicant -s -B -P /run/wpa_supplicant.wlan1.pid -i wlan1 -D nl80211,wext -c /etc/wpa_supplicant/wpa_supplicant-wl an1.conf
root 742 0.0 0.0 7656 4108 ? Ss 11:19 0:00 /sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

Enfin voici ce que donne l’affichage après l’exécution de ifup wlan1 :

root@srv-web-idlas:/var/run/wpa_supplicant# ifup wlan1
Internet Systems Consortium DHCP Client 4.3.1
Copyright 2004-2014 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/
Listening on LPF/wlan1/00:17:3f:f5:f6:aa
Sending on LPF/wlan1/00:17:3f:f5:f6:aa
Sending on Socket/fallback
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 5
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 7
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 14
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 20
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 14
DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 1
No DHCPOFFERS received.
No working leases in persistent database – sleeping.

Et ce que donne l’affichage du fichier /var/log/syslog quand je démarre wlan1 :

May 7 12:18:15 srv-web-idlas wpa_supplicant[2402]: Successfully initialized wpa_supplicant
May 7 12:18:15 srv-web-idlas kernel: [ 3550.910943] IPv6: ADDRCONF(NETDEV_UP): wlan1: link is not ready
May 7 12:18:15 srv-web-idlas dhclient: Internet Systems Consortium DHCP Client 4.3.1
May 7 12:18:15 srv-web-idlas dhclient: Copyright 2004-2014 Internet Systems Consortium.
May 7 12:18:15 srv-web-idlas dhclient: All rights reserved.
May 7 12:18:15 srv-web-idlas dhclient: For info, please visit https://www.isc.org/software/dhcp/
May 7 12:18:15 srv-web-idlas dhclient:
May 7 12:18:15 srv-web-idlas dhclient: Listening on LPF/wlan1/00:17:3f:f5:f6:aa
May 7 12:18:15 srv-web-idlas dhclient: Sending on LPF/wlan1/00:17:3f:f5:f6:aa
May 7 12:18:15 srv-web-idlas dhclient: Sending on Socket/fallback
May 7 12:18:15 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 5
May 7 12:18:20 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 7
May 7 12:18:27 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 14
May 7 12:18:41 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 20
May 7 12:19:01 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 14
May 7 12:19:15 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 1
May 7 12:19:16 srv-web-idlas dhclient: No DHCPOFFERS received.
May 7 12:19:16 srv-web-idlas dhclient: No working leases in persistent database – sleeping.

De façon inexplicable, il semble que cette interface ne soit pas en ligne, ou active comme l’indique la commande suivante :

root@srv-web-idlas:/var/run/wpa_supplicant# ip link show wlan1
6: wlan1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq state DOWN mode DORMANT group default qlen 1000 link/ether 00:17:3f:f5:f6:aa brd ff:ff:ff:ff:ff:ff

Je ne comprends pas state DOWN et mode DORMANT !!!???

Je ne sais plus par quel bout prendre cela. Merci pour votre assistance. Je suis disponible essentiellement les week-end et pendant les congés et jours fériés. Si je ne donne pas de nouvelle en semaine c’est normal.

Cordialement.

Le point d’accès est géré par mon routeur FREE (freebox V5). C’est
une carte Ralink RT2880. Après analyse de la présence des autres
routeurs dans le voisinage j’ai modfié le canal en choisissant le
canal 4 qui n’est utilisé par aucun autre point d’accès du
voisinage (fréquence 2462).

Au démarrage de mon serveur, l’interface wlanx n’est pas activée :

wlan1 Link encap:Ethernet HWaddr 00:17:3f:f5:f6:aa

      adr inet6: fe80::217:3fff:fef5:f6aa/64 Scope:Lien

      UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1

      RX packets:786 errors:0 dropped:0 overruns:0 frame:0

      TX packets:24 errors:0 dropped:0 overruns:0 carrier:0

      collisions:0 lg file transmission:1000 


      RX bytes:109682 (107.1 KiB)  TX bytes:3359 (3.2 KiB)

Voici également la liste des services démarrés par systemd :

root@srv-web-idlas:/home/pilipe# systemctl list-unit-files|grep
enabled

acpid.path enabled

cups.path enabled

accounts-daemon.service enabled

anacron-resume.service enabled

anacron.service enabled

atd.service enabled

avahi-daemon.service enabled

bluetooth.service enabled

cron.service enabled

cups-browsed.service enabled

cups.service enabled

dbus-fi.epitest.hostap.WPASupplicant.service enabled

dbus-org.bluez.service enabled

dbus-org.freedesktop.Avahi.service enabled

dbus-org.freedesktop.ModemManager1.service enabled

display-manager.service enabled

gdm.service enabled

getty@.service enabled

hwclock-save.service enabled

lm-sensors.service enabled

lvm2-activation-early.service enabled

lvm2-activation.service enabled

lvm2-monitor.service enabled

ModemManager.service enabled

openvpn.service enabled

pppd-dns.service enabled

rsyslog.service enabled

syslog.service enabled

unattended-upgrades.service enabled

wpa_supplicant.service enabled

acpid.socket enabled

avahi-daemon.socket enabled

cups.socket enabled

dm-event.socket enabled

lvm2-lvmetad.socket enabled

remote-fs.target enabled

J’ai en effet lu quelque part qu’il était possible que
wpa_supplicant.service soit gêné par un autre service. Est-ce le
cas ?

Une commande ifdown donne le résultat suivant :

root@srv-web-idlas:/usr/share/doc/wpasupplicant# ifdown wlan1

ifdown: interface wlan1 not configured

Si je regarde les processi utilisant l’application wpa_supplicant
j’obtiens la liste suivante :

root 676 0.0 0.0 7892 3192 ? Ss 11:19 0:00
/sbin/wpa_supplicant -s -B -P /run/wpa_supplicant.wlan1.pid -i wlan1
-D nl80211,wext -c /etc/wpa_supplicant/wpa_supplicant-wlan1.conf

root 742 0.0 0.0 7656 4108 ? Ss 11:19 0:00
/sbin/wpa_supplicant -u -s -O /run/wpa_supplicant

Enfin voici ce que donne l’affichage après l’exécution de ifup
wlan1 :

root@srv-web-idlas:/var/run/wpa_supplicant# ifup wlan1

Internet Systems Consortium DHCP Client 4.3.1

Copyright 2004-2014 Internet Systems Consortium.

All rights reserved.

For info, please visit https://www.isc.org/software/dhcp/

Listening on LPF/wlan1/00:17:3f:f5:f6:aa

Sending on LPF/wlan1/00:17:3f:f5:f6:aa

Sending on Socket/fallback

DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 5

DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 7

DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 14

DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 20

DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 14

DHCPDISCOVER on wlan1 to 255.255.255.255 port 67 interval 1

No DHCPOFFERS received.

No working leases in persistent database – sleeping.

Et ce que donne l’affichage du fichier /var/log/syslog quand
je démarre wlan1 :

May 7 12:18:15 srv-web-idlas wpa_supplicant[2402]: Successfully
initialized wpa_supplicant

May 7 12:18:15 srv-web-idlas kernel: [ 3550.910943] IPv6:
ADDRCONF(NETDEV_UP): wlan1: link is not ready

May 7 12:18:15 srv-web-idlas dhclient: Internet Systems Consortium
DHCP Client 4.3.1

May 7 12:18:15 srv-web-idlas dhclient: Copyright 2004-2014 Internet
Systems Consortium.

May 7 12:18:15 srv-web-idlas dhclient: All rights reserved.

May 7 12:18:15 srv-web-idlas dhclient: For info, please visit
https://www.isc.org/software/dhcp/

May 7 12:18:15 srv-web-idlas dhclient:

May 7 12:18:15 srv-web-idlas dhclient: Listening on
LPF/wlan1/00:17:3f:f5:f6:aa

May 7 12:18:15 srv-web-idlas dhclient: Sending on
LPF/wlan1/00:17:3f:f5:f6:aa

May 7 12:18:15 srv-web-idlas dhclient: Sending on Socket/fallback

May 7 12:18:15 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to
255.255.255.255 port 67 interval 5

May 7 12:18:20 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to
255.255.255.255 port 67 interval 7

May 7 12:18:27 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to
255.255.255.255 port 67 interval 14

May 7 12:18:41 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to
255.255.255.255 port 67 interval 20

May 7 12:19:01 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to
255.255.255.255 port 67 interval 14

May 7 12:19:15 srv-web-idlas dhclient: DHCPDISCOVER on wlan1 to
255.255.255.255 port 67 interval 1

May 7 12:19:16 srv-web-idlas dhclient: No DHCPOFFERS received.

May 7 12:19:16 srv-web-idlas dhclient: No working leases in
persistent database – sleeping.

De façon inexplicable, il semble que cette interface ne soit pas en
ligne, ou active comme l’indique la commande suivante :

root@srv-web-idlas:/var/run/wpa_supplicant# ip link show wlan1

6: wlan1: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc mq
state DOWN mode DORMANT group default qlen 1000

link/ether 00:17:3f:f5:f6:aa brd ff:ff:ff:ff:ff:ff

Je ne comprends pas state DOWN et mode DORMANT.

Je ne sais plus par quel bout prendre cela. Merci pour votre
assistance. Je suis disponible essentiellement les week-end et
pendant les congés et jours fériés. Si je ne donne pas de nouvelle
en semaine c’est normal.

Cordialement.