Linux는 둘 다 동일한 네트워크에 연결되어 있을 때 사용할 네트워크 인터페이스를 어떻게 결정합니까?
이것은 라우팅에 관한 질문이 아닙니다. 나는 그것이 어떻게 작동하는지 잘 알고 있습니다. 예를 들어, 내 노트북이 이더넷 카드와 무선 카드를 통해 무선 라우터에 연결되어 있거나 두 개의 이더넷 카드가 모두 동일한 라우터에 연결되어 있는 경우입니다.
내 경험에 따르면 내 노트북은 무선 인터페이스(eth1 - 무선 인터페이스의 일반적인 이름은 아니지만 내가 가지고 있는 이름임)보다 이더넷 카드(eth0)를 선호하는 것 같습니다. 알아요, 어떻게 결정되나요? 가장 낮은 번호의 인터페이스 중에서 선택하는 경우 두 가지 선택 사항이 eth0과 wlan0이면 어떻게 될까요?
편집: @Nils는 이것이 여전히 라우팅 문제이며 라우팅 테이블이 답변을 제공한다고 지적했습니다(그의 답변 참조). 이로 인해 여전히 원래 문제가 발생하지만 형태는 다릅니다. Linux 라우팅 테이블의 항목 순서는 어떻게 결정됩니까? 예를 들어 다음은 두 인터페이스에 연결되었을 때의 라우팅 테이블입니다.
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
0.0.0.0 192.168.4.1 0.0.0.0 UG 0 0 0 eth0
169.254.0.0 0.0.0.0 255.255.0.0 U 0 0 0 eth0
192.168.4.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0
192.168.4.0 0.0.0.0 255.255.255.0 U 0 0 0 eth1
분명히 로컬 네트워크의 대상에 대해 eth0은 표의 eth1보다 우선 순위가 높지만 이것이 링크 대기 시간, 링크 처리량 또는 Linux의 인터페이스 이름 등에 의해 결정됩니까? (eth0이 기본 라우팅 인터페이스인 이유와 동일한 문제가 있을 수도 있습니다.)
답변1
음 - 라우팅 문제입니다.
대답은 간단합니다. 최상의 라우팅 항목이 제공된 첫 번째 항목이 "승자"입니다. 먼저 netstat -rn
어떤 인터페이스인지 살펴보세요.
고쳐 쓰다:네트워크 인터페이스 라우팅 설정은 일반적으로 시스템 시작 중에 설정됩니다. 따라서 네트워크 장치의 시작 순서는 이 표의 순서가 됩니다. PCI 장치의 경우 일반적으로 가장 낮은 슬롯 번호부터 처리됩니다. 외부 장치(예: USB)는 일반적으로 나중에 제공됩니다.
그러나 정확한 순서는 Linux 스타일 네트워크 시작 스크립트에 따라 다릅니다(여기서 매우 다릅니다).
참고: 두 링크를 활용하려면 다음으로 이동해야 합니다.본딩. 여기서 링크가 사용되는 순서를 설정할 수 있습니다.