Como configurar um endereço IP estático no RHEL 8 / CENTOS 8 Linux

Como configurar um endereço IP estático no RHEL 8 / CENTOS 8 Linux

Existem muitos casos em que podemos querer definir um IP estático para uma interface de rede. No RHEL 8 / CENTOS 8, as conexões de rede são gerenciadas pelo Daemon da NetworkManager; portanto, neste tutorial, vemos como podemos executar essa tarefa editando um arquivo de interface diretamente, usando um utilitário de linha de comando, nmcli, ou através de uma interface de usuário de texto, nmtui.

Neste tutorial, você aprenderá:

  • Como definir um endereço IP estático editando diretamente um arquivo de interface
  • Como definir um endereço IP estático usando o utilitário NMCLI
  • Como definir um endereço IP estático usando NMTUI


O arquivo de interface de rede editado

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 Todo o software mencionado neste tutorial está incluído em uma instalação mínima de Rhel 8 ou CentOS 8.
Outro Permissão para executar o comando com privilégios root.
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

Introdução

Em Red Hat Enterprise Linux 8, as interfaces de rede são gerenciadas pelo Gerente da rede Daemon, para alterar uma configuração de interface de rede, devemos de alguma forma interagir com ele. Neste tutorial, veremos como podemos definir um endereço IP estático, gateway e servidor DNS para uma NIC usando diferentes três métodos.

Identificando nossa interface

A primeira coisa que queremos fazer é encontrar a interface que queremos modificar. Para listar todas as interfaces em nosso sistema, podemos usar o IP Addr comando:

$ IP Addr 1: LO: MTU 65536 QDISC NOQUEUE Estado desconhecido do grupo Desconhecido Padrão QLEN 1000 Link/loopback 00: 00: 00: 00: 00: 00 Brd 00: 00: 00: 00: 00 INET 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: enp1s0:  mtu 1500 qdisc fq_codel state UP group default qlen 1000 link/ether xx:xx:xx:xx:xx:xx BRD FF: FF: FF: FF: FF: FF INET 192.168.122.189/24 BRD 192.168.122.255 Escopo Global Dinâmico Global NoprefixRoute ENP1S0 Valid_lft 3004Sec preferred_lft 3004SEC INET6 Fe80 :: 9AB6: BA48: 1DDD: A8E1/64 Link do escopo NoprefixRoute válido_lft Forever_lft Forever Forever para sempre 


Na saída acima, o que é o resultado da execução do comando em minha máquina virtualizada RHEL8, podemos ver duas interfaces: lo e ENP1S0. O primeiro é uma interface "virtual", que é usada pelo sistema para "conversar" consigo mesmo. O segundo é o que nos interessa, e atualmente seu endereço IPv4 é 192.168.122.189: Queremos mudar isso.

Método 1 - Modificando o arquivo de configuração da interface manualmente

Para cada interface de rede gerenciada pelo Daemon da NetworkManager, um arquivo de configuração é criado dentro do /etc/sysconfig/scripts de rede diretório. O nome do arquivo é composto pelo ifcfg- prefixo mais o nome da interface. Se inspecionarmos o arquivo relacionado à nossa NIC, podemos ver sua configuração real:

$ cat/etc/sysconfig/ntecwork-scripts/ifcfg-enp1s0 type = "Ethernet" proxy_method = "nenhum" navegador_only = "no" bootproto = "dhcp" DEFROUTE = "sim" ipv4_failure_fatal = "no" ipv6init "" "Sim" ipv6_defroute = "sim" ipv6_failure_fatal = "no" ipv6_addr_gen_mode = "stable-privacy" name = "enp1s0" uuid = "d5f41bf4-de0a-43b3-b633-7e2122222222222222222212221221e 

O BootProto a opção está definida como DHCP: A opção define o protocolo a ser usado na inicialização para definir o endereço IP da interface. As opções possíveis a serem usadas são:

  • Nenhum - nenhum protocolo deve ser usado
  • Bootp - Use o protocolo Bootp
  • DHCP - Use o protocolo DHCP

Como queremos definir um endereço IPv4 estático, queremos alterar o valor do bootproto para nenhum e configure nosso IP, prefixo de rota, gateway e servidor DNS estaticamente. Podemos conseguir isso usando respectivamente o Ipaddr, PREFIXO, PORTA DE ENTRADA e Dns opções. Como muitos servidores DNS podem ser especificados, o Dns a opção deve ser relatada junto com um número progressivo, a partir de 1. Após as modificações necessárias, nosso arquivo deve parecer
esse:

Type = "Ethernet" proxy_method = "None" Browser_only = "no" bootProto = "None" defroutte = "Sim" ipv4_failure_fatal = "não" ipv6init = "sim" ipv6_autoconf = "" "ipv6_defroute =" sim "ipv6_autoconf =" "" "" " Ipv6_addr_gen_mode = "stable-privacy" name = "enp1s0" uuid = "d5f41bf4-de0a-43b3-b633-7e2ec6212e58" dispositivo = "enp1s0" onboot = "sim ipaddr = 192".168.122.66 prefixo = 24 gateway = 192.168.122.1 dns1 = 192.168.122.1 


Definimos nosso IP estático para 192.168.122.66 e defina nosso Gateway e DNS Server para 192.168.122.1. Agora, para tornar nossas mudanças eficazes, devemos abaixar e subir novamente a interface de rede. Esteja ciente de que isso atrapalhará as conexões SSH existentes através da referida interface:

$ sudo nmcli conexão Down ENP1S0 && SUDO NMCLI CONEXÃO UP ENP1S0

Executando o IP Addr Comando novamente, podemos verificar se o IP mudou:

IP Addr | Grep ENP1S0 | GREP INET INET 192.168.122.66/24 BRD 192.168.122.255 SCOPE GLOBAL NOPREFIX 

Método 2 - Usando NMCLI

Nmcli é uma ferramenta de linha de comando usada para controlar o NetworkManager. Ao usá -lo, podemos, entre outros thins, alterar as configurações de rede para uma interface específica. No nosso caso, devemos usar nmcli com o conexão Subcomando com o modificar ou o editar Ação. O primeiro nos permite alterar as configurações diretamente, enquanto o segundo lança o shell NMCLI, onde podemos operar interativamente.

Usando o NMCLI diretamente

Para alterar o endereço IP da interface "ENP1S0" com um comando nmcli direto, executamos:

$ sudo nmcli conexão modificar ENP1S0 IPv4.Endereço 192.168.122.66/24

Observe que especificamos o prefixo de roteamento junto com o IP usando o chamado Cidr notação (roteamento de intervalos de classes). Usamos uma sintaxe semelhante para alterar o gateway e as configurações do DNS:

$ sudo nmcli conexão modificar ENP1S0 IPv4.Gateway 192.168.122.1 $ sudo nmcli conexão Modificar ENP1S0 IPv4.DNS 192.168.122.1 

Finalmente, definimos o método para manual Para evitar o uso de qualquer outro protocolo de inicialização para a interface. Este comando define a opção BootProto para nenhum no arquivo de configuração da interface:



$ sudo nmcli conexão modificar ENP1S0 IPv4.Manual do método

Usando shell nmcli

Como mencionamos acima, também podemos usar um método interativo para executar as mesmas mudanças. Para entrar no shell nmcli nós usamos o editar ação, seguida pelo nome da interface que queremos editar:

$ sudo nmcli conexão editar enp1s0 === | Editor de conexão interativa nmcli | === Editando a conexão '802-3-3-ETERNET': 'ENP1S0' tipo 'ajuda' ou '?'Para comandos disponíveis. Digite 'impressão' para mostrar todas as propriedades de conexão. Tipo 'descreva [.] 'Para descrição detalhada da propriedade. Você pode editar as seguintes configurações: Conexão, 802-3-ETERNET (Ethernet), 802-1X, DCB, SRIOV, ETHTOOL, Match, IPv4, IPv6, TC, Proxy Nmcli> 

O cursor piscante nos diz que o shell está aceitando comandos: podemos digitar ajuda Para obter uma lista dos disponíveis, imprimir para ver todas as propriedades de conexão ou descrever seguido de um cenário e uma de suas propriedades (representadas com uma notação de ponto), para obter uma descrição deste último. Por exemplo:

nmcli> nmcli> descrever ipv4.endereço === [endereços] === [NM Propriedade Descrição] Matriz de endereços IP. [NMCLI Descrição específica] Digite uma lista de endereços IPv4 formatados como: ip [/prefixo], ip [/prefixo],… prefixo ausente é considerado como prefixo de 32. Exemplo: 192.168.1.5/24, 10.0.0.11/24 

Para alterar o endereço da nossa interface:

nmcli> definir ipv4.Endereço 192.168.122.66/24

O mesmo princípio é usado para alterar as outras propriedades:

nmcli> definir ipv4.Gateway 192.168.122.1 nmcli> definir ipv4.DNS 192.168.122.1 nmcli> definir ipv4.Manual do método 

Para salvar as modificações que fizemos, precisamos emitir um último comando:

nmcli> salvar conexão 'ENP1S0' (D5F41BF4-DE0A-43B3-B633-7E2EC6212E58) Atualizado com sucesso. 

Para sair do shell nmcli, apenas digite desistir e pressione Enter:

nmcli> desistir

Novamente, para tornar as mudanças eficazes, devemos recarregar a interface com o mesmo comando que usamos antes.

Método 3 - Usando NMTUI

Além de alterar os parâmetros de uma interface de rede modificando seu arquivo manualmente ou usando o utilitário NMCLI, também podemos controlar o NetworkManager usando uma interface de usuário de texto. Para lançá -lo, apenas invocamos nmtui Em nosso terminal:



$ sudo nmtui


A interface do usuário de texto nmtui

Nós selecionamos Edite uma conexão E então o nome da interface que queremos manipular; Em seguida, prosseguimos em mudar os valores desejados. Por exemplo:



Editando Configurações de conexão com NMTUI

Depois que estamos satisfeitos, selecionamos OK e pressione Enter: seremos levados de volta ao menu de seleção de interface. Desta vez, selecionamos voltar, e então escolha desistir sair. Para aplicar as configurações, precisamos recarregar a conexão da interface:

$ sudo nmcli conexão Down ENP1S0 && SUDO NMCLI CONEXÃO UP ENP1S0

Conclusões

Neste tutorial, vimos três métodos que podemos usar para definir um endereço IP estático no Red Hat Enterprise Linux 8. Vemos quais opções devemos mudar e o que devemos adicionar no arquivo de configuração da interface ao editá -lo manualmente e como executar as mesmas mudanças usando NMCLI e NMTUI, que são respectivamente um utilitário de linha de comando e uma interface de usuário de texto: ambos são usados Para controlar o daemon do NetworkManager.

Tutoriais do Linux relacionados:

  • Como configurar o endereço IP estático no Almalinux
  • Como impedir a verificação de conectividade do NetworkManager
  • Como adicionar rota no Almalinux
  • Como reiniciar a rede no Ubuntu 22.04 LTS Jellyfish
  • Como monitorar a atividade da rede em um sistema Linux
  • Como exportar repositórios com o Git-Daemon
  • Tutorial de configuração de rede NetPlan para iniciantes
  • Como configurar um endereço IP estático no Manjaro Linux
  • Configurando a rede em Manjaro Linux
  • Introdução ao Systemd Journal