Sur mon ordinateur portable Ubuntu 17.04 Dell Latitude, j'utilise une station d'accueil. Cette station dispose d'une connexion dédiée.
Cela arrive probablement plus souvent lors de la sortie de veille. Mais j'ai essayé de changer les options d'alimentation du BIOS en vain.
Cela fonctionnait bien sur Ubuntu 16.10, mais je ne sais pas si un problème est survenu après 17.04, car d'autres facteurs ont également changé.
Il y a un vieux commutateur 10/100Mbit entre l'ordinateur portable et le routeur, peut-être que la négociation de la connexion prend trop de temps? Mais l'imprimante réseau se connecte sans problème.
Mise à jour: Tentative de rechargement du pilote Ethernet avec modprobe -r -v tg3
, modprobe -v rg3
et redémarrage du service réseau également.
l'exécution de dmesg
affiche un grand nombre de messages de liaison/déconnexion:
[92580.119745] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92580.119768] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92580.774047] tg3 0000:09:00.0 eth0: Link is down
[92582.426348] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92582.426351] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92583.368441] tg3 0000:09:00.0 eth0: Link is down
[92585.047635] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92585.047662] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92585.562763] tg3 0000:09:00.0 eth0: Link is down
[92587.207396] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92587.207418] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92588.085716] tg3 0000:09:00.0 eth0: Link is down
[92589.744788] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92589.744816] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92590.706366] tg3 0000:09:00.0 eth0: Link is down
[92592.296863] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[92592.365857] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92592.365860] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92592.365876] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[92593.326975] tg3 0000:09:00.0 eth0: Link is down
[92594.987186] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92594.987212] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92595.947772] tg3 0000:09:00.0 eth0: Link is down
[92597.608392] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92597.608416] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
[92598.568514] tg3 0000:09:00.0 eth0: Link is down
[92600.229535] tg3 0000:09:00.0 eth0: Link is up at 100 Mbps, full duplex
[92600.229548] tg3 0000:09:00.0 eth0: Flow control is on for TX and on for RX
Wireshark se connecte lorsque la connexion est bloquée:
No. Time Source Destination Protocol Length Info
7 2.660584149 0.0.0.0 255.255.255.255 DHCP 342 DHCP Request - Transaction ID 0xde0c185d
Frame 7: 342 bytes on wire (2736 bits), 342 bytes captured (2736 bits) on interface 0
Ethernet II, Src: Dell_39:4b:6e (d0:67:e5:39:4b:6e), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0, Dst: 255.255.255.255
User Datagram Protocol, Src Port: 68, Dst Port: 67
Bootstrap Protocol (Request)
No. Time Source Destination Protocol Length Info
12 5.401359750 0.0.0.0 255.255.255.255 DHCP 342 DHCP Request - Transaction ID 0xde0c185d
Frame 12: 342 bytes on wire (2736 bits), 342 bytes captured (2736 bits) on interface 0
Ethernet II, Src: Dell_39:4b:6e (d0:67:e5:39:4b:6e), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0, Dst: 255.255.255.255
User Datagram Protocol, Src Port: 68, Dst Port: 67
Bootstrap Protocol (Request)
No. Time Source Destination Protocol Length Info
35 13.832656290 0.0.0.0 255.255.255.255 DHCP 342 DHCP Discover - Transaction ID 0xb9200f10
Frame 35: 342 bytes on wire (2736 bits), 342 bytes captured (2736 bits) on interface 0
Ethernet II, Src: Dell_39:4b:6e (d0:67:e5:39:4b:6e), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0, Dst: 255.255.255.255
User Datagram Protocol, Src Port: 68, Dst Port: 67
Bootstrap Protocol (Discover)
Wireshark se connecte juste après avoir reconnecté le câble:
No. Time Source Destination Protocol Length Info
13 12.440180322 0.0.0.0 255.255.255.255 DHCP 342 DHCP Request - Transaction ID 0xc06e5459
Frame 13: 342 bytes on wire (2736 bits), 342 bytes captured (2736 bits) on interface 0
Ethernet II, Src: Dell_39:4b:6e (d0:67:e5:39:4b:6e), Dst: Broadcast (ff:ff:ff:ff:ff:ff)
Internet Protocol Version 4, Src: 0.0.0.0, Dst: 255.255.255.255
User Datagram Protocol, Src Port: 68, Dst Port: 67
Bootstrap Protocol (Request)
No. Time Source Destination Protocol Length Info
14 12.444870618 192.168.1.254 192.168.1.5 DHCP 358 DHCP ACK - Transaction ID 0xc06e5459
Frame 14: 358 bytes on wire (2864 bits), 358 bytes captured (2864 bits) on interface 0
Ethernet II, Src: VtechTel_55:61:31 (00:12:2a:55:61:31), Dst: Dell_39:4b:6e (d0:67:e5:39:4b:6e)
Internet Protocol Version 4, Src: 192.168.1.254, Dst: 192.168.1.5
User Datagram Protocol, Src Port: 67, Dst Port: 68
Bootstrap Protocol (ACK)
No. Time Source Destination Protocol Length Info
15 12.463981621 192.168.1.5 224.0.0.22 IGMPv3 62 Membership Report / Join group 224.0.0.252 for any sources / Join group 224.0.0.251 for any sources
Frame 15: 62 bytes on wire (496 bits), 62 bytes captured (496 bits) on interface 0
Ethernet II, Src: Dell_39:4b:6e (d0:67:e5:39:4b:6e), Dst: IPv4mcast_16 (01:00:5e:00:00:16)
Internet Protocol Version 4, Src: 192.168.1.5, Dst: 224.0.0.22
Internet Group Management Protocol
Il y a quelques mois, une mise à jour automatique a interrompu ma suspension/reprise Ethernet après qu'elle fonctionnait parfaitement pendant environ 6 mois. C'est arrivé à quelques autres utilisateurs ici à la même époque.
La solution pour moi a été de créer un script qui sera exécuté lors de la reprise de la suspension:
#!/bin/bash
# NAME: r8169-reset
# PATH: /lib/systemd/system-sleep
# DESC: Reset Ethernet card after suspend, not working automatically
# DATE: Feb ?? 2017. Modified: Apr 30, 2017.
MYNAME=$0
restart_ethernet() {
/usr/bin/logger $MYNAME 'restart_ethernet(r8169) BEGIN'
/sbin/modprobe -v -r r8169
# /sbin/modprobe -v -r mii
/sbin/modprobe -v r8169
/usr/bin/logger 'systemctl restart NetworkManager.service (SUPPRESED)'
/usr/bin/logger $MYNAME 'restart_ethernet(r8169) END'
}
/usr/bin/logger $MYNAME 'case=[' ${1}' ]'
case "${1}/${2}" in
hibernate|suspend|pre*)
;;
resume|thaw|post*)
restart_ethernet;;
esac
Enregistrez le script dans /lib/systemd/system-sleep/r8169-reset
. Bien sûr, changez ce nom de script en votre nom de pilote réel. Modifiez également le nom du module du noyau du pilote dans le script.
Notez la ligne:
/usr/bin/logger 'systemctl restart NetworkManager.service (SUPPRESED)'
Parfois, il suffit de redémarrer le gestionnaire de réseau et vous pouvez également essayer.
Vous aurez besoin des pouvoirs de Sudo pour enregistrer le fichier. Pour faire bonne mesure, je marque toujours ces scripts comme executable
en utilisant:
Sudo chmod a+x /lib/systemd/system-sleep/r8169-reset
Tu peux vérifier /var/log/syslog
pour voir la sortie du script.
J'espère que cela fonctionne pour toi.