Como configurar a ligação da interface de rede no RHEL 8 / CENTOS 8 Linux

Como configurar a ligação da interface de rede no RHEL 8 / CENTOS 8 Linux

A ligação da interface de rede consiste na agregação de duas ou mais interfaces de rede física, chamadas escravos, em uma interface lógica chamada mestre ou ligação interface. Dependendo do modo de ligação, essa configuração pode ser útil para obter tolerância a falhas e/ou balanceamento de carga. Neste tutorial, aprenderemos quais são os modos de ligação disponíveis e como criar uma ligação de rede no RHEL 8 / CENTOS 8.

Neste tutorial, você aprenderá:

  • O que é a ligação da interface de rede
  • Como configurar a ligação da interface de rede no RHEL 8 / CENTOS 8
  • Quais são os diferentes modos de ligação


O status de títulos como visto pelo kernel Linux

Requisitos de software e convenções usadas

Requisitos de software e convenções de linha de comando Linux
Categoria Requisitos, convenções ou versão de software usada
Sistema RHEL 8 / CENTOS 8
Programas O utilitário NMTUI para controlar o daemon da rede de rede. O aplicativo está incluído em uma instalação mínima do sistema.
Outro Privilégios de raiz para modificar as configurações do sistema
Convenções # - requer que os comandos Linux sejam executados com privilégios root diretamente como usuário root ou por uso de sudo comando
$ - Requer que os comandos do Linux sejam executados como um usuário não privilegiado regular

Que modo de ligação?

Existem basicamente 7 modos de ligação que podemos usar:

Robin redondo

Os pacotes são distribuídos igualmente, em ordem seqüencial, para todas as interfaces de escravo (do primeiro ao último). Este modo fornece balanceamento de carga e tolerância a falhas, mas precisa de suporte nos interruptores.



Backup ativo

Somente a interface escravo primária é usada. Se falhar, outro escravo será usado em seu lugar. Ele fornece apenas tolerância a falhas; Não há requisitos especiais.

Xor (exclusivo ou)

Os pacotes são transmitidos e atribuídos a uma das interfaces de escravos, dependendo do hash dos endereços MAC de origem e destino, calculados com a seguinte fórmula:

[(Endereço MAC de origem xor'd com endereço MAC de destino) Contagem de escravos do Modulo]

Este modo fornece tolerância a falhas e balanceamento de carga.

Transmissão

Quando esse modo é usado, todos os pacotes são transmitidos em todas as interfaces de escravos, fornecendo tolerância a falhas, mas não o balanceamento de carga.

802.3ad

Este modo faz uso do IEEE 802.Agregação de link 3AD que deve ser suportada nos interruptores. Cria grupos de agregação que compartilham a mesma velocidade e configurações duplex. Transmite e recebe em todos os escravos no grupo ativo. Fornece balanceamento de carga e tolerância a falhas.

Balanceamento de carga de transmissão adaptável

Os pacotes de saída são transmitidos pelas interfaces de escravo, dependendo de sua carga, e o tráfego recebido é recebido pelo escravo atual. Se o último falhar, outro escravo assume seu endereço MAC. Este modo fornece tolerância a falhas e balanceamento de carga.

Balanceamento de carga adaptável

Funciona como o Balanceamento de carga de transmissão adaptável, mas fornece também entrada Balanço via Arp (Endereço Protocolo de Resolução) Negociação.

O ambiente

Para o bem deste tutorial, trabalharemos em um sistema virtualizado Red Hat Enterprise Linux 8. Para criar nosso vínculo de rede com que trabalharemos nmtui, um utilitário de interface do usuário de texto usado para controlar o Gerente da rede Daemon. As mesmas operações, no entanto, podem ser realizadas com o nmcli utilitário de linha de comando ou via GUI com o Editor de conexão de gerente de rede.

O sistema tem atualmente dois Ethernet links, ENP1S0
e ENP7S0:

1: LO: MTU 65536 QDISC NOQUEUE MODO UNKNOWN MODO PADRÃO PADRÃO QLEN 1000 LINK/LOOPBACK 00: 00: 00: 00: 00: 00 Brd 00: 00: 00: 00: 00 2: ENP1S0: MTU 1500 QDiscQ_Codel Estado Up Up Grupo Padrão Padrão Qlen 1000 Link/éter 52: 54: 00: CB: 25: 82 Brd FF: FF: FF: FF: FF: FF 3: ENP7S0: MTU 1500 QDISC FQ_Codel Up Modo Up Group Defeult Qlen 1000 Link/éter 52: 54: 00: 32: 37: 9b BRD FF: FF: FF: FF: FF: FF 

Criando o vínculo de rede

Como primeira coisa, excluiremos as configurações existentes atuais para as interfaces de escravo. Isso não é estritamente necessário, pois poderíamos editar essas configurações no lugar, mas para começar do zero, procederemos dessa maneira. Vamos invocar nmtui:

$ sudo nmtui

No menu principal, selecionamos “Editar uma conexão” e confirmar.



NMTUI Menu principal.

Primeiro selecionamos a conexão para excluir na lista e depois seguimos em frente . Finalmente confirmamos:



Lista de conexões NMTUI.

Finalmente, confirmamos que queremos excluir a conexão:



NMTUI Confirmação de confirmação para excluir uma conexão existente.

Repitamos a operação para a outra interface. Depois de remover todas as configurações existentes, podemos criar o ligação interface. Nós selecionamos No menu e da lista de tipos de conexão, escolhemos Ligação:



Menu de seleção de tipo de conexão NMTUI.

Uma nova janela será aberta onde podemos configurar nossa interface. Nesse caso, mesmo que seja totalmente opcional, vou usar Bond0 como o perfil e o nome do dispositivo. A parte mais importante, no entanto, é a seleção das interfaces de escravo a serem adicionadas ao vínculo. No Escravos de títulos menu, clique em , e selecione o tipo de conexão de escravo para adicionar, neste caso Ethernet.



Menu NMTUI para selecionar o tipo de conexão de escravo.

Digite o nome do dispositivo, selecione e confirme. A operação deve ser repetida para cada uma das interfaces de escravo.



Interface nmtui para editar conexão de escravos.

O próximo passo é selecionar o modo de ligação: Para o bem deste tutorial, usaremos o Backup ativo um. Selecionamos a opção relacionada no menu e no campo "Primário" especificamos o nome da interface escravo primária. Finalmente, apenas selecionamos Para confirmar a criação da interface de títulos.



A configuração de ligação de rede.

Agora podemos sair do nmtui aplicativo. Para verificar se a criação de ligação foi bem -sucedida, podemos lançar o seguinte comando:

$ ip addr show bond0

O resultado é o seguinte:

4: Bond0: MTU 1500 QDISC NOQUEUE UP GRUPO PADRÃO QLEN 1000 Link/éter 52: 54: 00: CB: 25: 82 BRD FF: FF: FF: FF: FF: FF INET 192.168.122.164/24 BRD 192.168.122.255 Escopo Global Dinâmico Global NoprefixRoute Bond0 Valid_lft 3304Sec preferred_lft 3304SEC INET6 Fe80 :: 48: D311: 96C1: 89DC/64 Link de escopo NoprefixRoute válido_lft Forever_Lft Forever Forever 

O ifcfg Arquivos de configuração relacionados à nossa configuração foram gerados dentro do /etc/sysconfig/scripts de rede diretório:

$ ls/etc/sysconfig/rede-scripts ifcfg-bond0 ifcfg-enp1s0 ifcfg-enp7s0 

Para ver o estado atual do Bond0 Interface como visto pelo kernel, podemos executar:

$ cat/proc/net/bonding/bond00

A saída do comando é relatada abaixo:

Driver de ligação do canal Ethernet: V3.7.1 (27 de abril de 2011) Modo de ligação: tolerância a falhas (backup ativo) escravo primário: ENP1S0 (Primary_Reselect sempre) Atualmente, escravo ativo: ENP1S0 MII Status: UP MII Intervalo de pesquisa (MS): 100 UP ALANTE (MS): 0 Atraso abaixo (MS): 0 Interface de escravo: ENP1S0 MII Status: Up Speed: Desconhecido Duplex: Desconhecido Falha do link Contagem: 0 HW permanente Addr: 52: 54: 00: CB: 25: 82 ID da fila de escravos: 0 interface de escravo: ENP7S0 MII Status: Speed ​​Up: Desconhecido Duplex: Desconhecido Falha no link Contagem: 0 HW permanente ADDR: 52: 54: 00: 32: 37: 9b Fila de escravos ID: 0 


Podemos ver como as duas interfaces de escravo estão em alta, mas apenas ENP1S0 é ativo, pois é o usado como o escravo primário.

Testando o backup ativo

Como podemos verificar se nossa configuração funciona? Podemos colocar a interface escravo primária e ver se a máquina ainda responde ao pings. Para abaixar a interface, executamos:

$ sudo ip link define enp1s0 para baixo

A máquina ainda responde? Vamos verificar:

$ ping -c3 192.168.122.164 Ping 192.168.122.164 (192.168.122.164) 56 (84) bytes de dados. 64 bytes de 192.168.122.164: icmp_seq = 1 ttl = 64 tempo = 0.385 ms 64 bytes de 192.168.122.164: icmp_seq = 2 ttl = 64 tempo = 0.353 ms 64 bytes de 192.168.122.164: icmp_seq = 3 ttl = 64 tempo = 0.406 ms --- 192.168.122.164 estatísticas de ping --- 3 pacotes transmitidos, 3 recebidos, 0% de perda de pacotes, tempo 88ms rtt min/avg/max/mdev = 0.353/0.381/0.406/0.027 ms 

Isso faz! Vamos ver como o status do vínculo mudou:

Driver de ligação do canal Ethernet: V3.7.1 (27 de abril de 2011) Modo de ligação: tolerância a falhas (backup ativo) Escravo primário: ENP1S0 (Primary_Reselect sempre) Atualmente, escravo ativo: ENP7S0 MII Status: UP MII Intervalo de pesquisa (MS): 100 UP Atraso (MS): 0 Atraso abaixo (MS): 0 Interface de escravo: ENP1S0 MII Status: Descendente Velocidade: Duplex desconhecido: Contagem de falhas de link desconhecido: 1 HW permanente Addr: 52: 54: 00: CB: 25: 82 ID da fila de escravos: 0 interface de escravo: ENP7S0 MII Status: Speed ​​Up: Desconhecido Duplex: Desconhecido Falha no link Contagem: 0 HW permanente ADDR: 52: 54: 00: 32: 37: 9b Fila de escravos ID: 0 


Como você pode ver, já que colocamos a interface escravo primária (ENP1S0), o outro escravo, ENP7S0 foi usado como backup e agora é o atualmente ativo. Além disso, o Contagem de falhas de link para o escravo primário aumentou e agora é 1.

Conclusões

Neste tutorial, aprendemos o que é um vínculo de rede e quais são as maneiras possíveis de configurar um vínculo de rede. Também criamos uma ligação de rede entre duas interfaces Ethernet usando o Backup ativo modo. Com o Red Hat Enterprise Linux 7, um novo conceito foi introduzido, equipe de rede. Em alguns aspectos, a equipe de equipes é semelhante ao vínculo, mas é implementado de maneira diferente e tem mais feleres. Vamos cobri -lo em artigos futuros.

Tutoriais do Linux relacionados:

  • Resolvendo o erro de 'falha de segmentação' no Linux
  • Coisas para instalar no Ubuntu 20.04
  • Sistema Linux Hung? Como escapar para a linha de comando e…
  • Como usar redes em ponte com LibVirt e KVM
  • Uma introdução à automação, ferramentas e técnicas do Linux
  • Mint 20: Melhor que o Ubuntu e o Microsoft Windows?
  • Como instalar Kubernetes no Ubuntu 22.04 Jellyfish…
  • Como instalar Kubernetes no Ubuntu 20.04 fossa focal linux
  • Com que frequência você tem que reiniciar seu servidor Linux?
  • Como criar um cluster Kubernetes