Network Manager가 네트워크에 연결할 수 없습니다(Debian 10/Kernel 4.19).

Network Manager가 네트워크에 연결할 수 없습니다(Debian 10/Kernel 4.19).

전체 데스크탑 설정을 Windows에서 GNU/Linux + Debian 10으로 전환했습니다. 나는 debian netinstaller를 실행하고 인터넷 소프트웨어 업데이트를 위해 마더보드에 연결할 수 있었습니다.

하지만 전체 설정을 시작하고 실행할 때마다 데비안은 이더넷을 통해 네트워크에 연결하지 않습니다. 로그인하면 인터페이스에 네트워크 연결이 끊어졌다는 메시지가 즉시 표시됩니다. 마더보드를 교체한 후 소프트웨어/드라이버 문제인 것이 확실해졌습니다.

내 하드웨어 설정에는 다음이 포함됩니다.

  • ASUS ROG 크로스헤어 히어로 VI
  • PCI1의 엔비디아 GTX 670
  • PCI2의 Nvidia GTX 970(목적은 가상 머신으로의 패스스루)
  • 라이젠 7 2700X
  • 암호화된 LVM을 갖춘 Samsung EVO SSD, 추가 파티셔닝이 필요하지 않음

이 질문은 다음과 유사합니다.https://askubuntu.com/questions/1135412/updated-to-19-04-and-no-ethernet-now, 하지만 설정이 다르고 stackexchange 등을 조사해도 도움이 되지 않았습니다.

출력 systemctl status NetworkManager:

device (enp4s0): state change: prepare -> config (reason 'none', sys-iface-state: 'managed')  
device (enp4s0): state change: config -> ip-config (reason 'none', sys-iface-state:'managed')  
dhcp4 (enp4s0): activation: beginning transaction (timeout in 45 seconds)
DHCPrequests  
dhcp4 (enp4s0): dhclient started with pid 1334
device (enp4s0): state change: ip-config -> unavailable (reason 'carrier-changed', sys-iface-state: 'managed')  
dhcp4 (enp4s0): canceled DHCP transaction, DHCP client pid 1334  
dhcp4 (enp4s0): state changed unknown -> done  
manager: NetworkManager state is now DISCONNECTED

출력 lspci | grep Ethernet:

Ethernet controller: Intel Corporation I211 Gigabit Network Connection (rev 03)

/etc/network/interfaces는 동일하게 유지되므로 핫플러그 또는 고정 IP 주소로 변경해도 도움이 되지 않습니다. nmcli에서 정적 네트워크 설정을 지정하는 것과 동일합니다.

출력 nmcli device show enp4s0:

GENERAL.DEVICE: enp4s0
GENERAL.TYPE: ethernet
GENERAL.HWADDR: 04:92:26:DA:16:CC
GENERAL.MTU: 1500
GENERAL.STATE: 20 (unavailable)

출력 uname -a:

Linux NAMEOFPC 4.19.0-5-amd64 #1 SMP Debian 4.19.37-5+deb10u1 (2019-07-19) x86_64 GNU/Linux

출력 Dmesg | grep enp4s0:

    1.054338] igb 0000:04:00.0 enp4s0: renamed from eth0
[   56.832109] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[   56.857033] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[   59.608583] igb 0000:04:00.0 enp4s0: igb: enp4s0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
[   59.608829] IPv6: ADDRCONF(NETDEV_CHANGE): enp4s0: link becomes ready
[   83.708581] igb 0000:04:00.0 enp4s0: igb: enp4s0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
[  147.966461] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[  320.546500] IPv6: ADDRCONF(NETDEV_UP): enp4s0: link is not ready
[  323.280590] igb 0000:04:00.0 enp4s0: igb: enp4s0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX
[  323.280831] IPv6: ADDRCONF(NETDEV_CHANGE): enp4s0: link becomes ready
[  326.168592] igb 0000:04:00.0 enp4s0: igb: enp4s0 NIC Link is Up 100 Mbps Full Duplex, Flow Control: RX/TX

물리적 연결 끊김은 해결책이 아니며, NetworkManager에 즉시 통보되고 물리적 연결이 다시 끊어지지 않습니다. 유일한 해결책은 ip link set enp4s0 down다음을 따르는 것 같습니다 ip link set enp4s0 up. 이건 ps일거야

또한 무료가 아닌 저장소도 추가했지만 소용이 없었습니다. 제가 시도하지 않은 유일한 솔루션은 독점 Intel I211 드라이버입니다. 그러나 언급된 askubuntu-post가 커널 5.x 및 Realtek 네트워크 카드를 사용하기 때문에 이것이 해결책인지는 모르겠습니다. 동일한 문제가 있습니다.

편집: 또한 이 질문은 거의 언급되지 않는 것 같습니다. 유일한 해결책이 새 드라이버를 커널 공간으로 컴파일하는 것이라면 이 문제에 대한 더 많은 게시물을 찾을 수 있을 것이라고 생각합니다. 또한 Intel에서는 I211용 IGP-linux 드라이버가 커널 2.x 및 3.x용으로 제작되었다고 밝혔습니다.

cat /sys/class/net/enp4s0/device/power/control의 출력:

"존재하다"

라우터에 직접 연결하여 즉시 네트워크 연결을 설정하세요. 또한 스위치는 실제로 100mbps로 제한됩니다. 아직 ethtool을 설치할 시간이 없었습니다. 시간이 나면 업데이트하겠습니다.

이 문제에 대한 해결책이 있습니까?

아마도 NetworkManager 메시지 "reason 'carrierchange', sys-iface-state: 'hosted'"가 문제를 밝혀줄 수 있을까요? 암호화된 LVM이 종료 후에도 일종의 휴면 상태로 남아 있기 때문일까요? 이는 종료 및 시작(예: 최대 절전 모드에서 재개)할 때 CLI가 알려주는 내용입니다.

답변1

통합 Intel 네트워크 카드는 EEE(Energy Efficient Ethernet)를 지원할 가능성이 높습니다. 링크가 일정 기간 동안 비활성화되면 트래픽이 돌아올 때까지 속도가 더 낮은 수준으로 떨어집니다. 이는 기가비트 링크에서 가장 중요하지만 메시지에 따르면 인터페이스는 100Mbps 링크만 협상하므로 링크의 반대쪽 끝에서는 기가비트 속도와 EEE가 지원되지 않을 수 있습니다.

또는 상대방이 확실히 기가비트를 지원하는 경우 100Mbps 링크만 협상된다는 사실은 EEE로 인해 100Mbps와 기가비트 모드 사이의 빠른 전환으로 인해 원격 끝이 혼란스러울 수 있음을 의미합니다. 한 모드에서 다른 모드로의 예상치 못한 전환이나 너무 느린 전환으로 인해 NetworkManager가 상태를 벗어날 수 있습니다 carrier-changed.

따라서 EEE를 꺼볼 수 있습니다.

ethtool --set-eee enp4s0 eee off

아니면 다음과 같을 수도 있습니다.이 오류: 이 명령은 무엇을 말하나요?

cat /sys/class/net/enp4s0/device/power/control

라고 표시되면 auto다음을 시도해 보세요.

echo "on" > /sys/class/net/enp4s0/device/power/control

이는 NIC가 사용하도록 구성되지 않은 것으로 나타나면 잠재적으로 NIC의 전원을 끄는 대신 네트워크 인터페이스의 PCIe 측 전원을 켜두도록 커널에 지시합니다.

최악의 경우, 새 마더보드의 NIC와 네트워크 케이블의 반대쪽 끝에 있는 장치 간에 하드웨어 호환성 문제가 있을 수 있습니다. 한때 새로운 기가비트 NIC와 작동하지 않는 8포트 DLink 10/100Mbps 스위치가 있었습니다.

답변2

"Carrier Change" 로그에서 연결 끊김을 발견했습니다.

"캐리어 변경" 오류가 발생하고 이더넷 연결이 계속 끊겼습니다. 여러 포럼에서 모든 솔루션을 시도한 후 결국 CAT5 케이블을 CAT7 케이블(길이 10m - eBay에서 저렴함)로 업그레이드하여 문제를 해결했습니다. 분명히 오래된 CAT5 케이블은 ISP의 업그레이드된 속도(영국 Virgin Media)를 처리할 수 없었습니다. 새로운 CAT7 케이블은 패킷 손실을 제거할 뿐만 아니라 이제 속도를 100Mb/s에서 1000Mb/s까지 자동으로 구성할 수 있습니다. 이것이 "통신사 변경" 문제를 해결하려는 모든 사람에게 도움이 되기를 바랍니다.

관련 정보