연결을 설정/유지하는 데 사용되는 네트워크 장치는 무엇입니까?

연결을 설정/유지하는 데 사용되는 네트워크 장치는 무엇입니까?

두 개의 네트워크 장치가 있는 경우 요청된 연결 출력에 어떤 장치가 사용되고 있는지 어떻게 알 수 있습니까?

이것으로 :

ip r
  default via 10.0.0.1 dev wlp3s0 proto static 
  default via 10.0.0.1 dev wlx00e04c221395 proto dhcp src 10.0.0.143 metric 600 
  10.0.0.0/24 dev wlp3s0 proto kernel scope link src 10.0.0.120 
  10.0.0.0/24 dev wlx00e04c221395 proto kernel scope link src 10.0.0.143 
  10.0.0.1 dev wlx00e04c221395 proto dhcp scope link src 10.0.0.143 metric 600 

두 가지 경로가 있습니다 default. 시스템은 항상 명령에 나열된 첫 번째 항목을 사용합니까 ip r?

답변1

여기에서 아래 명령으로 라우팅 테이블을 확인하세요.미터법열은 일반적으로 라우팅 우선순위를 결정합니다.

$ route -n

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         10.42.0.2       0.0.0.0         UG    50     0        0 eth1
0.0.0.0         10.42.0.1       0.0.0.0         UG    100    0        0 eth0

이 우선순위는 재부팅/시작 후 나타나는 인터페이스의 순서에 따라 결정되며, 아래 명령을 사용하여 우선순위에 영향을 줄 수도 있습니다.

sudo ifmetric <interface> <priority>

답변2

다른 답변에 대한 의견의 토론에는 자체 답변이 필요하다고 생각합니다.

ip route첫째, 또는 를 사용하여 라우팅 테이블을 나열 route -n하고 어떤 일이 일어날지 직접 알아낼 수 있지만 커널에 ip route get a.b.c.d라우팅 테이블을 살펴보도록 요청하는 것이 더 쉽습니다(예, 최신 Linux 시스템에는 더 많은 테이블이 route -n있으며 메인 테이블) 결과를 알려드립니다.

둘째, 네트워크 설계에 대한 경험적 법칙은 "각 호스트는 오직하나의연결된 각 서브넷에 대한 네트워크 인터페이스"입니다. 여기서 VM, 네트워크 네임스페이스 등은 동일한 하드웨어에서 실행되더라도 추가 "호스트"로 계산됩니다.

결과적으로 "아니요, 동일한 네트워크 인터페이스에 여러 개의 IPv4 주소를 할당하지 않습니다"입니다(무엇을 하고 있는지 알지 못하더라도 그렇게 할 경우 위험이 따릅니다).

그 이유는 서로 다른 네트워크 인터페이스를 통해 액세스할 수 있는 서브넷을 만들어도 얻을 수 있는 이점이 없기 때문입니다. 즉, 어떤 방식으로든 동일한 서브넷에 들어가게 됩니다.

위와 같이 이러한 규칙을 위반하면 두 개의 WLAN이 동일한 서브넷에 연결된 것으로 보입니다.

10.0.0.0/24 dev wlp3s0 proto kernel scope link src 10.0.0.120 
10.0.0.0/24 dev wlx00e04c221395 proto kernel scope link src 10.0.0.143 

그러면 무슨 일이 일어나는지는 정의되지 않습니다. 보시다시피, 리눅스 커널은 목적지에 대해 네트워크 인터페이스 중 하나를 무작위로 선택합니다 10.0.0.*.

따라서 둘 중 하나는 실제로 두 개의 서로 다른 WLAN에 연결됩니다. 이 경우 WLAN 중 하나의 IP 범위를 10.0.1.0/24로 변경합니다. 또는 동일한 WLAN이고 이 경우 두 개의 WLAN 어댑터를 사용하는 것은 의미가 없습니다.

이는 기본 규칙과 유사합니다. 기본 규칙은 하나만 있어야 합니다. 규칙이 여러 개 있다는 것은 동작이 정의되지 않았으며 규칙이 무작위로 선택된다는 것을 의미합니다. 이는 한 연결의 패킷이 다른 매개변수(예: 소스 주소)를 사용하여 무작위로 전송되고 반면에 호스트는 한 세트의 매개변수(연결이 열린 매개변수)만 인식하고 다른 패킷은 삭제함을 의미합니다. 누락된 패킷을 손실된 패킷으로 간주합니다. 표준 인터넷 프로토콜이 "단일 홈"이기 때문입니다. 멀티홈 프로토콜(예: SCTP 또는 멀티홈 TCP 확장)이 있지만 현재 유용할 만큼 널리 사용되지는 않습니다.

따라서 두 개의 ISP를 사용하여 인터넷에 연결하고 "인터넷을 더 빠르게" 만들 수 없습니다(예를 들어 대상 주소 등을 사용하여 사용할 연결을 결정하는 어려운 방법이 없는 한). 매주 한 번씩 질문을 받는 FAQ입니다.

원래 질문에서 묻지 않은 모든 질문(또는 적어도 대부분)에 대한 답변이 되기를 바랍니다.

관련 정보