web-dev-qa-db-ja.com

r8168は18.04でギガビット速度をネゴシエートしません

メインデスクトップマシンで16.04から18.04にアップグレードしました。 r8168ネットワークカードを持っています。 16.04でギガビット速度を取得しましたが、今では18.04で100Mbpsしか取得できません。 r8169とr8168-dkmsの両方のドライバーを試しました。アップグレード後、ネットワークケーブルとスイッチを交換して、これがハードウェアの問題ではないことを確認しました。

NICは、MSI x370 Gaming PlusマザーボードのオンボードNICです。

残念ながら、16.04からのこのデバッグ情報はありません。以下は、18.04へのアップグレード後のものです。

$ Sudo lshw -C network
  *-network                 
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0
       bus info: pci@0000:1e:00.0
       logical name: eth0
       version: 15
       serial: 30:9c:23:0c:9a:94
       size: 100Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix bus_master cap_list ethernet physical tp 10bt 10bt-fd 100bt 100bt-fd 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8168 driverversion=8.045.08-NAPI duplex=full ip=192.168.1.2 latency=0 link=yes multicast=yes port=twisted pair speed=100Mbit/s
       resources: irq:46 ioport:f000(size=256) memory:fd604000-fd604fff memory:fd600000-fd603fff
$ Sudo ethtool eth0
Settings for eth0:
        Supported ports: [ TP ]
        Supported link modes:   10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Supported pause frame use: No
        Supports auto-negotiation: Yes
        Supported FEC modes: Not reported
        Advertised link modes:  10baseT/Half 10baseT/Full 
                                100baseT/Half 100baseT/Full 
                                1000baseT/Full 
        Advertised pause frame use: No
        Advertised auto-negotiation: Yes
        Advertised FEC modes: Not reported
        Speed: 100Mb/s
        Duplex: Full
        Port: Twisted Pair
        PHYAD: 0
        Transceiver: internal
        Auto-negotiation: on
        MDI-X: Unknown
        Supports Wake-on: pumbg
        Wake-on: g
        Current message level: 0x00000033 (51)
                               drv probe ifdown ifup
        Link detected: yes
$ lsmod | grep r816
r8168                 524288  0
$ dmesg | egrep '(eth0)|(r816)'
[    1.036881] r8168: loading out-of-tree module taints kernel.
[    1.037195] r8168: module verification failed: signature and/or required key missing - tainting kernel
[    1.037822] r8168 Gigabit Ethernet driver 8.045.08-NAPI loaded
[    1.052489] r8168: This product is covered by one or more of the following patents: US6,570,884, US6,115,776, and US6,327,625.
[    1.052496] r8168  Copyright (C) 2017  Realtek NIC software team <[email protected]> 
[   42.034465] eth0: 0xffffa7790007d000, 30:9c:23:0c:9a:94, IRQ 46
[   42.087610] IPv6: ADDRCONF(NETDEV_UP): eth0: link is not ready
[   47.210737] r8168: eth0: link up
[   47.210752] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
# note: did ethtool -r eth0 here
[  180.421766] r8168: eth0: link down
[  185.588203] r8168: eth0: link up
4
Craig Howard

これは私にも起こったばかりです。これは、おそらくUbuntuがデフォルトでロードするNICドライバーが原因である可能性があります。これにより、ハードウェアが単独で抜け出せない状態に陥ります。 このトラブルシューティングフォーラムによる 、PCのコールドリブートを行う(ACケーブルを5分間切断してから再びオンにする)と、ネットワークカードの考えられる悪い状態がクリアされ、この問題を修正できる。

障害のあるドライバーでは、この問題がランダムに、または永久に再び発生する可能性があることに注意してください。 NICには常に最も適切なドライバーを使用する必要があります。あなたの場合、 マザーボードの製造元が言っているように 、Realtek®8111Hチップを持っているので、 Realtekウェブサイト から特定のドライバーをダウンロードして試してみる価値があります。

1
Alejandro

ちょうど同じことを経験しました。 ethtoolをいじり始め、そこに1000を設定できることに気づくまで、何も機能しませんでした。ネットワークマネージャーを見て、100 /半分に設定されました。自動ネゴシエーションに変更しましたが、今では完璧に機能します。

1
Rich Johnson