Linux Route에서 'linkdown'과 'onlink'는 무엇을 의미합니까?

Linux Route에서 'linkdown'과 'onlink'는 무엇을 의미합니까?

내가 입력할 때 ip route show: IP 경로 표시

실제로 무엇을 linkdown의미합니까? 가끔은 아직도 볼 수 있어요 onlink. 나는 또한 그것이 무엇을 의미하는지 알고 싶습니다 onlink.

라우팅 우선순위에 영향을 미치나요? 예를 들어 그림의 두 기본 경로는

답변1

linkdown테이블에 표시되고 해당 상태의 인터페이스를 통해 나가는 경로에 대해 구성되는 상태입니다 DOWN. 다음을 실행하여 이를 확인할 수 있습니다.

ip a

인터페이스의 상태를 찾으십시오. 내 노트북에서 WiFi를 켜고 이더넷 어댑터를 분리하면 다음과 같이 표시됩니다.

wlp3s0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
enp0s25: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000

내 라우팅 테이블에는 많은 경로가 있지만 몇 가지 정크 경로를 추가할 수 있습니다.

sudo ip route add 192.168.123.0/24 dev enp0s25
sudo ip route add 192.168.124.0/24 dev wlp3s0

linkdown그러면 내 테이블에 이더넷 경로가 표시됩니다 .

 192.168.123.0/24 dev enp0s25 scope link linkdown 
 192.168.124.0/24 dev wlp3s0 scope link 

onlink이는 경로가 "인터페이스 접두사와 일치하지 않더라도 다음 홉이 이 링크에 직접 연결된 것으로 가정"해야 함을 의미합니다. 따라서 우리는 가짜 테이블을 하나로 만들 수도 있습니다:

sudo ip route add 192.168.125.0/24 via 192.168.123.111 dev wlp3s0 onlink

이제 라우팅 테이블에 다음이 표시됩니다.

192.168.123.0/24 dev enp0s25 scope link linkdown 
192.168.124.0/24 dev wlp3s0 scope link 
192.168.125.0/24 via 192.168.123.111 dev wlp3s0 onlink 

다운스트림 인터페이스에 연결하면 멋져지고 두 가지를 모두 가질 수도 있습니다.

192.168.126.0/24 via 192.168.123.111 dev enp0s25 onlink linkdown

답변2

linkdown테이블에 표시되고 해당 상태의 인터페이스를 통해 나가는 경로에 대해 구성되는 상태입니다 DOWN.

onlink이 옵션이 실제로 무엇을 하는지 보기 위해 예를 들어보겠습니다 .

eth0컴퓨터에서 IP 주소/마스크를 구성했습니다: 192.168.0.1/24

어떤 이유로 eth0실제 LAN에서 일관되지 않게 구성된 게이트웨이를 사용하려고 합니다. 주소가 10.0.10.1/24라고 가정합니다. 이는 컴퓨터에 제공한 192.168.0.1/24 구성과 일치하지 않습니다.

당신이 말하는 경우:

ip route add default dev eth0 via 10.0.10.1

그런 다음 오류 응답(네트워크에 연결할 수 없음 등)을 받게 됩니다.

왜? (엄밀히 말하면) eth0컴퓨터에 이 LAN의 네트워크 주소가 192.168.0.0/24라고 지정했기 때문에 10.0.10.1 LAN에 컴퓨터를 두는 것은 의미가 없습니다 .

onlink하지만 다음과 같은 결과가 나옵니다. 다음과 같이 명령에 추가하면 :

ip route add default dev eth0 via 10.0.10.1 onlink

그러면 경로가 승인됩니다.

onlink하지만 이제 또 다른 문제가 생겼습니다. 패킷이 이 게이트웨이 로 라우팅되어야 하는 경우 커널은 무엇을 할까요 ?

(실험적으로) 확인한 결과는 다음과 같습니다. 커널은 사용자가 구성한 게이트웨이 eth0인 "10.0.10.1이 있는 사람"을 요청하는 LAN에서 arp 요청을 보냅니다. onlink응답을 받으면 커널은MAC 주소패킷을 보내고 라우팅을 수행할 수 있습니다.

즉, 게이트웨이 주소가 시스템의 LAN 구성과 일치하지 않는 경우( ) eth0명령문에 추가하여 커널이 이 게이트웨이를 사용하도록 강제할 수 있습니다.onlink

이 기능을 사용해야 하는 경우는 거의 없는 것 같습니다. 온라인링크 옵션이 필요한 상황은 대부분 네트워크 설계가 좋지 않기 때문입니다. 일반적인 터널 설정에도 필요하지 않다고 생각합니다 onlink.

답변 출처:여기

관련 정보