LAN 케이블 2개, PCI 버스 1개 또는 그 반대로 연결

LAN 케이블 2개, PCI 버스 1개 또는 그 반대로 연결

내 컴퓨터에 LAN 케이블 2개를 연결하면 하나의 인터페이스만 등록됩니다.

03:00.0 및 04:00.0

$ dmesg | grep -P '0(3|4):00.0'
[    0.180140] pci 0000:04:00.0: [11ab:4362] type 00 class 0x020000
[    0.180181] pci 0000:04:00.0: reg 0x10: [mem 0xfa8fc000-0xfa8fffff 64bit]
[    0.180193] pci 0000:04:00.0: reg 0x18: [io  0xb800-0xb8ff]
[    0.180233] pci 0000:04:00.0: reg 0x30: [mem 0xfa8c0000-0xfa8dffff pref]
[    0.180277] pci 0000:04:00.0: supports D1 D2
[    0.180279] pci 0000:04:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    0.180337] pci 0000:04:00.0: disabling ASPM on pre-1.1 PCIe device.  You can enable it with 'pcie_aspm=force'
[    2.077454] sky2 0000:04:00.0: Yukon-2 EC chip revision 2
[    2.080310] sky2 0000:04:00.0 eth0: addr 00:00:00:00:66:b6
[    2.147949] sky2 0000:04:00.0 enp4s0: renamed from eth0
[   18.815400] sky2 0000:04:00.0 enp4s0: enabling interface
[   21.829377] sky2 0000:04:00.0 enp4s0: Link is up at 1000 Mbps, full duplex, flow control both

하나의 케이블로 서버를 시작하면 두 인터페이스가 모두 검색되고 두 번째 케이블을 연결하여 사용할 수 있습니다.

$ dmesg | grep -P '0(3|4):00.0'
[    0.180140] pci 0000:04:00.0: [11ab:4362] type 00 class 0x020000
[    0.180182] pci 0000:04:00.0: reg 0x10: [mem 0xfa8fc000-0xfa8fffff 64bit]
[    0.180193] pci 0000:04:00.0: reg 0x18: [io  0xb800-0xb8ff]
[    0.180233] pci 0000:04:00.0: reg 0x30: [mem 0xfa8c0000-0xfa8dffff pref]
[    0.180277] pci 0000:04:00.0: supports D1 D2
[    0.180280] pci 0000:04:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    0.180338] pci 0000:04:00.0: disabling ASPM on pre-1.1 PCIe device.  You can enable it with 'pcie_aspm=force'
[    0.180424] pci 0000:03:00.0: [11ab:4362] type 00 class 0x020000
[    0.180465] pci 0000:03:00.0: reg 0x10: [mem 0xfa7fc000-0xfa7fffff 64bit]
[    0.180476] pci 0000:03:00.0: reg 0x18: [io  0xa800-0xa8ff]
[    0.180516] pci 0000:03:00.0: reg 0x30: [mem 0xfa7c0000-0xfa7dffff pref]
[    0.180559] pci 0000:03:00.0: supports D1 D2
[    0.180562] pci 0000:03:00.0: PME# supported from D0 D1 D2 D3hot D3cold
[    0.180620] pci 0000:03:00.0: disabling ASPM on pre-1.1 PCIe device.  You can enable it with 'pcie_aspm=force'
[    2.062437] sky2 0000:04:00.0: Yukon-2 EC chip revision 2
[    2.064723] sky2 0000:04:00.0 eth0: addr 00:00:00:00:66:b6
[    2.068332] sky2 0000:03:00.0: Yukon-2 EC chip revision 2
[    2.070348] sky2 0000:03:00.0 eth1: addr 00:00:00:00:62:84
[    2.140054] sky2 0000:04:00.0 enp4s0: renamed from eth0
[    2.256554] sky2 0000:03:00.0 enp3s0: renamed from eth1
[   19.799013] sky2 0000:04:00.0 enp4s0: enabling interface
[   19.801113] sky2 0000:03:00.0 enp3s0: enabling interface
[   22.727625] sky2 0000:04:00.0 enp4s0: Link is up at 1000 Mbps, full duplex, flow control both
[  412.644094] sky2 0000:03:00.0 enp3s0: Link is up at 1000 Mbps, full duplex, flow control both

추가 디버깅을 위해 어떤 단계를 수행할 수 있나요?

Extra info:
Motherboard: Asus P5W
Chipset: marvell Yukon 88E8053 
Drivers used(auto): sky2

$ cat /etc/lsb-release
DISTRIB_ID=Ubuntu
DISTRIB_RELEASE=16.04
DISTRIB_CODENAME=xenial
DISTRIB_DESCRIPTION="Ubuntu 16.04.5 LTS"
Kernel: 4.4.0-138-generic

편집 1: 두 개의 dmesg 로그를 비교했는데 몇 가지 흥미로운 점이 있습니다.

케이블 1개를 연결한 경우:

Base memory trampoline at [        (ptrval)] 99000 size 24576
BRK [0x1a3d3f000, 0x1a3d3ffff] PGTABLE
BRK [0x1a3d40000, 0x1a3d40fff] PGTABLE
BRK [0x1a3d41000, 0x1a3d41fff] PGTABLE
BRK [0x1a3d42000, 0x1a3d42fff] PGTABLE
BRK [0x1a3d43000, 0x1a3d43fff] PGTABLE
BRK [0x1a3d44000, 0x1a3d44fff] PGTABLE
BRK [0x1a3d45000, 0x1a3d45fff] PGTABLE
BRK [0x1a3d46000, 0x1a3d46fff] PGTABLE
BRK [0x1a3d47000, 0x1a3d47fff] PGTABLE
BRK [0x1a3d48000, 0x1a3d48fff] PGTABLE

그러나 2개의 케이블을 연결하면 다음 라인이 줄어듭니다.

Base memory trampoline at [        (ptrval)] 99000 size 24576
BRK [0x0bd3f000, 0x0bd3ffff] PGTABLE
BRK [0x0bd40000, 0x0bd40fff] PGTABLE
BRK [0x0bd41000, 0x0bd41fff] PGTABLE
BRK [0x0bd42000, 0x0bd42fff] PGTABLE
BRK [0x0bd43000, 0x0bd43fff] PGTABLE
BRK [0x0bd44000, 0x0bd44fff] PGTABLE
BRK [0x0bd45000, 0x0bd45fff] PGTABLE

그 후에는 PCI 버스를 초기화할 때 유일한 차이점이 발생합니다.

pci 0000:03:00.0: [11ab:4362] type 00 class 0x020000
pci 0000:03:00.0: reg 0x10: [mem 0xfa7fc000-0xfa7fffff 64bit]
pci 0000:03:00.0: reg 0x18: [io  0xa800-0xa8ff]
pci 0000:03:00.0: reg 0x30: [mem 0xfa7c0000-0xfa7dffff pref]
pci 0000:03:00.0: supports D1 D2
pci 0000:03:00.0: PME# supported from D0 D1 D2 D3hot D3cold
pci 0000:03:00.0: disabling ASPM on pre-1.1 PCIe device.  You can enable it with 'pcie_aspm=force'
pci 0000:00:1c.4: PCI bridge to [bus 03]

나머지는 사실상 동일합니다.

이 문제를 자세히 조사할수록 하드웨어 문제라는 생각이 더 커집니다. 아니면 내가 알지 못하고 LAN 기능과 직접적인 관련이 없는 BIOS의 옵션일 수도 있습니다. 그러나 하나의 케이블을 사용하거나 부팅 후 추가 케이블을 연결하면 두 포트 모두 정상적으로 작동합니다.

편집 2: https://www.neoseeeker.com/Articles/Hardware/Reviews/asus_p5wdh/3.html

BIOS 스크린샷이 포함된 외부 링크를 추가했습니다. 모든 것을 읽으려고 노력했지만 다음을 제외하고 LAN에 대해서는 아무것도 찾을 수 없었습니다.

Onboard PCIE GbE LAN_1   **ENABLED**/DISABLED
Onboard PCIE GbE LAN_2   **ENABLED**/DISABLED
  LAN Option ROM         ENABLED/**DISABLED**
POST Check LAN Cable     **ENABLED**/DISABLED

나는 결과 없이 이 설정을 사용했습니다.

관련 정보