연결을 설정/유지하는 데 어떤 네트워크 장치가 사용됩니까?

연결을 설정/유지하는 데 어떤 네트워크 장치가 사용됩니까?

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

이것으로:

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기본 테이블만 표시합니다). 당신은 결과입니다.

둘째, 네트워크를 설계할 때의 경험 법칙은 "각 호스트는 하나만 가져옵니다.하나의네트워크 인터페이스는 연결된 각 서브넷에 연결됩니다. 여기서 가상 머신, 네트워크 네임스페이스 등은 모두 동일한 하드웨어에서 실행되더라도 추가 "호스트"로 간주됩니다.

결론은 "아니요, 동일한 네트워크 인터페이스에 여러 개의 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 

그러면 무슨 일이 일어나는지는 정의되어 있지 않습니다. 보시다시피 Linux 커널은 임의의 네트워크 인터페이스를 대상으로 선택합니다 10.0.0.*.

따라서 실제로 두 개의 서로 다른 WLAN에 연결되어 있습니다. 이 경우 WLAN 중 하나의 IP 범위를 예를 들어 10.0.1.0/24로 변경합니다. 또는 동일한 WLAN인 경우 두 개의 WLAN 어댑터를 사용할 필요가 없습니다.

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

따라서 아니요, 두 개의 ISP를 사용하여 인터넷에 연결하고 "인터넷을 더 빠르게" 만들 수 없습니다(대상 주소 등을 통해 사용할 연결을 결정하는 어려운 방법이 없는 한). 다음은 매주 받는 일반적인 질문에 대한 답변입니다.

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

관련 정보