![Как узнать тип виртуального сетевого адаптера в Linux?](https://rvso.com/image/726402/%D0%9A%D0%B0%D0%BA%20%D1%83%D0%B7%D0%BD%D0%B0%D1%82%D1%8C%20%D1%82%D0%B8%D0%BF%20%D0%B2%D0%B8%D1%80%D1%82%D1%83%D0%B0%D0%BB%D1%8C%D0%BD%D0%BE%D0%B3%D0%BE%20%D1%81%D0%B5%D1%82%D0%B5%D0%B2%D0%BE%D0%B3%D0%BE%20%D0%B0%D0%B4%D0%B0%D0%BF%D1%82%D0%B5%D1%80%D0%B0%20%D0%B2%20Linux%3F.png)
На Linux-боксе я вижу, что существует много виртуальных сетевых карт. Если я хочу узнать тип ссылки при их создании с помощью 'ip link add ... type ...', что мне делать?
Спасибо, Вуди.
решение1
Вы можете использовать несколько способов -
brctl show
- Членство в мосту может быть отображеноifconfig -a | grep HWaddr
- соответствие MAC-адресамls -l /sys/class/net/
- виртуальные покажут, что все находится в виртуальном режиме, а локальная сеть находится на шине PCI.
решение2
ip -details link show
добавит почти (но не) все мыслимые свойства интерфейса, включая, как правило, в начале 3-й строки, его тип, например, a bridge
, a veth
и т. д. Реальные устройства Ethernet или беспроводные устройства не покажут свою аппаратную природу с помощью этой команды, за исключением отсутствия такого дополнительного свойства. Беспроводные устройства можно обнаружить по наличию их имени phy в /sys/class/net/<ifname>/phy80211/name
.
Вот грязный скрипт (который не следует считать надежным, поскольку он анализирует ненадежный формат!) для отображения большинства типов (но, например, pimreg
при появлении с демоном многоадресной передачи PIM будет иметься свое особое свойство, link/pimreg
которое не будет показано):
$ ip -details link show |awk '/^[0-9]+:/ { line=NR; printf "\n%s ",gensub("(@.*|:)$","",1,$2) } NR == line+2 { printf "%s",$1 } END { printf "\n" }'
lo
eth0
wlan0
dummy0 dummy
lxcbr0 bridge
virbr0 bridge
virbr0-nic tun
gre0 gre
gretap0 gretap
erspan0 erspan
ifb0 ifb
ifb1 ifb
vethIRMVCJ veth
vethQOHSJ9 veth
testbr0 bridge
wg0 wireguard
macvlan0 macvlan
решение3
Может быть, есть другой способ. Я использую обратный вопрос:
ip link show type bridge
где вы можете заменитьмостс другим типом сетевой карты.