Windows 10에서 Linux로 다시 시작한 후 eth 네트워크에 연결되지 않습니다.

Windows 10에서 Linux로 다시 시작한 후 eth 네트워크에 연결되지 않습니다.

저는 Windows 10과 EndeavourOS를 듀얼 부팅합니다. 어찌된 일인지 Windows가 내 네트워크 카드를 망가뜨려서 Linux를 부팅할 때 네트워크에 액세스할 수 없었습니다. 처음 이 문제가 발생했을 때 EndeavourOS를 다시 설치했는데 다시 잘 작동했습니다. 그러나 다음에 Windows가 시작되고 연속적인 Linux가 다시 시작될 때만 가능합니다.

또한 EndeavourOS 라이브 USB 스틱에서 부팅할 때 NIC가 제대로 작동합니다.

이것은 네트워크 카드입니다:

[me@pc ~]$ /usr/bin/lspci | /bin/egrep -i 'network|ethernet'
01:00.1 Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 1a)

Win 10에서 다양한 Wake on LAN 및 기타 전원 설정을 끄도록 제안하는 상당히 오래된 스레드를 많이 찾았지만 모두 시도했지만 성공하지 못했습니다.

흥미롭게도 NIC는 DHCP를 통해 올바른 IP 주소를 얻는 것 같습니다.

KDE에 로그인한 후 NIC는 다음과 같은 마지막 DHCP 구성을 기억합니다.

[me@pc ~]$ ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
    inet6 ::1/128 scope host 
       valid_lft forever preferred_lft forever
2: enp1s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc fq_codel state UP group default qlen 1000
    link/ether e0:4f:43:e8:12:e3 brd ff:ff:ff:ff:ff:ff
    inet 192.168.99.10/24 brd 192.168.99.255 scope global dynamic noprefixroute enp1s0f1
       valid_lft 43007sec preferred_lft 43007sec
    inet6 fe80::48e3:71dd:df1b:797b/64 scope link noprefixroute 
       valid_lft forever preferred_lft forever
3: wlan0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000
    link/ether 9a:11:4e:51:2b:86 brd ff:ff:ff:ff:ff:ff permaddr 9c:fc:e8:dd:b1:2f

그러나 네트워크에 연결되어 있지 않습니다.

[me@pc ~]$ ping 192.168.99.10
PING 192.168.99.10 (192.168.99.10) 56(84) bytes of data.
64 bytes from 192.168.99.10: icmp_seq=1 ttl=64 time=0.031 ms
64 bytes from 192.168.99.10: icmp_seq=2 ttl=64 time=0.058 ms
64 bytes from 192.168.99.10: icmp_seq=3 ttl=64 time=0.057 ms
^C
--- 192.168.99.10 ping statistics ---
3 packets transmitted, 3 received, 0% packet loss, time 2053ms
rtt min/avg/max/mdev = 0.031/0.048/0.058/0.012 ms

[me@pc ~]$ ping 192.168.99.1
PING 192.168.99.1 (192.168.99.1) 56(84) bytes of data.
From 192.168.99.10 icmp_seq=1 Destination Host Unreachable
From 192.168.99.10 icmp_seq=2 Destination Host Unreachable
From 192.168.99.10 icmp_seq=3 Destination Host Unreachable
^C
--- 192.168.99.1 ping statistics ---
6 packets transmitted, 0 received, +3 errors, 100% packet loss, time 5226ms
pipe 3
[me@pc ~]$ sudo dmesg | grep r8168
[    6.133867] r8168: loading out-of-tree module taints kernel.
[    6.242244] r8168: module verification failed: signature and/or required key missing - tainting kernel
[    6.244316] r8168 Gigabit Ethernet driver 8.048.03-NAPI loaded
[    6.262759] r8168: This product is covered by one or more of the following patents: US6,570,884, US6,115,776, and US6,327,625.
[    6.264779] r8168  Copyright (C) 2020  Realtek NIC software team <[email protected]> 
[    6.512649] r8168 0000:01:00.1 enp1s0f1: renamed from eth0
[   10.578772] r8168: enp1s0f1: link up

또한 r8168 모듈(lts)의 약간 오래된 버전으로 전환해 보았지만 소용이 없었습니다.

Windows와 Linux 사이를 전환하면서 작동했던 기억이 나지만 이 시점에서는 재설치만 도움이 되는 것 같았습니다. 물론 나는 이것을 피하고 싶다. 부팅이나 기타 해킹 중에 네트워크 카드를 재설정하는 것을 의미하더라도 마찬가지입니다.

편집하다

새로운 증거:

NetworkManager를 통해 네트워크 카드를 수동으로 구성했는데 이제 계속 연결이 끊어졌다가 다시 연결됩니다.

Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2299] manager: NetworkManager state is now CONNECTING
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2513] device (enp1s0f1): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2520] device (enp1s0f1): state change: config -> ip-config (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2546] device (enp1s0f1): state change: ip-config -> ip-check (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2587] device (enp1s0f1): state change: ip-check -> secondaries (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2589] device (enp1s0f1): state change: secondaries -> activated (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2596] manager: NetworkManager state is now CONNECTED_LOCAL
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2605] manager: NetworkManager state is now CONNECTED_SITE
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2607] policy: set 'Wired connection 1' (enp1s0f1) as default for IPv4 routing and DNS
Apr 13 10:40:27 pc NetworkManager[487]: <info>  [1618303227.2640] device (enp1s0f1): Activation: successful, device activated.
Apr 13 10:40:35 pc NetworkManager[487]: <info>  [1618303235.3135] device (enp1s0f1): carrier: link connected
Apr 13 10:40:35 pc NetworkManager[487]: <info>  [1618303235.3142] device (enp1s0f1): state change: activated -> unavailable (reason 'carrier-changed', sys-iface-state: 'managed')
Apr 13 10:40:35 pc NetworkManager[487]: <info>  [1618303235.3667] manager: NetworkManager state is now CONNECTED_LOCAL
Apr 13 10:40:35 pc NetworkManager[487]: <info>  [1618303235.3678] manager: NetworkManager state is now DISCONNECTED
Apr 13 10:40:40 pc NetworkManager[487]: <info>  [1618303240.3191] device (enp1s0f1): state change: unavailable -> disconnected (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:40 pc NetworkManager[487]: <info>  [1618303240.3223] policy: auto-activating connection 'Wired connection 1' (e76e5718-9a47-3733-818b-30aaa862bcf4)
Apr 13 10:40:40 pc NetworkManager[487]: <info>  [1618303240.3235] device (enp1s0f1): Activation: starting connection 'Wired connection 1' (e76e5718-9a47-3733-818b-30aaa862bcf4)
Apr 13 10:40:40 pc NetworkManager[487]: <info>  [1618303240.3238] device (enp1s0f1): state change: disconnected -> prepare (reason 'none', sys-iface-state: 'managed')
Apr 13 10:40:40 pc NetworkManager[487]: <info>  [1618303240.3247] manager: NetworkManager state is now CONNECTING
...start all over

따라서 NIC 자체는 이제 작동하지만 어느 정도까지만 작동합니다.

[me@pc ~]$ ping 192.168.99.1
PING 192.168.99.1 (192.168.99.1) 56(84) bytes of data.
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
From 192.168.99.8 icmp_seq=12 Destination Host Unreachable
From 192.168.99.8 icmp_seq=13 Destination Host Unreachable
From 192.168.99.8 icmp_seq=14 Destination Host Unreachable
64 bytes from 192.168.99.1: icmp_seq=15 ttl=64 time=1.65 ms
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable
ping: sendmsg: Network is unreachable

답변1

내 자신의 질문에 답하기 위해.

가상 머신에서 실행하기 위해 Windows 10을 버렸기 때문에 문제를 해결한 것이 아니라 우회했다고 생각합니다. 그런데 오늘 또 같은 증상이 나타났습니다. NetworkManager의 내장 클라이언트 대신 다른 DHCP 클라이언트를 탐색하고 시도한 후 마침내 내 NIC에 다른 드라이버를 사용하는 솔루션을 찾았습니다.

뒤쪽에

# rmmod r8168

그리고

# modprobe r8169

내 이더넷이 다시 잘 작동하고 있어요.

그것에 집착함으로써

# echo blacklist r8168 > /etc/modprobe.d/r8168.conf
# echo r8169 > /etc/modules-load.d/r8169.conf

/usr/lib/modprobe.d/r8168.conf에 제공된 패키지 구성을 재정의하려면 r8168.conf의 이름을 이러한 방식으로 지정하는 것이 필수적입니다.

관련 정보