Problème de carte réseau D-Link

Bonjour à tous,
je rencontre des problèmes avec une carte réseau PCI que je n’arrive pas à faire fonctionner sur mon serveur domestique. Il était précédemment sous Ubuntu et j’ai installé Debian pour voir si cela arrangeait le problème. Ce n’est pas le cas.

J’utilise la dernière version de Debian, installée hier et mise à jour :

[code]# lsb_release -rd
Description: Debian GNU/Linux 6.0.4 (squeeze)
Release: 6.0.4

uname -a

Linux serveur 2.6.32-5-686 #1 SMP Mon Mar 26 05:20:33 UTC 2012 i686 GNU/Linux[/code]

Voici la carte Ethernet Gigabit PCI en question : 02:05.0 Ethernet controller: D-Link System Inc DGE-528T Gigabit Ethernet Adapter (rev 10) Subsystem: D-Link System Inc DGE-528T Gigabit Ethernet Adapter Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 9 I/O ports at 3000 [size=256] Memory at d0101000 (32-bit, non-prefetchable) [size=256] [virtual] Expansion ROM at 40000000 [disabled] [size=128K] Capabilities: [dc] Power Management version 2

Cette carte a fonctionné quelques heures puis la connexion se coupait toute seule, c’est un syndrome connu avec le pilote par défaut r8169. J’ai trouvé pas mal de personnes sur Internet ayant eu le même problème, il semble qu’installer le pilote r8168 en remplacement du r8169 règle ce problème (exemple).

J’essaye donc en vain d’installer le pilote r8168 qui a fonctionné sous Ubuntu il y a quelques mois. J’ai donc récupéré le pilote ici : code.google.com/p/r8168/

Voici mon script d’installation du pilote :[code]#!/bin/bash

VERSION=“8.029.00"
DIR=“r8168-”${VERSION}
FILE=${DIR}”.tar.bz2"

r8169

le module a déjà été supprimé

#rmmod r8169
#mv /lib/modules/uname -r/kernel/drivers/net/r8169.ko ~/r8169.ko.backup

cd /usr/src

wget “http://r8168.googlecode.com/files/”${FILE}

tar jxvf ${FILE}

cd ${DIR}

si problème lors de la compilation

#apt-get install linux-headers-$(uname -r)

make clean modules
make install
depmod -a
insmod ./src/r8168.ko
update-initramfs -v -u -k uname -r[/code]La compilation se passe sans problème.

Mon fichier /etc/modprobe.d/aliases.conf : … alias eth0 r8168

Mon fichier /etc/modprobe.d/blacklist.conf : [code]…

pilote par défaut

blacklist r8169[/code]

Mon fichier /etc/udev/rules.d/70-persistent-net.rules : [code]…

PCI device 0x8086:0x1039 (e100)

SUBSYSTEM==“net”, ACTION==“add”, DRIVERS=="?", ATTR{address}==“00:xx:xx:xx:3b:60”, ATTR{dev_id}==“0x0”, ATTR{type}==“1”, KERNEL=="eth", NAME=“eth1”

PCI device 0x1186:0x4300 (r8169)

SUBSYSTEM==“net”, ACTION==“add”, DRIVERS=="?", ATTR{address}==“xx:xx:xx:xx:ef:e9”, ATTR{dev_id}==“0x0”, ATTR{type}==“1”, KERNEL=="eth", NAME=“eth0”[/code]

Mon fichier /etc/network/interfaces : [code]…

We always want the loopback interface.

auto lo
iface lo inet loopback

To use dhcp:

auto eth0
iface eth0 inet dhcp
pre-up modprobe r8168

auto eth1
iface eth1 inet dhcp[/code]

# dmesg | grep eth0 [ 1.304778] e100: eth0: e100_probe: addr 0xd0100000, irq 20, MAC addr 00:xx:xx:xx:3b:60 [ 5.407503] udev[310]: renamed network interface eth0 to eth1eth1 correspond à la carte réseau intégrée à la carte-mère que j’utilise en attendant, en la désactivant dans le BIOS pour ne pas avoir le message étrange renamed network interface eth0 to eth1 cela ne marche pas mieux.

Le pilote semble correctement chargé :# lsmod | grep 8168 r8168 180208 0

Mais je ne peux pas activer l’interface réseau :[code]# ifconfig -a
eth1 Link encap:Ethernet HWaddr 00:xx:xx:xx:3b:60
inet adr:192.168.0.12 Bcast:192.168.0.255 Masque:255.255.255.0
adr inet6: …:3b60/64 Scope:Lien
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:301 errors:0 dropped:0 overruns:0 frame:0
TX packets:262 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:1000
RX bytes:38399 (37.4 KiB) TX bytes:48109 (46.9 KiB)

lo Link encap:Boucle locale
inet adr:127.0.0.1 Masque:255.0.0.0
adr inet6: ::1/128 Scope:Hôte
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:112 errors:0 dropped:0 overruns:0 frame:0
TX packets:112 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 lg file transmission:0
RX bytes:9236 (9.0 KiB) TX bytes:9236 (9.0 KiB)

ifup eth0

Internet Systems Consortium DHCP Client 4.1.1-P1
Copyright 2004-2010 Internet Systems Consortium.
All rights reserved.
For info, please visit https://www.isc.org/software/dhcp/

SIOCSIFADDR: No such device
eth0: ERROR while getting interface flags: No such device
eth0: ERROR while getting interface flags: No such device
Bind socket to interface: No such device
Failed to bring up eth0.[/code]

Je pense qu’il ne manque pas grand chose pour associer le pilote à la carte Ethernet, pouvez-vous m’aider SVP ?

Merci par avance.

Salut,

Chez moi l’affaire s’est résolue avec çà :

i firmware-ralink - Binary firmware for Ralink wireless cards

j’allais répondre la même chose. debian, contrairement à ubuntu, n’installe pas par défaut les firmwares propriétaires.
Concernant ta version de debian, le kernel 2.6.32 est plus que dépassé. Installe quelque chose de plus récent, surtout pour ce qui concerne le réseau, il y a eu des progrès depuis ce kernel !

Merci pour vos réponses. :slightly_smiling:

[quote=“eggregor”]Salut,

Chez moi l’affaire s’est résolue avec çà :

i firmware-ralink - Binary firmware for Ralink wireless cards[/quote]J’ai lu un conseil similaire mais il fallait installer firmware-realtek plutôt que firmware-ralink, qui semble plus dédié aux réseaux sans fil ?!

Après ajout de “contrib non-free” à la fin des lignes dans /etc/apt/sources.list j’ai pu installer firmware-ralink, ceci dit je ne sais pas si je suis revenu sur l’ancien pilote r8169 ou celui installé par firmware-ralink. Depuis 15 minutes ça marche, mais je vois déjà des erreurs : eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:ef:e9 inet adr:192.168.0.12 Bcast:192.168.0.255 Masque:255.255.255.0 adr inet6: xx:efe9/64 Scope:Lien UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:21149458 errors:0 dropped:9852 overruns:0 frame:0 TX packets:8616999 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 lg file transmission:1000 RX bytes:1759848123 (1.6 GiB) TX bytes:645357977 (615.4 MiB) Interruption:17 Adresse de base:0x2000Je ne pense pas que les valeurs de dropped soient rassurantes …

[quote=“piratebab”]Concernant ta version de debian, le kernel 2.6.32 est plus que dépassé. Installe quelque chose de plus récent, surtout pour ce qui concerne le réseau, il y a eu des progrès depuis ce kernel ![/quote]Et pourtant je suis à jour :[code]# apt-get update

78,5 ko réceptionnés en 1s (41,2 ko/s)
Lecture des listes de paquets… Fait

apt-get upgrade

Lecture des listes de paquets… Fait
Construction de l’arbre des dépendances
Lecture des informations d’état… Fait
0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.

uname -ar

Linux serveur 2.6.32-5-686 #1 SMP Mon Mar 26 05:20:33 UTC 2012 i686 GNU/Linux[/code]Voici mon fichier /etc/apt/sources.list :[code]deb http://ftp.fr.debian.org/debian/ squeeze main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze main contrib non-free

squeeze security

deb http://security.debian.org/ squeeze/updates main contrib non-free
deb-src http://security.debian.org/ squeeze/updates main contrib non-free

squeeze updates

deb http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free
deb-src http://ftp.fr.debian.org/debian/ squeeze-updates main contrib non-free

squeeze-backports

deb http://backports.debian.org/debian-backports squeeze-backports main contrib non-free[/code]J’ai raté quelque chose ?

J’ai redémarré après avoir installé firmware-ralink, les problèmes sont revenus : # dmesg | grep eth [ 1.313168] e100: eth0: e100_probe: addr 0xd0100000, irq 20, MAC addr xx:xx:xx:xx:3b:60 [ 5.155662] r8169 0000:02:05.0: eth1: RTL8169sb/8110sb at 0xf8132000, xx:xx:xx:xx:ef:e9, XID 10000000 IRQ 17 [ 5.377328] udev[311]: renamed network interface eth1 to eth1-eth0 [ 5.679576] udev[313]: renamed network interface eth0 to eth1 [ 5.728784] udev[311]: renamed network interface eth1-eth0 to eth0 [ 10.789465] r8169 0000:02:05.0: eth0: link down [ 10.789720] ADDRCONF(NETDEV_UP): eth0: link is not ready [ 13.825894] r8169 0000:02:05.0: eth0: link up [ 13.826151] ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready [ 19.733911] ADDRCONF(NETDEV_UP): eth1: link is not ready [ 24.300014] eth0: no IPv6 routers present [ 2190.694950] r8169 0000:02:05.0: eth0: link down [ 2193.415411] r8169 0000:02:05.0: eth0: link up [ 5314.356634] r8169 0000:02:05.0: eth0: link down [ 5317.214974] r8169 0000:02:05.0: eth0: link up C’est la valse entre eth0 et eth1 à l’allumage, mais ça ne pose pas de problème, contrairement aux pertes de connexion.

re,

Peut-être te faudrait-il également celui-ci :

i A firmware-linux-nonfree - Binary firmware for various drivers

Chez moi, j’ai les deux avec le “ralink” j’ai omis de te le signaler, désolé.

Les problèmes disparaissent de façon incompréhensible, aucune erreur depuis 10 h :# tail /var/log/kern.log May 8 04:10:25 localhost kernel: [ 6385.936499] r8169 0000:02:05.0: eth0: link down May 8 04:10:28 localhost kernel: [ 6388.790145] r8169 0000:02:05.0: eth0: link up May 8 04:23:00 localhost kernel: [ 7140.977701] r8169 0000:02:05.0: eth0: link down May 8 04:23:03 localhost kernel: [ 7143.730216] r8169 0000:02:05.0: eth0: link up May 8 04:23:19 localhost kernel: [ 7159.561111] r8169 0000:02:05.0: eth0: link down May 8 04:23:25 localhost kernel: [ 7165.541811] r8169 0000:02:05.0: eth0: link up May 8 04:24:23 localhost kernel: [ 7223.959389] r8169 0000:02:05.0: eth0: link down May 8 04:24:26 localhost kernel: [ 7226.725666] r8169 0000:02:05.0: eth0: link up May 8 04:24:45 localhost kernel: [ 7245.177347] r8169 0000:02:05.0: eth0: link down May 8 04:24:47 localhost kernel: [ 7247.922122] r8169 0000:02:05.0: eth0: link up

[quote=“eggregor”]re,

Peut-être te faudrait-il également celui-ci :

i A firmware-linux-nonfree - Binary firmware for various drivers

Chez moi, j’ai les deux avec le “ralink” j’ai omis de te le signaler, désolé.[/quote]Merci, je vais essayer.

re,re,

Je ne suis pas hyper calé, mais j’ai l’impression qu’il y a un potage dans le pilote réellement en service.
Il réapparait toujours le 8169 par ailleurs blacklisté si je ne m’abuse.

Question :
le script d’installation du pilote, c’est toi qui l’a écrit ?
Personnellement sur plusieurs machines en service avec Debian, je n’ai jamais eu besoin d’ajouter un tel script.

Il me semble aussi que ton fichier /etc/network/interfaces est curieusement rédigé, il est venu naturellement comme çà ou tu l’as bidouillé un peu ?

Mais ôte-moi d’un doute, c’est bien la connection sans fil que tu cherches à faire fonctionner ?

Pour y voir plus clair peut-être, pourrais-tu transmettre le retour de :

$ nm-tool ( qui normalement identifie le pilote utilisé )

lsmod

EDIT : Je tombe par hasard sur cette doc, çà peut aider pour le bon pilote :

doc.ubuntu-fr.org/wifi_d-link

[quote=“eggregor”]re,re,

Je ne suis pas hyper calé, mais j’ai l’impression qu’il y a un potage dans le pilote réellement en service.
Il réapparait toujours le 8169 par ailleurs blacklisté si je ne m’abuse.[/quote]Avant de suivre vos conseils, je suis revenu à la configuration par défaut en dé-blacklistant r8169.

[quote=“eggregor”]Question :
le script d’installation du pilote, c’est toi qui l’a écrit ?
Personnellement sur plusieurs machines en service avec Debian, je n’ai jamais eu besoin d’ajouter un tel script.[/quote]Oui, je l’ai écrit mais je ne m’en sers plus.

[quote=“eggregor”]Il me semble aussi que ton fichier /etc/network/interfaces est curieusement rédigé, il est venu naturellement comme çà ou tu l’as bidouillé un peu ?[/quote]Je l’ai rédigé en suivant la documentation de Debian concernant l’installation avec debootstrap.

[quote=“eggregor”]Mais ôte-moi d’un doute, c’est bien la connection sans fil que tu cherches à faire fonctionner ?[/quote]C’est une carte Ethernet, pas une carte WiFi.

[quote=“eggregor”]Pour y voir plus clair peut-être, pourrais-tu transmettre le retour de :

$ nm-tool ( qui normalement identifie le pilote utilisé )[/quote]Pas trop envie d’installer network-manager juste pour ça, désolé.

# lsmod Module Size Used by xt_multiport 1775 1 iptable_filter 1790 1 ip_tables 7706 1 iptable_filter x_tables 8327 2 xt_multiport,ip_tables nfsd 193055 11 lockd 49313 1 nfsd nfs_acl 1695 1 nfsd auth_rpcgss 25228 1 nfsd sunrpc 134436 10 nfsd,lockd,nfs_acl,auth_rpcgss exportfs 2586 1 nfsd r8168 180208 0 ext3 94020 2 jbd 32197 1 ext3 raid1 16339 1 md_mod 67361 2 raid1 snd_pcm 47226 0 snd_timer 12270 1 snd_pcm snd 34387 2 snd_pcm,snd_timer i915 222702 0 drm_kms_helper 18533 1 i915 soundcore 3450 1 snd drm 111849 2 i915,drm_kms_helper snd_page_alloc 4977 1 snd_pcm parport_pc 15799 0 parport 22554 1 parport_pc i2c_i801 6462 0 i2c_algo_bit 3493 1 i915 shpchp 21200 0 evdev 5609 0 pcspkr 1207 0 rng_core 2178 0 video 14605 1 i915 output 1204 1 video i2c_core 12751 5 i915,drm_kms_helper,drm,i2c_i801,i2c_algo_bit container 1833 0 button 3598 1 i915 processor 26259 0 pci_hotplug 18545 1 shpchp ext4 256328 3 mbcache 3762 2 ext3,ext4 jbd2 55995 1 ext4 crc16 1027 1 ext4 sd_mod 25945 11 crc_t10dif 1012 1 sd_mod ata_generic 2247 0 sata_via 5576 4 e100 22217 0 thermal 9206 0 ata_piix 17704 7 uhci_hcd 15989 0 r8169 31197 0 floppy 40923 0 mii 2714 2 e100,r8169 libata 115649 3 ata_generic,sata_via,ata_piix ehci_hcd 28449 0 thermal_sys 9378 3 video,processor,thermal scsi_mod 104765 2 sd_mod,libata usbcore 99125 3 uhci_hcd,ehci_hcd nls_base 4541 1 usbcoreTiens, r8168 a l’air toujours chargé. :neutral_face:

Pour le pilote :[code]# lspci -v

02:05.0 Ethernet controller: D-Link System Inc DGE-528T Gigabit Ethernet Adapter (rev 10)
Subsystem: D-Link System Inc DGE-528T Gigabit Ethernet Adapter
Flags: bus master, 66MHz, medium devsel, latency 64, IRQ 17
I/O ports at 3000 [size=256]
Memory at d0101000 (32-bit, non-prefetchable) [size=256]
[virtual] Expansion ROM at 40000000 [disabled] [size=128K]
Capabilities: [dc] Power Management version 2
Kernel driver in use: r8169[/code]

Merci pour ton aide.

Bon,

Il n’est pas anormal que les deux pilotes apparaissent, celui qui est blacklisté ne fonctionne pas pour autant.

Comme tu dis que tu as écrit toi-même le fichier /etc/network/interfaces, c’est peut-être bien là que le bât blesse.

Il me paraît “surchargé”.

Le mien quand j’étais en filaire était comme çà :

[b]# The loopback network interface
auto lo
iface lo inet loopback

The primary network interface

allow-hotplug eth0
iface eth0 inet dhcp[/b]

Tu ne cours pas de risque à essayer, je suppose que tu sais comment faire ?

Sinon, l’essai avec le firmware-realtek, tu l’avais fait ?
Parce que les deux apparemment peuvent fonctionner, chez moi c’était le ralink, chez d’autres çà semble être le realtek.

Si j’efface eth1 de /etc/network/interfaces et qu’un jour cette carte réseau ne fonctionne plus, je crains de ne plus pouvoir utiliser la carte réseau de la carte-mère pour réparer le serveur. Avec eth1, le seul inconvénient est qu’au départ le serveur obtient une adresse IP de eth0 puis passe une minute à attendre en vain une adresse IP de eth1 avant de continuer le démarrage du système. En tout cas, la ligne “pre-up modprobe r8168” ne sert à rien, je la retire.

Ceci dit, depuis que j’ai installé firmware-linux-nonfree et firmware-ralink la connexion eth0 ne se couple plus toutes les 10 secondes, ça semble bon. :slightly_smiling:

Edit : en suivant tes conseils et ceux de cette page, je vais utiliser allow-hotplug ethX à la place de auto ethX ce qui devrait éviter de chercher une connexion quand il n’y a pas de câble réseau. Merci encore !

Hello,
C’est sûr qu’un bonne page de manuel vaut tous les conseils du monde.

Le plus bête c’est que j’ai mes propres connections en “static” et que je n’ai pas songé à te suggérer cette solution.

L’important c’est que tu sois connecté.
A plus.

Si un module est listé par lsmod, c’est qu’il est chargé. Donc il est actif et non blacklisté, sauf s’il a été chargé manuellement avec modprobe ou insmod.

Salut,
Il me semble qu’il a précisé plus haut que le pilote 8168 est arrivé par insmod, puis blacklisté.

[quote=“eggregor”]Hello,
C’est sûr qu’un bonne page de manuel vaut tous les conseils du monde.[/quote]C’est pas que je te faisais confiance mais je voulais savoir à quoi servait la commande “allow-hotplug”.

[quote=“eggregor”]Salut,
Il me semble qu’il a précisé plus haut que le pilote 8168 est arrivé par insmod, puis blacklisté.[/quote]Je n’avais pas effacé “pre-up modprobe r8168” dans /etc/network/interfaces, ce qui chargeait le module sans que je le veuille.

Désormais r8168 n’est plus chargé :> lsmod | grep r816 r8169 31197 0 mii 2714 2 e100,r8169

Depuis 24 h que le serveur tourne, la connexion Ethernet ne s’est pas coupée. Le seul problème que je vois c’est les erreurs “Dropped” :# ifconfig eth0 eth0 Link encap:Ethernet HWaddr xx:xx:xx:xx:ef:e9 inet adr:192.168.0.12 Bcast:192.168.0.255 Masque:255.255.255.0 adr inet6: xxxx::xxxx:xxxx:xxxx:efe9/64 Scope:Lien UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:747309460 errors:0 dropped:18917 overruns:0 frame:0 TX packets:369085413 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 lg file transmission:1000 RX bytes:621547359 (592.7 MiB) TX bytes:4156707655 (3.8 GiB) Interruption:17 Adresse de base:0xc000Ça n’empêche pas le serveur de fonctionner, donc ça me va.

La solution était donc d’installer les paquets firmware-linux-nonfree, firmware-ralink et firmware-realtek, je ne sais pas quel paquet en particulier était nécessaire mais ça marche et je n’ai plus envie de toucher à la configuration.

Merci à tous pour votre aide.

Il n’y a aucun inconvénient à installer plusieurs paquets contenant des firmwares. Dans le doute, il vaut mieux en installer plusieurs! Le driver chargera celui dont il a besoin, les autres vont juste occuper un peu de place sur le disque pour rien …

C’est à n’y rien comprendre, je croyais être sorti d’affaire mais maintenant la connexion se coupe toute seule et ne revient plus :> dmesg [ 2684.571277] r8169 0000:02:05.0: eth0: link downDébrancher et rebrancher le câble ne change rien, la carte PCI devient inactive, les voyants restent éteints …

D’aprés ce que j’ai lu plus haut, tu as chargé des modules avec insmod, puis tu les as blacklistés, mais comme l’a dit Pascal, ils étaient quand même chargé, donc le blacklistage n’a pris effet qu’a la mise sous tension suivante.
Il faut donc que tu retrouves la config qui à marché à un moment donné pour la pérenniser dans les fichiers de configurations.

Seul le module r8169 a été blacklisté au départ, et j’ai annulé cette configuration dés la création du sujet, à moins que j’ai fait une mauvaise manipulation.

Ma carte réseau refonctionne après avoir utilisé la carte réseau de la carte-mère pendant un mois. Tous les pilotes sont installés :root@serveur:~# apt-get install firmware-linux-nonfree firmware-realtek firmware-ralink Lecture des listes de paquets... Fait Construction de l'arbre des dépendances Lecture des informations d'état... Fait firmware-linux-nonfree est déjà la plus récente version disponible. firmware-ralink est déjà la plus récente version disponible. firmware-realtek est déjà la plus récente version disponible. 0 mis à jour, 0 nouvellement installés, 0 à enlever et 0 non mis à jour.Pour l’instant ça tient …