네트워크 인터페이스가 탭, 튜닝, 브리지 또는 물리적인지 확인하는 방법은 무엇입니까?


19

내가 아는 한 Linux에는 4 가지 주요 네트워크 인터페이스 유형 인 tun, tap, bridge 및 physical이 있습니다.

KVM을 실행하는 컴퓨터에서 sys admin을 수행 할 때 일반적으로 동일한 컴퓨터에서 탭, 브리지 및 물리적 인터페이스를 구분할 수는 없습니다. ifconfig결과에서와 같이 결과 에서 큰 차이를 볼 수 없습니다 ip.

인터페이스가 튜닝, 탭, 브리지 또는 물리적인지 어떻게 알 수 있습니까?

참고 : Linux에는 다른 유형의 네트워크 인터페이스가 없다고 주장하지는 않지만이 4 만 알고 있습니다.

답변:


18

나는 그것들을 구별하는 쉬운 방법이 없다고 생각합니다. 주변에서 파고 들다 /sys/class/net보면 다음과 같은 차이점이 있습니다.

  • 물리적 장치에는 /sys/class/net/eth0/device심볼릭 링크가 있습니다
  • 교량에는 /sys/class/net/br0/bridge디렉토리가 있습니다
  • TUN 및 TAP 장치에는 /sys/class/net/tap0/tun_flags파일이 있습니다
  • 교량 및 루프백 인터페이스가 00:00:00:00:00:00에/sys/class/net/lo/address

/ sys /를 살펴 보는 것이 좋습니다
— user368507

가상 디바이스는 또한 그러한에있을 수 있습니다 device심볼릭 링크 : ls -l /sys/class/net/lan1/device쇼 /sys/class/net/lan1/device -> ../../../dsa.0라우터에 OpenWrt를 실행 (임베디드 리눅스). 실제 인터페이스의 출력에 인터럽트 항목이 있음을 발견했습니다 ifconfig. 인터페이스에 대한 간단한 질문에 대답하기가 너무 어렵다는 것은 이상합니다. 수사 계속 ...
— Lumi

ppp 가상 장치는 어떻습니까?
— Mâtt Frëëman

23

TUN 및 TAP 장치와 관련하여 : 위에서 확인하기에 충분하지 않습니다.

그 이유는 TUN 장치를 만들고 실수로 tap10이라고 부르는 경우가있을 수 있기 때문입니다. 또는 TAP 장치를 생성하고 이름을 tun10으로 지정하십시오. 두 장치 모두 "tun_flags"항목을 가지므로 tun 장치인지 탭 장치인지 어떻게 알 수 있습니까?

대답은 실행하는 것 ethtool -i tunOrTapDeviceName입니다.

  • TAP 장치의 경우 "bus-info : tap"이 표시됩니다.
  • TUN 장치의 경우 "bus-info : tun"이 표시됩니다.

예

$ ethtool -i tapfffb93e9-6a
driver: tun
version: 1.6
firmware-version:
bus-info: tap
supports-statistics: no
supports-test: no
supports-eeprom-access: no
supports-register-dump: no
supports-priv-flags: no

인터페이스가 물리적인지 아니면 브리지인지를 찾기위한 ethtool 명령이 없습니까?
— madCode

이 답변은보다 간결하고 일반적인 솔루션입니다.
— Joshua Miller

@madcode 일반적으로 driver필드 를 원합니다 . 다리가 표시 driver: bridge됩니다. 불행히도 tun / tap은 둘 다로 표시되어 driver: tun패턴을 깨뜨립니다.
— sourcejedi

네 이것이 답입니다. 다른 하나는 intf가 가상이 아닌지 알려줍니다! 인터페이스의 특성을 나타내지 않는 이름으로 탭 인터페이스의 이름을 지정할 수 있습니다.
— MiniMe

9

문서화되지 않은보다 많은 -d옵션을 ip(8)사용하여 tun, tap & veth를 포함한 특정 장치의 유형을 알려줍니다.

예 :

$ ip -d a
[regular devices]
6: virbr0-nic: <BROADCAST,MULTICAST> mtu 1500 qdisc pfifo_fast state DOWN group default qlen 1000
link/ether 52:54:00:c8:12:ec brd ff:ff:ff:ff:ff:ff promiscuity 0 
tun

... tun마지막 줄에 참고하십시오 .

-d와 함께 사용할 수도 있습니다 ip l.


iproute2는 훌륭한 도구입니다. 너무나 많은 기능이 발견하기 어렵습니다.
— 작은 친구

4

이 명령은 다음 작업을 수행합니다.

ip tuntap

결과 예 :

vnet0: tap

또는 세부 사항 :

ip-세부 정보

결과 예 :

vnet0: tap
    Attached to processes: qemu-system-x86(2225)
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.