4 votes

Adaptateur ethernet USB 3.0 ne fonctionne pas - Ubuntu 18.04

J'ai récemment acheté un nouvel adaptateur Ethernet pour mon ordinateur portable, mais il ne parvient jamais à se connecter à l'internet. Je n'ai pas touché à mes paramètres réseau (tout est réglé sur automatique), je sais que le port USB fonctionne (et qu'il est de type 3.0), j'ai remplacé le câble Ethernet et j'ai redémarré, mais le problème persiste. J'ai consulté plusieurs questions similaires et je n'ai pas trouvé de réponse. Voici les résultats de quelques commandes pertinentes :

~$ ifconfig
enx00e04c680050: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet6 fe80::660a:4122:589c:5867  prefixlen 64  scopeid 0x20<link>
        ether 00:e0:4c:68:00:50  txqueuelen 1000  (Ethernet)
        RX packets 13613  bytes 2126629 (2.1 MB)
        RX errors 0  dropped 5  overruns 0  frame 0
        TX packets 539  bytes 529852 (529.8 KB)
        TX errors 247  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 3817  bytes 240361 (240.3 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3817  bytes 240361 (240.3 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

wlp2s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.43.207  netmask 255.255.255.0  broadcast 192.168.43.255
        inet6 fe80::c550:81b5:cbfc:9922  prefixlen 64  scopeid 0x20<link>
        ether 9c:b6:d0:d0:ab:35  txqueuelen 1000  (Ethernet)
        RX packets 3473  bytes 4532992 (4.5 MB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 2303  bytes 369202 (369.2 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

L'interface de l'adaptateur est la première, enx00e04c6880050 .

~$ lsusb

Bus 002 Device 004: ID 0bda:8153 Realtek Semiconductor Corp. 
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 003: ID 0cf3:e301 Atheros Communications, Inc. 
Bus 001 Device 004: ID 0c45:6713 Microdia 
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub

L'adaptateur est le dispositif Realtek. Voici une partie de la sortie de dmesg Il y avait bien d'autres choses, mais c'était exactement la même chose.

~$ dmesg | grep enx00e04c680050

[    3.145962] r8152 1-2:1.0 enx00e04c680050: renamed from eth0
[    4.594647] IPv6: ADDRCONF(NETDEV_UP): enx00e04c680050: link is not ready
[    4.599211] IPv6: ADDRCONF(NETDEV_UP): enx00e04c680050: link is not ready
[    4.748235] r8152 1-2:1.0 enx00e04c680050: carrier on
[    5.407467] IPv6: ADDRCONF(NETDEV_CHANGE): enx00e04c680050: link becomes ready
[  100.932975] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933018] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933057] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933095] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933135] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933183] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933342] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  100.933379] r8152 1-2:1.0 enx00e04c680050: Rx status -71
[  106.567052] r8152 2-1:1.0 enx00e04c680050: renamed from eth0
[  106.598088] IPv6: ADDRCONF(NETDEV_UP): enx00e04c680050: link is not ready
[  106.601933] IPv6: ADDRCONF(NETDEV_UP): enx00e04c680050: link is not ready
[  108.156517] r8152 2-1:1.0 enx00e04c680050: carrier on
[  108.156551] IPv6: ADDRCONF(NETDEV_CHANGE): enx00e04c680050: link becomes ready
[  217.647356] r8152 2-1:1.0 enx00e04c680050: Stop submitting intr, status -71
[  306.017018] r8152 2-2:1.0 enx00e04c680050: renamed from eth0
[  306.045732] IPv6: ADDRCONF(NETDEV_UP): enx00e04c680050: link is not ready
[  306.049858] IPv6: ADDRCONF(NETDEV_UP): enx00e04c680050: link is not ready
[  307.612495] r8152 2-2:1.0 enx00e04c680050: carrier on
[  307.612522] IPv6: ADDRCONF(NETDEV_CHANGE): enx00e04c680050: link becomes ready
[  321.228465] r8152 2-2:1.0 enx00e04c680050: Tx status -71
[  321.231900] r8152 2-2:1.0 enx00e04c680050: Tx status -71

J'ai également dirigé dmesg pour le pilote ; ce sont les deux seules lignes qui n'ont pas déjà été montrées ci-dessus :

~$ dmesg | grep r8152
[    2.833638] usbcore: registered new interface driver r8152
[    3.144927] r8152 1-2:1.0 eth0: v1.09.9

EDIT : J'ai essayé de chercher sur Google "Tx status -71", et j'ai l'impression que cette - qui semble être un bogue non résolu - est pertinent, bien que je ne sois pas tout à fait sûr de la manière d'appliquer le correctif fourni, ou si cela résoudrait le problème.

2voto

Crusso Points 1

Le présent paramètre du noyau a résolu le même problème pour moi (avec une station d'accueil Dell DA200 USB3) :

usbcore.quirks=0bda:8153:k

qui désactive la gestion de l'alimentation par liaison pour l'appareil. Voir aussi rapport de bogue et ceci Problème Github (pour un matériel différent avec le même pilote/la même puce).

1voto

Eslam Magdy Points 11

Cela a fonctionné pour moi :

sudo touch /etc/NetworkManager/conf.d/10-globally-managed-devices.conf
sudo systemctl restart NetworkManager

0voto

Anders Points 3568

Cela a fonctionné sous Ubuntu 18.04.4. Un service peut être créé sous

/etc/systemd/system/dell-quirks.service

avec le contenu suivant :

[Unit]
Description=Install quirks for DELL TypeC ethernet/VGA/ DA 200 adapter
Documentation=https://askubuntu.com/questions/1081128/usb-3-0-ethernet-adapter-not-working-ubuntu-18-04

[Service]
Type=oneshot
RemainAfterExit=true
#ExecStart=/usr/bin/echo 0bda:8153:k > /sys/module/usbcore/parameters/quirks
ExecStart=/bin/bash -c "echo 0bda:8153:k > /sys/module/usbcore/parameters/quirks"

[Install]
WantedBy=multi-user.target

Recharger le démon

systemctl daemon-reload

Activer le service de manière à ce qu'il démarre à chaque redémarrage.

systemctl enable dell-quirks.service

Démarrer le service

systemctl start dell-quirks.service

La configuration de l'interface doit être créée. Avant de créer la configuration de l'interface, on peut donner un nom à l'interface Ethernet sous

/etc/udev/rules.d/70-persistent-net.rules

avec le contenu suivant :

SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*",ATTR{address}=="<MAC address of the ethernet interface>",ATTR{dev_id}=="0x0",ATTR{type}=="1",KERNEL=="eth*",NAME="eth0"

Après la configuration du réseau Ethernet, il est possible d'utiliser netplan en créant un fichier yaml

/etc/netplan/01-network-card.yaml

avec le contenu suivant :

network:
  version: 2
  renderer: NetworkManager
  ethernets:
    eth0:
      dhcp4: true

Lorsque l'ordinateur portable démarre, déconnectez le périphérique USB, reconnectez-le après le démarrage et il devrait fonctionner après quelques minutes. Si nécessaire, redémarrez le Gestionnaire de réseau et attendez quelques minutes.

systemctl restart NetworkManager

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X