Linux 라우팅 테이블에서 경로를 삭제하는 방법


42

이것은 내가 생각했던 것보다 더 어려운 것으로 판명되었습니다. 삭제하려는 경로는 "!"입니다. 경로를 거부했지만 올바른 "route del"명령을 공식화 할 수 없습니다.

라우팅 테이블은 다음과 같습니다.

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
67.40.227.206   *               255.255.255.255 UH    0      0        0 ppp0
192.168.46.79   *               255.255.255.255 UH    0      0        0 ipsec0
192.168.46.79   -               255.255.255.255 !H    2      -        0 -
192.168.1.0     *               255.255.255.0   U     0      0        0 eth0
10.1.0.0        *               255.255.0.0     U     0      0        0 ipsec0
10.1.0.0        -               255.255.0.0     !     2      -        0 -
default         *               0.0.0.0         U     3      0        0 ppp0
default         *               0.0.0.0         U     4      0        0 ppp0

192.168.46.79와 10.1.0.0에 대한 두 개의 항목이 있습니다. 이들은 내가 사용하는 작은 Linux 기반 라우터에 의해 자동 생성됩니다. 셸 자체에서 IPSEC 터널을 핑 (ping) 할 수 있지만 LAN의 트래픽은 내가 이해하지 못하는 이유로 두 번째 경로 (거부 된 "!"또는 "! H"경로)를 사용합니다.


트래픽이 '두 번째 경로'를 사용한다고 말할 때 더 구체적으로 설명 할 수 있습니까?
Zoredache

192.168.46.79에 대한 두 개의 테이블 항목을 확인하십시오. 라우터 쉘에서 터널의 측면을 핑하면 작동합니다. LAN 쪽에서 트래픽은 "second 192.168.46.79"항목으로 이동하여 거부 / 삭제됩니다.

또한 SG560이 "default"및 IPSEC 대상에 대해 두 개의 테이블 항목을 생성하는 이유를 이해하지 못합니다. 난 당황해

답변:


53

route -n명령 당신은 얻을 것이다

Kernel IP routing table
Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         192.168.178.1   0.0.0.0         UG    0      0        0 eth0
0.0.0.0         160.98.123.1    0.0.0.0         UG    600    0        0 wlan0

sudo route del -net 0.0.0.0 gw 192.168.178.1 netmask 0.0.0.0 dev eth0

위의 모든 매개 변수를 각각 얻을 수 있습니다


1
재부팅 후 다시 나타납니다. 영구적으로 삭제하려면 어떻게해야합니까?
Shyamkkhadka

1
@shyamkkhadka 그것은 생성 된 프로세스에 따라 다릅니다 ... 특정 사례에 질문을 게시하여 분석하는 것이 좋습니다. 도착하고 삭제하려는 경로에 대한 세부 정보를 제공하십시오. 대부분의 DHCP 서버와 클라이언트는 경로를 생성합니다
Philippe Gachoud

15

!플래그가 있는 경로의 유형은 도달 할 수 없거나 금지되어 있습니다. routenet-tools의 고대 유틸리티 였기 때문에 둘을 구별하지는 않습니다. iproute2를 사용하십시오.

이러한 경로를 삭제하는 net-tools 방법은 그 경로를 사용 route del하는 것입니다. 그러나 net-tools는 거부 된 경로와 다른 경로를 구별하는 방법을 제공하지 않습니다 (dev 인수는 선택 사항이므로 장치를 지정하지 않으면 도달 할 수없는 경로가 제거 될 수 있음).

iproute2를 사용하면 다음과 같이 할 수 있습니다.

ip route del unreachable 10.1.0.0/24
ip route del unreachable 192.168.46.79/32

도달 할 수 없지만 금지 할 수 있습니다. ip route인수없이 결정하여 사용하십시오 .


8

나는 이것이 생각합니다 : route del -net 10.1.0.0 netmask 255.255.0.0 metric 2

나는 100 % 확실하지 않다. 그러나 2 개의 기본 경로가 있기 때문에 다른 구피가 있다고 생각합니다.


2
+1 : 2 기본 경로는 항상 잘못 구성된 항목의 표시입니다 (실제로 다른 게이트웨이를 가리키고 메트릭이 다른 경우 제외).
wolfgangsz

-1

/etc/network/interfaces.d/ 아래에 "장치 설정 파일"이 있는지 확인하십시오-> eht0이있었습니다 !! 실제로, 그것은 eht0이었고 거기에 eth0이 아니 었습니다!


현재 질문에 대한 답변과 관련하여 명확하지 않기 때문에 답변을 다소 확장하고 싶을 수도 있습니다.
울림
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.