ネットワークインターフェイスがタブ、チューニング、ブリッジ、または物理的であるかどうかはどうすればわかりますか?

ネットワークインターフェイスがタブ、チューニング、ブリッジ、または物理的であるかどうかはどうすればわかりますか?

私が知っている限り、Linuxには4つの主要なネットワークインタフェースタイプがあります。ton、tap、bridge、およびPhysicalです。

KVMを実行しているコンピュータでシステム管理を実行すると、同じコンピュータ上のタブ、ブリッジ、および物理インターフェイスに頻繁にアクセスできますが、区別することはできません。ifconfig結果に大きな違いはありませんip

インターフェイスがチューニング、タブ、ブリッジ、または物理インターフェイスであるかどうかはどうすればわかりますか?

注:Linuxには他の種類のネットワークインターフェースがないとは言いませんが、この4つのタイプのみを知っています。

答え1

TUNおよびTAPデバイス関連:上記の確認を実行するだけでは不十分です。

その理由は、TUN デバイスを作成し (誤って) tap10 と呼ぶか、TAP デバイスを作成して名前を tun10 と指定するためです。もしそうなら、それがトンデバイスかタブデバイスかどうかはどうすればわかりますか?もちろん、両方のデバイスに「tun_flags」エントリがあるためです。

答えは走っています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

答え2

簡単に区別できる方法はないようです。いくつかのナビゲーションの最後に、/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

答え3

tun、tap、vethなど、特定のデバイスの種類を知らせるやや文書化されていない-dオプションを使用できます。ip(8)

例えば

$ 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

答え4

@benが述べたように、ip -d lインターフェイスのタイプに関するインターフェイスの詳細が提供されます。しかし、情報が少し混乱しています。どのタイプのインターフェースに興味があるかを知っている場合ip link show type TYPEもう1つの可能性は、そのタイプのすべてのインターフェイスを一覧表示することを使用することです。

どこ

TYPE := { vlan | veth | vcan | vxcan | dummy | ifb | macvlan | macvtap |
          bridge | bond | team | ipoib | ip6tnl | ipip | sit | vxlan |
          gre | gretap | erspan | ip6gre | ip6gretap | ip6erspan |
          vti | nlmon | team_slave | bond_slave | bridge_slave |
          ipvlan | ipvtap | geneve | vrf | macsec | netdevsim | rmnet }

関連情報