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


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.