인터페이스가 물리적으로 다운된 경우 Linux가 라우팅 테이블에서 경로를 제거하지 않는 이유는 무엇입니까?

인터페이스가 물리적으로 다운된 경우 Linux가 라우팅 테이블에서 경로를 제거하지 않는 이유는 무엇입니까?

아래에 표시된 것처럼 Linux(3.7-trunk-686-pae)는 인터페이스가 물리적으로 종료되었음에도 불구하고 라우팅 테이블에서 10.10.12.64/28에 대한 경로를 계속 유지합니다.

root@kali:~# ip addr show dev eth0
2: eth0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc pfifo_fast state DOWN qlen 1000
    link/ether b4:99:ba:57:7c:5f brd ff:ff:ff:ff:ff:ff
    inet 10.10.12.77/28 scope global eth0
root@kali:~# ip route show dev eth0
10.10.12.64/28  proto kernel  scope link  src 10.10.12.77 
root@kali:~# ip route get 10.10.12.69
10.10.12.69 dev eth0  src 10.10.12.77 
    cache 
root@kali:~# 

관리상 인터페이스를 비활성화하면("ip link set dev eth0 down") 경로가 라우팅 테이블에서 제거됩니다.

인터페이스 자체가 물리적으로 다운되었을 때 라우팅 테이블에 경로를 유지하는 목적은 무엇입니까? 예를 들어, 인터페이스가 다운되었을 때 더 구체적인 경로 10.10.12.64/28이 존재하지 않으면 트래픽은 덜 구체적인 경로(예: 0.0.0.0/0)로 전송되어 작동 중인 다른 인터페이스로 전송될 수 있습니다.

답변1

다른 인터페이스가 트래픽을 올바르게 라우팅한다는 보장은 없습니다. 지정된 주소의 장치로 라우팅되더라도 해당 장치는 의도한 장치가 아닐 수 있습니다. 많은 질문이 발생할 수 있습니다.

다른 인터페이스로 경로를 변경하면 트래픽에 NAT 규칙이 적용되어 인터페이스가 시작될 때 연결이 끊어질 수 있습니다.

질문에 지정된 개인 IP 주소 범위의 경우 인터페이스가 완전히 다른 네트워크를 사용하는 다른 조직에 연결될 수 있습니다. 로컬 10.0.0.0/8 네트워크는 이러한 유형의 트래픽을 라우팅하는 데 적합하지 않습니다. 동일한 조직 내에서도 블록은 프로덕션 네트워크를 복제하는 테스트 네트워크일 수 있습니다.

인터넷을 통해 라우팅할 수 있는 주소의 경우 보안상의 이유로 트래픽이 인터넷을 통해 라우팅되지 않을 수 있습니다. 권장되지는 않지만 로컬 라우팅을 사용하여 보안을 유지해야 하는 트래픽을 라우팅할 수 있습니다. 트래픽을 암호화하는 것이 가장 좋지만 일부 상황에서는 암호화하기가 어려울 수 있습니다.

답변2

나의 최선의 조언은 netplug를 사용하는 것입니다.http://www.red-bean.com/~bos/

이것을 사용하여 실행하십시오.

 ip link set eth0 down

케이블을 뽑았을 때. 회복되면 그 반대가 됩니다.

이는 순전히 라우터인 머신에는 적합합니다. 그러나 머신에 다른 서비스가 있는 경우 해당 서비스는 내부 IP 주소에 바인딩되어야 합니다.

관련 정보