Translation(s): English - Español - Français - Italiano - Português (Brasil) - 简体中文
Configurações de rede
Pré-requisitos: Para aproveitar ao máximo este artigo, entenda os seguintes conceitos antes de ler: ferramentas básicas de linha de comando unix, editores de texto, DNS, TCP/IP, DHCP, netmask, gateway. |
Índice
Contents
4 maneiras de configurar uma rede
- O arquivo de configuração de interfaces em /etc/network/interfaces (esta página): para configurações básicas ou simples (por exemplo, estação de trabalho)
NetworkManager: o padrão para configurações de laptop
Configurando uma interface Ethernet
A maior parte da configuração da rede pode ser feita através do arquivo de configuração interfaces em /etc/network/interfaces. Aqui você pode fornecer à sua placa de rede um endereço IP (ou usar o DHCP), configurar informações de roteamento, configurar o mascaramento de IP, definir rotas padrão e muito mais.
Lembre-se de adicionar as interfaces que você deseja que sejam inicializadas quando o computador liga na linha 'auto'.
Veja man interfaces para mais opções.
Iniciando e parando interfaces
Interfaces configuradas com /etc/network/interfaces podem ser ligadas e desligadas com os comandos ifup e ifdown.
Alguns guias desatualizados instruem a reiniciar o serviço de rede para aplicar alterações em /etc/network/interfaces, no entanto, isso ficou obsoleto porque é possível que nem todas as interfaces sejam reiniciadas. Em vez disso, use ifup e ifdown para aplicar alterações a cada interface; por exemplo, com uma interface chamada enp7s0:
# ifdown enp7s0 # ifup enp7s0
Reinicialize sua nova configuração de rede
Se você fizer alterações de rede mais fundamentais, por exemplo, adicionando novas interfaces virtuais (por exemplo, uma ponte) em /etc/network/interfaces, você pode reiniciar a configuração da rede reiniciando o daemon networking:
# systemctl status networking # systemctl restart networking
Nomes de interface de rede
Veja NomesDeInterfaceDeRede. Desde o Stretch, os novos sistemas, por padrão, não usam mais nomes de interface de estilo antigo como eth0, eth1, wlan0, wlan1. O novo sistema usa nomes baseados na localização de hardware, como eno0, enp0s31f6, wlp1s7 (ou no caso de adaptadores USB, o endereço MAC: enx2c56ac39ec0d).
Você pode listar interfaces com: ls /sys/class/net
Vários exemplos abaixo continuam a usar "eth0" como um nome de interface padrão, mesmo que seja improvável que a mesma exista em um sistema moderno.
Atualizando e nomes previsíveis de interface de rede
Stretch e Buster ainda mantêm o suporte para o antigo sistema de nomenclatura, desde que o arquivo /etc/udev/rules.d/70-local-persistent-net.rules ainda esteja no lugar, mas os(as) usuários(as) são aconselhados(as) a atualizar para Bullseye.
Uso do DHCP para configurar automaticamente a interface
Se você está usando o DHCP, então tudo que você precisa é algo como:
auto eth0
allow-hotplug eth0
iface eth0 inet dhcpPara DHCPv6 (usado para IPv6), adicione também a seguinte sub-rotina iface
iface eth0 inet6 dhcp
Alternativamente, o IPv6 pode ser autoconfigurado usando stateless address autoconfiguration (SLAAC ou configuração automática de endereço sem estado), que é especificado usando auto em vez do dhcp com inet6:
iface eth0 inet6 auto
Veja também DelegaçãoDePrefixoIPv6.
Configurar manualmente a interface
Se você estiver configurando manualmente, algo assim definirá o gateway padrão (rede, broadcast e gateway são opcionais):
auto eth0
iface eth0 inet static
address 192.0.2.7
netmask 255.255.255.0
gateway 192.0.2.254Se você quiser adicionar um endereço IPv6 também, adicione algo como:
iface eth0 inet6 static
address 2001:db8::c0ca:1eaf
netmask 64
gateway 2001:db8::1ead:ed:beefVeja man interfaces para mais opções.
Certifique-se de desativar todos os serviços DHCP, ou seja, dhcpcd.
Misturar configuração manual e automática também é possível, por exemplo, usar o IPv6 SLAAC para conectividade com a Internet e endereços estáticos dentro da rede:
# endereço local único manual
iface eth0 inet6 static
address fdc3:cafe::3/64
# usa SLAAC para obter endereço IPv6 do roteador
# não podemos habilitar ipv6 forwarding, senão SLAAC é desabilitado
autoconf 1
accept_ra 2
Configurar a velocidade e duplex
Uma autonegociação falhando repetidamente é frequentemente um sintoma de cabeamento defeituoso, portanto verifique as questões físicas antes de assumir que os algoritmos de autonegociação das interfaces são incompatíveis. Se você desativar a negociação automática e configurar a velocidade e o duplex manualmente, a interface do(a) parceiro(a) na outra extremidade do cabo assumirá, por padrão, que a ausência de negociação automática indica uma velocidade de 10Mbps e um duplex de metade. Para uma operação livre de erros, se você definir a velocidade e o duplex manualmente, deverá garantir que exatamente a mesma velocidade e a mesma configuração duplex estejam configuradas na interface do parceiro.
Se você definir a velocidade e o duplex da sua interface manualmente, algumas tentativas e erros poderão ser necessários. Aqui estão os passos básicos:
Instale os pacotes ethtool e net-tools, então você terá os programas ethtool e mii-tool. Um ou os dois podem funcionar na sua interface.
Tenha certeza de ter um jeito de logar no seu sistema se sua interface de rede ficar não funcional. Uma conexão pt_BR/SSH pode ser interrompida, então você deve ter um plano B.
- Identifique a interface em questão (ela será muitas vezes eth0). Ajuste as instruções a seguir de acordo com isto.
- Tente determinar qual é a velocidade atual e a configuração duplex. Aqui que começa a diversão:
Como administrador, tente ethtool eth0' primeiro, e veja se os campos "Speed:" e "Duplex:" parecem válidas. Se não, o ethtool` pode não ser suportado pelo seu dispositivo.
Como administrador, tente mii-tool -v eth0 e veja se sua saída aparenta estar correta. Se não, então mii-tool pode não ser suportado pelo seu sistema.
Se nenhum for suportado, você deve que setar esses parâmetros diretamente no driver módulo do kernel. Identifique qual módulo de driver você está usando lendo a saída do dmesg e lsmod. Você pode então tentar modinfo MODULENAME para ver quais parâmetros ele aceita, se algum. (Você pode usar modinfo mesmo nos módulos que não são comparados, para comparação.) Afazer: onde são configurados os parâmetros dos módulo kernel?
- Depois, tente mudar as configurações da interface enquanto ela está operando. Você precisará ser administrador, é claro. Use um desses:
ethtool -s eth0 speed 100 duplex full autoneg off (assumindo 100 Mbps e full duplex)
mii-tool -F 100baseTx-FD eth0 (mesma suposição)
Se um destes comandos configurar corretamente sua interface de rede, então coloque isso no /etc/network/interfaces para rodá-lo quando a interface inicie (por exemplo, no tempo de inicialização). No entanto, antes de fazer isto, você deve entender que alguns drivers e dispositivos agem diferente que outros. Quando o módulo do driver é carregado, o controlador de interface de rede pode começar a negociação automática sem nenhum jeito de parar isto (particularmente com drivers que não aceitam parâmetros). As configurações das interfaces são aplicadas em algum ponto após isto, a qual pode estar certo no meio da negociação. Então, algumas pessoas acham necessário atrasar o comando ethtool ou mii-tool por alguns segundos. Portanto:
iface eth0 inet static address ... netmask ... gateway ... up sleep 5; ethtool -s eth0 ...Ou o comando análogo mii-tool.
- Reinicie a máquina para ter certeza que ele está correto e esteja preparado para intervir manualmente (por exemplo, Ctrl+Alt+Del e então inicie com o modo de usuário(a) único(a) do GRUB ou LILO) se estas coisas não funcionam.
Iniciar uma interface sem um endereço IP
Para criar uma interface de rede sem um endereço IP, use o método manual e use os comandos pre-up e post-down para fazer a interface para subir e descer.
iface eth0 inet manual
pre-up ifconfig $IFACE up
post-down ifconfig $IFACE downSe a interface for uma interface VLAN, os comandos up/down devem ser executados após/antes da criação das vlan (você também tem que instalar o pacote vlan):
iface eth0.99 inet manual
post-up ifconfig $IFACE up
pre-down ifconfig $IFACE downNota: Se você criar a interface VLAN apenas para colocá-la em uma ponte, não haverá necessidade de definir a interface da VLAN manualmente. Basta configurar a ponte e a interface da VLAN será criada automaticamente ao criar a ponte (veja abaixo).
Definindo os servidores de nomes (DNS)
Antes que um computador possa se conectar a um recurso de rede externo (por exemplo, um servidor da Web), ele deve ter um meio de converter qualquer nome alfanumérico (por exemplo, wiki.debian.org) em endereços de rede numéricos (por exemplo, 140.211.166.4). (A Internet usa esses endereços IP numéricos estruturados como endereços de rede.)
A biblioteca C e outras bibliotecas resolvedoras de endereços olham para o /etc/resolv.conf para uma lista de servidores de nomes. No caso mais simples, esse é o arquivo a ser editado para definir a lista de servidores de nomes. Mas note que vários outros programas para configuração dinâmica ficarão felizes em sobrescrever suas configurações:
O programa resolvconf
O daemon network-manager
- Cliente DHCP
Na maioria das situações, o arquivo a ser editado é o arquivo de configuração de tal programa.
Nas situações mais complexas, usar resolvconf é realmente o caminho a seguir, embora em configurações mais simples sejam provavelmente um exagero.
O arquivo de configuração resolv.conf
O arquivo de configuração resolv.conf em /etc/resolv.conf contém informações que permitem um computador conectar-se à uma rede para converter nomes em endereços. (Nota: Não confunda este arquivo de configuração com o programa resolvconf, que infelizmente tem um nome quase idêntico).
O arquivo resolv.conf normalmente contém os endereços IP dos servidores de nomes (resolvedores de nome DNS) que tentarão converter nomes em endereços para qualquer nó disponível na rede. Haverá uma linha ou linhas que se parecerão com isso:
nameserver 12.34.56.78 nameserver 12.34.56.79
Neste exemplo, o sistema está usando servidores de nomes nos endereços IP 12.34.56.78 e 12.34.56.79. Basta editar o arquivo e digitar os endereços IP dos servidores de nomes que você precisa usar após cada nameserver. Adicione mais linhas nameserver se você tiver mais servidores de nomes. Não use este método se você tiver o programa resolvconf instalado.
O arquivo de configuração resolv.conf possui muitas outras opções para definir como o resolvedor (resolver) procura nomes. Veja man resolv.conf para mais detalhes.
O programa resolvconf
O programa resolvconf mantém um registro das informações do sistema sobre os servidores de nomes atualmente disponíveis. Não deve ser confundido com o arquivo de configuração resolv.conf, que infelizmente tem um nome quase idêntico. O programa resolvconf é opcional em um sistema Debian.
O arquivo de configuração resolv.conf contém informações sobre os servidores de nomes para serem usados pelo sistema. No entanto, quando vários programas precisam modificar dinamicamente o arquivo de configuração resolv.conf, eles podem se sobrepor e o arquivo pode ficar fora de sincronia. O programa resolvconf resolve esse problema. Ele age como um intermediário entre programas que fornecem informações de servidor de nomes (por exemplo, clientes dhcp) e programas que usam informações de servidor de nomes (por exemplo, resolvedor de nomes).
Quando o resolvconf está apropriadamente instalado, o arquivo de configuração resolv.conf em /etc/resolv.conf é substituído por um link simbólico para /etc/resolvconf/run/resolv.conf e o resolvedor usa o arquivo de configuração que é gerado dinamicamente por resolvconf em /etc/resolvconf/run/resolv.conf.
O programa resolvconf geralmente é necessário apenas quando um sistema possui vários programas que precisam modificar dinamicamente as informações do servidor de nomes. Em um sistema simples, onde os servidores de nomes não mudam com frequência ou são apenas alterados por um programa, o arquivo de configuração resolv.conf é adequado.
Se o programa resolvconf estiver instalado, você não deve editar o arquivo de configuração resolv.conf manualmente, pois ele será alterado dinamicamente por programas no sistema. Se você precisar definir manualmente os servidores de nomes (como em uma interface estática), inclua uma linha como a seguinte no arquivo de configuração interfaces em /etc/network/interfaces:
dns-nameservers 12.34.56.78 12.34.56.79
Coloque a linha recuada em uma instância do iface, por exemplo, logo após a linha gateway. Digite os endereços IP dos servidores de nomes que você precisa usar após dns-nameservers. Coloque todos eles em uma linha separados por espaços. Não se esqueça dos "s" no final de dns-nameservers.
O programa resolvconf é uma adição relativamente nova ao Debian e muitos programas mais antigos precisam ser atualizados ou reconfigurados para funcionar corretamente com ele. Se você tiver problemas, veja /usr/share/doc/resolvconf/README. Ele tem muita informação sobre como fazer outros programas se darem bem com resolvconf.
Configuração do DNS para o NetworkManager
O NetworkManager irá sobrescrever as configurações do dhcp, sobrescrevendo o resolv.conf mesmo se você configurou o DNS em /etc/dhcp/dhclient.conf, por exemplo fazendo com que o DNS pesquise primeiro o domínio local, que pode ter que expirar antes que a resolução de DNS continue causando longos tempos de resolução de DNS. Você pode ter uma ideia do que o NetworkManager acha que as configurações devem fazer executando o comando nm-tool.
Você pode configurar essas configurações usando uma GUI iniciando o nm-connection-editor, que atualmente (13.11.23) não pode ser encontrado no menu Ferramentas do Sistema → Administração, mas deve ser iniciado manualmente a partir da linha de comando. Após o lançamento:
- Escolha uma conexão (na guia Com fio ou Sem fio) e clique em Editar.
- Clique na guia Configurações do IPv4
- Escolha 'Somente endereços automáticos (DHCP)' em vez de apenas 'Automático (DHCP)'.
- Digite os servidores DNS no campo “Servidores DNS”, separados por espaços (por exemplo, 208.67.222.222 para OpenDNS).
- Clique em "Aplicar".
O NetworkManager salva essas configurações em /etc/NetworkManager/system-connections/nome-de-conexão. Exemplo /etc/NetworkManager/system-connections/Wired connection 1:
[802-3-ethernet] duplex=full mac-address=XX:XX:XX:XX:XX:XX [connection] id=Wired connection 1 uuid=xxx-xxxxxx-xxxxxx-xxxxxx-xxx type=802-3-ethernet timestamp=1385213042 [ipv6] method=auto [ipv4] method=auto dns=208.67.222.222; ignore-auto-dns=true
Executar a ferramenta nm novamente deve mostrar que o NetworkManager agora tem a ideia correta de como seu DNS deve ser resolvido.
Usando systemd-resolved para resolução DNS
systemd-resolved não é instalado por padrão, mas você pode usá-lo e executar um caching dns resolver local que pode se intergrar com o ?NetowrkManager e Systemd-network.
apt install systemd-resolved
Enabling systemd-resolved
Por padrão, não é habilitado, então é preciso fazê-lo para usá-lo.
systemctl enable systemd-resolved ln -sf /run/systemd/resolve/resolv.conf /etc/resolv.conf
Também para aplicações glib usando nss, você precisa editar o arquivo /etc/nsswitch.conf para que a linha hosts fique como a seguir. Isto usará o man nss-resolve para resolução:
hosts: mymachines resolve [!UNAVAIL=return] files dns myhostname
Note que a resolução suporta /etc/hosts, então deve vir antes das entradas de arquivo.
Verificando o status e a liberação do cache no systemd-resolved
Você pode verificar o status usando man resolvectl
resolvectl
Você pode liberar o cache das resoluções com o seguinte comando:
resolvectl flush-cache
Managing systemd-resolved settings
Configurações gerais para o systemd-resolved são gerenciadas em /etc/systemd/resolved.conf; consulte man resolved.conf para mais informações.
Configuração do cliente DHCP
Definindo servidores DNS adicionais
Exemplo: dhclient3 usa /etc/dhcp/dhclient.conf. A configuração desejada é:
supersede domain-name-servers 12.34.56.78, 12.34.56.79;
ou talvez
prepend domain-name-servers 12.34.56.78, 12.34.56.79;
Definindo domínios de pesquisa adicionais
Adicionando domínios de pesquisa para VPNs ou redes virtuais locais:
append domain-name " virt vpn";
Observe o espaço no fim da linha já que a cadeia de caracteres é literalmente anexada ao domínio de pesquisa fornecido por outras configurações.
Consulte a página de manual dhclient.conf(5) para mais detalhes.
Bridging
Bridging coloca várias interfaces no mesmo segmento de rede. Isso é muito popular ao conectar um servidor a vários switches para alta disponibilidade ou virtualização. Neste último caso, normalmente é usado para criar uma ponte no host (por exemplo, dom0) e colocar as interfaces virtuais dos convidados (domU) na ponte.
O pacote bridge-utils é necessário para criar interfaces em bridge.
Exemplo: Conecte um servidor a dois switches (via eth0 e eth1) definindo bridge 0 e forneça ao servidor um endereço IP nesta sub-rede:
auto br0
iface br0 inet static
address 10.10.0.15
netmask 255.255.255.0
gateway 10.10.0.1
bridge_ports eth0 eth1
up /usr/sbin/brctl stp br0 onSe um servidor estiver conectado a vários switches, geralmente será necessário executar o protocolo de árvore geradora (Spanning Tree Protocol - STP) para evitar loops. Portanto, o STP deve ser ligado por meio do comando "up", como mostrado acima.
Exemplo: Configuração de ponte sem configuração de endereço IP (use "manual" em vez de "estático") para "encaminhar" uma interface para uma VM guest. (A configuração da ponte estática contém apenas uma interface física. A interface virtual será adicionada à ponte quando a VM for iniciada.)
auto br1
iface br1 inet manual
bridge_ports eth4
up /usr/sbin/brctl setageing br1 0
up /usr/sbin/brctl stp br0 offNota: A ponte do Linux suporta apenas STP, sem RSTP (Rapid Spanning Tree). Portanto, ele suporta apenas os antigos custos de STP, não os novos custos de RSTP (consulte WikiPedia:Spanning_Tree_Protocol). Isso geralmente é bom com o Cisco Switches, mas por exemplo os switches Juniper usam os custos do RSTP e, portanto, isso pode levar a diferentes cálculos de árvore de abrangência e problemas de ciclos. Isso pode ser corrigido pela configuração dos custos manualmente, seja no comutador ou no servidor. A definição do custo no switch é preferida, já que no Linux retorna aos custos padrão sempre que uma interface faz down/up.
Bridge sem comportamento de switch
Por padrão, a ponte no Linux age como um switch. Isto significa registrar os endereços MAC por trás de uma porta e ao encaminhar um pacote com MAC este é enviado apenas para o seu destino, caso contrário os pacotes serão transmitidos para todos via broadcast.
Em algumas configurações isso é ruim. Por exemplo, se a ponte conecta duas interfaces de tronco e os mesmos endereços MAC podem ser vistos de ambas as interfaces, configuração comum de acontecer no uso de VLAN. Como a ponte Linux não suporta VLANs (tabelas de endereço MAC dedicadas para cada VLAN), nessas configurações você precisa desabilitar o aprendizado do endereço MAC e colocar a ponte em um modo "bridge" real com:
up /sbin/brctl setageing br0 0
up /sbin/brctl stp br0 off
Como usar vlan (dot1q, 802.1q, trunk) (Etch, Lenny)
Configuração Manual
modprobe 8021q apt install vlan vconfig add eth0 222 # 222 is vlan number ifconfig eth0.222 up ifconfig eth0.222 mtu 1496 # opcional, se sua placa de rede não suporta MTU 1504B ifconfig eth0.222 10.10.10.1 netmask 255.255.255.0
Script de configuração inicial da rede
Em /etc/modules adicione a linha:
8021q
Em /etc/network/interfaces na seção iface adicione o parâmetro:
vlan-raw-device eth0
O nome da interface deve ser o nome da interface não processada (o mesmo especificado pelo vlan-raw-device), depois um ponto e, em seguida, o ID da VLAN, por exemplo: eth0.100. Em vez disso, ele pode ser "vlan" e, em seguida, o ID da VLAN, por exemplo: vlan100. Em ambos os casos, o ID da VLAN está no final e esse é o único local em que ela é configurada.
Nota: se você nomear suas interfaces de VLAN ethX.YYY, não será necessário especificar o vlan-raw-device, pois o dispositivo bruto pode ser recuperado a partir do nome da interface.
Por exemplo:
auto eth0.222
iface eth0.222 inet static
address 10.10.10.1/24
vlan-raw-device eth0
Pontes e VLANs
Se você criar interfaces VLAN apenas para colocá-las em uma ponte, não haverá necessidade de definir as interfaces de VLAN manualmente. Basta configurar a bridge e a interface da VLAN será criada automaticamente ao criar a ponte, por exemplo:
auto br1
iface br1 inet manual
bridge_ports eth0.99 eth1.99
up /usr/sbin/brctl stp br1 on
Ressalvas ao usar ponte e vlan
#/etc/network/interfaces
auto eth0 bri0
iface eth0 inet static
address 192.168.1.1/24
iface eth0.110 inet manual
vlan-raw-device eth0
iface bri0 inet static
address 192.168.110.1/24
bridge_ports eth0.110
bridge_stp on
bridge_maxwait 10Se você estiver usando uma configuração de VLAN em ponte, o que provavelmente é útil para redes em ambientes de virtualização, tome cuidado para conectar apenas um dispositivo de ponte ou dispositivos de VLAN a um dispositivo físico subjacente, como mostrado acima. Anexar a interface física (eth0) a uma ponte (por exemplo, bri1) usando a mesma interface física em VLANs aparentemente diferentes resultará em todos os pacotes permanecerem marcados com as identificações da vlan. (Kernel mais recente que 2.6.37 e mais antigo que 3.2).
Como criar tolerância a falhas com vlan (Etch)
NetworkConfiguration/debian_bonding.dia
Como configurar uma dos servidores da figura acima agrupando servidores de reserva com 3 vlan {vlan10,vlan20,vlan30} sem SPOF e sem vlan nativa.
apt install vlan ifenslave-2.6
Configuração de Rede
Exemplo de configuração de interfaces do switch Cisco
interface GigabitEthernet1/2 description eth1 switchport switchport trunk encapsulation dot1q switchport trunk allowed vlan 10,20,30 switchport mode trunk no ip address no cdp enable spanning-tree portfast trunk
Agrupar com backup ativo
Crie um arquivo /etc/modprobe.d/bonding.conf contendo:
alias bond0 bonding options bonding mode=active-backup miimon=100 downdelay=200 updelay=200 primary=eth1
/etc/network/interfaces
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto bond0
iface bond0 inet manual
up ifconfig bond0 0.0.0.0 up
slaves eth1 eth0
auto vlan10
iface vlan10 inet static
address 10.10.10.12
netmask 255.255.0.0
vlan-raw-device bond0
gateway 10.10.0.1
dns-search hup.hu
dns-nameservers 10.10.0.2
auto vlan20
iface vlan20 inet static
address 10.20.10.12
netmask 255.255.0.0
vlan-raw-device bond0
auto vlan30
iface vlan30 inet static
address 10.30.10.12
netmask 255.255.0.0
vlan-raw-device bond0No Debian Buster, você deve usar nomes de interface para VLANs na forma de: bond0.10, bond0.20 e bond0.30 em vez de vlan10, vlan20, vlan30
https://www.kernel.org/doc/Documentation/networking/bonding.txt - Documentação kernel Linux sobre bonding
https://www.dm.unibo.it/~donatini/admin/rete/bonding.html - Bonding no Linux 2.6
Como configurar o MTU (Máxima Unidade de Transferência/tamanho do pacote) com VLANS sobre uma interface combinada
O MTU precisa ser configurado na interface combinada e nas interfaces escravas após o reset da configuração ter sido aplicado às interfaces de ligação. Isso é feito usando uma linha de post-up na configuração da interface de ligação.
auto bond0
iface bond0 inet manual
up ifconfig lacptrunk0 0.0.0.0 up
slaves eth0 eth1
# bond-mode 4 = 802.3ad
bond-mode 4
bond-miimon 100
bond-downdelay 200
bond-updelay 200
bond-lacp-rate 1
bond-xmit-hash-policy layer2+3
post-up ifconfig eth0 mtu 9000 && ifconfig eth1 mtu 9000 && ifconfig bond0 mtu 9000
#vlan devices will use the MTU set on bond0 device
auto vlan101
iface vlan101 inet static
address 10.101.60.123
netmask 255.255.255.0
gateway 10.155.60.1
vlan-raw-device bond0
auto vlan151
iface vlan151 inet static
address 192.168.1.1
netmask 255.255.255.0
vlan-raw-device bond0
Vários endereços IP em uma interface
O apelidamento de interface permite que uma interface tenha vários endereços IP. Isso é útil quando mais de um servidor é visível via a Internet. Observe que os hosts virtuais podem suportar vários servidores Apache com um único endereço IP. O Apache responde ao nome de domínio fornecido pelo cliente no cabeçalho HTTP. Em muitas outras situações, um IP externo é necessário para cada servidor usando uma porta.
Método legado
Este texto /etc/network/interfaces atribui três endereços IP para eth0.
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.42
netmask 255.255.255.0
gateway 192.168.1.1
auto eth0:0
allow-hotplug eth0:0
iface eth0:0 inet static
address 192.168.1.43
netmask 255.255.255.0
auto eth0:1
allow-hotplug eth0:1
iface eth0:1 inet static
address 192.168.1.44
netmask 255.255.255.0Um apelido de interface não deve ter "gateway" ou "dns-nameservers"; atribuição dinâmica de IP é permitida.
A configuração acima é o método tradicional anterior que reflete o uso tradicional de ifconfig para configurar dispositivos de rede. ifconfig introduziu o conceito de interfaces aliased ou virtual. Esses tipos de interfaces virtuais possuem nomes da forma interface:inteiro e o ifconfig os trata de maneira muito semelhante às interfaces reais.
Atualmente, o ifupdown usa o utilitário ip do pacote iproute2 em vez de ifconfig. O mais novo utilitário ip não usa o mesmo conceito de aliases ou interfaces virtuais. No entanto, ele suporta a atribuição de nomes arbitrários às interfaces (elas são chamadas de rótulos). ifupdown usa este recurso para suportar interfaces com alias enquanto usa ip.
Método iproute2
Além disso, o ifupdown suporta a especificação de múltiplas interfaces repetindo seções iface com o mesmo nome de interface. A principal diferença do método descrito acima é que todas essas seções são tratadas pelo ifupdown como apenas uma interface, assim o usuário não pode adicionar ou removê-las individualmente. No entanto, comandos up/down, assim como scripts, são chamados para cada seção como costumava ser.
Note, no entanto, que este método é perigoso! Certas combinações de driver/hardware podem, às vezes, não conseguir ativar o link se nenhuma etiqueta for designada às interfaces de alias. (Observado isto no Debian Wheezy e Jessie com o Controlador Gigabit Ethernet RTL8111/8168/8411 PCI Express (rev 01) auto-negociando para 10/full. Um aviso semelhante de outra pessoa existe no histórico desta página.)
Este texto /etc/network/interfaces atribui três endereços IP a eth0.
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.42
netmask 255.255.255.0
gateway 192.168.1.1
iface eth0 inet static
address 192.168.1.43
netmask 255.255.255.0
iface eth0 inet static
address 192.168.1.44
netmask 255.255.255.0
# adding IP addresses from different subnets is also possible
iface eth0 inet static
address 10.10.10.14
netmask 255.255.255.0Abordagem manual:
auto eth0
allow-hotplug eth0
iface eth0 inet static
address 192.168.1.42
netmask 255.255.255.0
gateway 192.168.1.1
up ip addr add 192.168.1.43/24 dev $IFACE label $IFACE:0
down ip addr del 192.168.1.43/24 dev $IFACE label $IFACE:0
up ip addr add 192.168.1.44/24 dev $IFACE label $IFACE:1
down ip addr del 192.168.1.44/24 dev $IFACE label $IFACE:1
up ip addr add 10.10.10.14/24 dev $IFACE label $IFACE:2
down ip addr del 10.10.10.14/24 dev $IFACE label $IFACE:2CategoryNetwork CategorySystemAdministration CategoryNetwork
