Nome da interface da VLAN arbitrária

6

Existe uma maneira de nomear arbitrariamente uma interface de VLAN como eth72 ou ext19 em vez dos quatro esquemas de nomenclatura padrão eth0.72 , vlan19 (e as variações de preenchimento)?

Não tem idéia. Talvez udev?

    
por Michuelnik 05.09.2012 / 14:53

7 respostas

7

OMG - é que fácil:

Renomeie vlan 42 em eth0 para ext2 :

ip link set dev eth0.42 name ext2

    
por 27.09.2012 / 10:01
3

No OpenBSD (e presumivelmente em outros BSDs) você pode definir uma descrição de uma interface com ifconfig usando o argumento description apropriadamente chamado, veja ifconfig (8) . Isso é muito útil para distinguir entre um monte de interfaces. Mas isso não ajuda você.

Infelizmente, não há uma ótima maneira de fazer isso no Linux.

No Linux, as interfaces são nomeadas dinamicamente com cada interface sendo atribuída ao primeiro nome disponível. Isso significa que, se você puxar uma NIC e depois adicionar outra (por exemplo, substituí-la ou atualizá-la), não há garantia de que sua interface permanecerá a mesma.

Tente um programa como ifrename , que permitirá especificar manualmente os nomes das interfaces. Ele é projetado principalmente para garantir que NIC0 esteja sempre associado a eth0 , mas acredito que você possa usá-lo para atribuir nomes como external e dmz a interfaces em vez de eth0 e assim por diante. O Udev também permitirá que você altere os nomes das interfaces usando o arquivo network.rules (veja aqui para um exemplo). / p>

Você deve ter o cuidado de documentar isso, pois normalmente não é feito, mas, ao contrário do @MichealHampton, não vejo nenhum problema específico com ele. Eu, pessoalmente, faço grande uso do campo de descrição para interfaces nas minhas instalações do BSD.

    
por 06.09.2012 / 00:52
3

Eu não tive sorte com "ip link set dev bond0.10 nome ext0". Se a interface estiver ativa, recebe um erro OCUPADO. Se a interface estiver inativa, receberá um erro NÃO ENCONTRADO.

O que eu tive sorte com isso é: na minha definição de interface base para bond0,

post-up ip link add name ext0 link bond0 type vlan id 10
pre-down ip link delete dev ext0 type vlan

e

auto ext0
iface ext0 inet static
    address ...

Agora eu acho que "ifup bond0" não apenas cria a VLAN como visto em / proc / net / vlan / config e cria o dispositivo ext0, mas até mesmo ifup é o dispositivo ext0. bond0.10 nunca vem à existência.

    
por 11.12.2014 / 01:40
1

No debian, você usa /etc/network/interfaces para configurar suas interfaces de rede.

Esteja ciente de que você deve instalar o pacote vlan :

apt-get install vlan

De man 5 interfaces :

To ease the configuration of VLAN interfaces, interfaces having . (full stop character) in the name are configured as 802.1q tagged virtual LAN interface.

For example, interface eth0.1 is a virtual interface having eth0 as physical link, with VLAN ID 1.

Para mais informações, consulte man 5 vlan-interfaces . Basicamente, você pode dar qualquer nome à sua interface vlan e usar vlan-raw-device para associar a vlan à sua NIC. Por exemplo, vlan10 on eth0 seria:

iface vlan10 inet static
    vlan-raw-device eth0
    address 192.168.10.1
    netmask 255.255.255.0

Em distros não-debian, você pode fazer a mesma coisa com iproute2 da seguinte forma:

ip link add link enp3s0f1 name vlan10 type vlan id 10
ip addr add 192.168.10.1/24 dev vlan10
    
por 08.05.2014 / 19:44
0

Não tenho certeza se isso também se aplica ao Debian, mas no Ubuntu (e Red Hat), isso é feito facilmente editando /etc/udev/rules.d/persistent-net.rules (ou similar; não estou em uma posição para verificar)

A renomeação de interfaces tem algumas vantagens úteis:

  • atribui a semântica conhecida a uma interface (por exemplo, 'management0', 'front0', 'back0')
  • ter um nome previsível facilita o funcionamento dos scripts de gerenciamento de configuração, etc. (especialmente as regras do Firewall)

Você precisa ter certeza de que sua equipe sabe esperar isso. Isso não é um problema, geralmente é muito bem-vindo, especialmente quando você tem muitas interfaces em um sistema (a eth8 não é insensata em um host com links redundantes para o armazenamento SAN)

Tendo discutido isso recentemente, se você quiser renomear com base no ID da VLAN, sugiro que considere o seguinte:

  • Os IDs de VLAN não são tão memoráveis e facilmente digitados incorretamente e examinados.
  • um host geralmente não tem uma maneira simples de determinar qual VLAN (se houver) está ativada, ou se é a VLAN nativa, e uma porta de acesso ou tronco (fazer isso manualmente a partir do host às vezes é possível se você tcpdump CDP ou saber quais mapas de tráfego para qual VLAN). Assim, a configuração é baseada na crença, que pode facilmente se tornar inválida.
por 09.05.2014 / 12:14
0

Usando o nmcli no RedHat / CentOS / SL 7 você tem nomes arbitrários persistentes suportados pelo sistema para interfaces VLAN, apenas:

$ nmcli con add tipo vlan ifname fora dev eno1 id 10

    
por 31.01.2017 / 14:12
0

Então, isso funciona bem.

em / etc / network / interfaces:

auto lxdHost
iface lxdHost static
   pre-up ip link add link eth0 name lxdHost type vlan id 102
   address 192.1.1.1/25
   ...

então ifup lxdHost

pre-up e post-down e os outros nos intefaces man são os ganchos mágicos para fazer as coisas do seu jeito.

    
por 01.12.2017 / 05:38