No Virtual Box, como você sabe qual NIC é qual da linha de comando do linux?

2

Eu tive um problema algumas vezes agora onde estou instalando o linux em uma máquina virtual, e todas as minhas interfaces se parecem com "enp0s3" ou "enp0s8" ect.

Em um teste, eu estava rodando uma VM com 4 NICs virtuais, de alguma forma elas apareceram no linux como:

enp0s3 enp0s8 enp0s9 enp0s17

O esquema de numeração sozinho me confunde, mas eu não tenho certeza sobre como determinar qual deles aponta para qual NIC.

Se eu faço lspci, ele me mostra todos os dispositivos no sistema, mas não como eles se conectam à lista de interfaces .... se eu fizer "ip link show" ele me mostra todas as interfaces, mas não a NIC eles estão ligados a. O que eu faço?

EDITAR:

Para esclarecer, não estou tentando fazer muita coisa com minha camada física de hardware. Quando eu procuro ver "qual nic é qual" estou tentando descobrir o melhor método para determinar qual interface (enp0sX) está apontando para quais das 4 NICs virtuais do Virtual Box. Obviamente, se você tem um nic, isso se explica, mas se você estiver usando todos os 4 NICs virtuais e todos eles estiverem usando o mesmo driver, fica difícil determinar qual é qual.

    
por Volumetricsteve 14.05.2015 / 02:43

2 respostas

3

Existem várias maneiras de descobrir, mas aqui estão os dois métodos mais confiáveis (na minha opinião) ...

Método 1 (mais confiável)

drew@debian:~$ /sbin/ifconfig -a | grep HWaddr
eth0      Link encap:Ethernet  HWaddr 08:00:27:f7:28:18  
eth1      Link encap:Ethernet  HWaddr 08:00:27:52:8b:6e  
eth2      Link encap:Ethernet  HWaddr 08:00:27:81:d7:5c  
eth3      Link encap:Ethernet  HWaddr 08:00:27:d5:22:e8 

Combine os endereços MAC com o que é mostrado nas configurações de rede da máquina (do host). Ou seja, clique com o botão direito do mouse na VM, vá para Configurações e, em seguida, Rede, examine o campo Endereço MAC de cada adaptador.

Outros comandos que listarão os endereços MAC incluem ip addr , ip link show , lshw -C network . Eu acho que o comando que eu postei produz a saída mais limpa.

Método # 2

drew@debian:~$ ls -l /sys/class/net
total 0
lrwxrwxrwx 1 root root 0 May 13 21:59 eth0 -> ../../devices/pci0000:00/0000:00:03.0/net/eth0
lrwxrwxrwx 1 root root 0 May 13 21:59 eth1 -> ../../devices/pci0000:00/0000:00:08.0/net/eth1
lrwxrwxrwx 1 root root 0 May 13 21:59 eth2 -> ../../devices/pci0000:00/0000:00:09.0/net/eth2
lrwxrwxrwx 1 root root 0 May 13 21:59 eth3 -> ../../devices/pci0000:00/0000:00:0a.0/net/eth3
lrwxrwxrwx 1 root root 0 May 13 21:59 lo -> ../../devices/virtual/net/lo

os números do barramento PCI estarão em ordem ... 3, 8, 9, a (10). Então, isso seria traduzido como 3 = NIC 1, 8 = NIC2, etc ... Observe que se os nomes das NICs parecerem com enp0s3 ou eno1 , eles também devem estar em ordem (embora não necessariamente sequenciais), no seu caso enp0s3 seria NIC 1, enp0s8 seria NIC 2, etc ...

    
por 14.05.2015 / 04:07
-1

enp0s3 ou enp0s8 são

  • Periférico de rede Ethernet
  • #
  • porta serial
  • #

A execução de um dos seguintes itens deve ajudar (especialmente se você souber quais conexões HOST foram rotuladas como o que está no Vbox):

ip addr
ip -a
lspci  /  lsusb                 (both show Model numbers; lspci is generally more telling)

    
por 14.05.2015 / 02:49