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.