Linux에서 특정 대상 호스트로의 경로에 어떤 네트워크 인터페이스 및 소스 IP 주소가 사용되는지 확인하는 방법


16

Linux 컴퓨터 (여기서는 Debian Lenny)에 여러 네트워크 인터페이스 (여기서는 2)가있는 경우 특정 대상 호스트로가는 경로가 어떤 네트워크 인터페이스 (NIC)인지, 기본적으로 어떤 소스 IP 주소가 사용되는지 어떻게 알 수 있습니까?

나는 사용하고있다.

ping -I nic1 desthost.example.com
ping -I nic2 desthost.example.com

두 가지 방법이 모두 가능한지 확인하십시오. (여기 : 두 가지 방법이 가능합니다)

라우팅 테이블을 찾았습니다

ip route show

그러나 그것은 매우 복잡하기 때문에 작은 간단한 도구로 나에게 말할 수 있다고 생각했습니다.

"대상 호스트 desthost.example.com에 인터페이스 nicX 및 소스 IP 주소 10.0.0.1이 필요합니다."

이 정보를 얻는 가장 간단한 방법은 무엇입니까?

(그리고 나는 오히려 tcpdump를 사용하지 않고 promiscous 모드에서 인터페이스를 설정하고 싶습니다.)

감사.

답변:


39

사용하십시오 ip route get <ip>.


1
그리고 인터페이스 만 얻으려면 :ip -o route get $ipaddress | perl -nle 'if(/dev\s+(\S+)/) {print $1}'
mivk

2
또는ip -o route get $ipaddress | awk '{ print $5 }'
ShadowFlame


0

사용 netstat -Wcatnp합니다. 이 명령을 시도해야합니다.


0

더 쉽게, 나는 nm-tool당신이 관련 라인 만 원한다면 말하고 싶습니다 nm-tool | grep Device. 출력해야합니다 :

- Device: wlan0  [My router name] -----------------------------------------------
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.