Cómo administrar redes con NetworkManager en RHEL/CentOS 8

Cómo administrar redes con NetworkManager en RHEL/CentOS 8

En RHEL. y CentOS 8. el servicio de red es administrado por el demonio NetworkManager. y se utiliza para configurar y controlar dinámicamente los dispositivos de red y mantenga las conexiones activas cuando estén disponibles.

NetworkManager. viene con numerosos beneficios, como soporte para una fácil configuración y administración de la red utilizando tanto la interfaz de línea de comandos como las herramientas de interfaz gráfica de usuario, proporciona una API a través de D-Bus que permite consultar y controlar la configuración de la red, compatibilidad con la flexibilidad de configuración y mucho más.

Además, el NetworkManager. también se puede configurar mediante archivos, y Consola web Cockpit y admite el uso de scripts personalizados para iniciar o detener otros servicios según el estado de la conexión.

Lea también. Cómo configurar y administrar conexiones de red usando ‘nmcli ‘Herramienta

Antes de continuar, los siguientes son algunos otros puntos importantes para tener en cuenta acerca de las redes en CentOS/RHEL 8.

  • La configuración de tipo ifcfg. tradicional (p. ej. Los archivos ifcfg-eth0. ifcfg-enp0s3. siguen siendo compatibles.
  • Las secuencias de comandos de red están obsoletas y ya no se proporcionan de forma predeterminada.
  • Una instalación mínima proporciona una nueva versión de los scripts ifup. e ifdown. que llaman a NetworkManager a través de la herramienta nmcli.
  • Para ejecutar scripts ifup. e ifdown. NetworkManager. debe estar ejecutándose.

Instalación de NetworkManager en CentOS/RHEL 8

freestar.config.enabled_slots.push

El NetworkManager. debe venir preinstalado en un CentOS/RHEL 8. instalación básica, de lo contrario, puede instalarlo usando el administrador de paquetes DNF como se muestra.

# dnf install NetworkManager  Instalar Network Manager en CentOS 8  Instalar Network Manager en CentOS 8 Instalar red Manager en CentOS 8

El archivo de configuración global para NetworkManager. se encuentra en /etc/Net workManager/NetworkManager.conf. y se pueden encontrar archivos de configuración adicionales en /etc/NetworkManager/.

 Archivos de configuración de NetworkManager  Archivos de configuración de NetworkManager Archivos de configuración de NetworkManager

Administración de NetworkManager usando Systemctl en CentOS/RHEL 8

En CentOS/RHEL 8. y otros sistemas Linux modernos que han adoptado la systemd. (administrador de sistemas y servicios), los servicios se administran mediante la herramienta systemctl.

Los siguientes systemctl son útiles comandos. para administrar el servicio NetworkManager.

Verificar el estado de NetworkManager

Una instalación mínima de CentOS/RHEL 8. debería tener NetworkManager. se inició y habilitó para iniciarse automáticamente en el momento del arranque, de forma predeterminada. Puede utilizar los siguientes comandos para comprobar si NetworkManager está activo, habilitado e imprimir información de estado de tiempo de ejecución de NetworkManager.

# systemctl está-activo NetworkManager # systemctl está habilitado NetworkManager # systemctl estado NetworkManager  Verificar el servicio NetworkManager Verificar el servicio NetworkManager Verificar el servicio NetworkManager Iniciando NetworkManager

Si el NetworkManager. no se está ejecutando, puede iniciarlo simplemente ejecutándolo.

# systemctl start NetworkManager Detener NetworkManager

Para detener o desactivar NetworkManager. por una razón u otra, emita el siguiente comando.

# systemctl stop NetworkManager Reiniciando NetworkManager

Si ha realizado algún cambio en los archivos de configuración de la interfaz o en la configuración del demonio NetworkManager (normalmente ubicado en el directorio /etc/NetworkManager/), puede reiniciar (detener y luego iniciar ) el NetworkManager para aplicar los cambios como se muestra.

# systemctl restart NetworkManager Recargando NetworkManager

Para volver a cargar la configuración del demonio NetworkManager. (pero no el archivo de configuración de la unidad de systemd) sin reiniciar el servicio, ejecute el siguiente comando.

# systemctl reload NetworkManager

Uso de herramientas de NetworkManager y trabajo con archivos ifcfg

NetworkManager. admite algunas herramientas para que los usuarios interactúen con él, que son:

  1. nmcli: una herramienta de línea de comandos utilizada para configurar la red.
  2. nmtui: una interfaz de usuario de texto simple basada en curses, que también se usa para configurar y administrar las conexiones de la interfaz de red.
  3. Otras herramientas incluyen nm-connection-editor. control-center. y icono de conexión de red. (todo bajo GUI ).

Para enumerar los dispositivos detectados por NetworkManager. ejecute el comando nmcli.

# nmcli dispositivo O # nmcli estado del dispositivo  Lista de dispositivos detectados por NetworkManager  Lista de dispositivos detectados por NetworkManager Lista de dispositivos detectados por NetworkManager

Para ver todas las conexiones activas, ejecute el siguiente comando (tenga en cuenta que sin la-a, enumera los perfiles de conexión disponibles).

# nmcli connection show-a  Ver conexiones de red activas Ver red activa Conexiones Ver conexiones de red activas Establecer dirección IP estática en CentOS/RHEL 8

Los archivos de configuración específicos de la interfaz de red se encuentran en el directorio /etc/sysconfig/network-scripts/. Puede editar cualquiera de estos archivos, por ejemplo, para establecer una dirección IP estática para su servidor CentOS/RHEL 8.

# vi/etc/sysconfig/network-scripts/ifcfg-enp0s3

Aquí hay una muestra configuración para establecer una dirección IP estática.

TYPE = Ethernet PROXY_METHOD = ninguno BROWSER_ONLY = no BOOTPROTO = ninguno DEFROUTE = si IPV4_FAILURE_FATAL = no IPV6INIT = si IPV6_AUTOCONF = si IPV6_DEFROUTE = si IPV6_FAILURE_DEFROUTE = si IPV6_FAILURE_FATAL_AD3 = Si b695-75d8fe633511 DEVICE = enp0s3 ONBOOT = sí IPADDR = 192.168.0.110 PREFIX = 24 GATEWAY = 192.168.0.1 DNS1 = 8.8.8.8 PEERDNS = no Ver configuración de interfaz de red  Ver configuración de interfaz de red Ver la configuración de la interfaz de red

Después de guardar los cambios, debe volver a cargar todos l perfiles de conexión o reinicie NetworkManager. para que se apliquen los nuevos cambios.

# nmcli connection reload O # systemctl restart NetworkManager

Inicio o detención de servicios de red/scripts basados ​​en la conectividad de red

NetworkManager. tiene una opción útil que permite a los usuarios ejecutar servicios (como NFS. SMB. etc.) o scripts simples basado en la conectividad de red.

Por ejemplo, si desea montar automáticamente un directorio remoto localmente con sshfs, monte recursos compartidos SMB o monte recursos compartidos NFS después de cambiar entre redes. Es posible que desee que dichos servicios de red no se ejecuten hasta que NetworkManager. esté en funcionamiento (todas las conexiones estén activas).

Esta función la proporciona NetworkManager-dispatcher. service (que debe iniciarse y habilitarse para iniciarse automáticamente al arrancar el sistema). Una vez que el servicio se está ejecutando, puede agregar sus scripts al directorio /etc/NetworkManager/dispatcher.d.

Todos los scripts deben ser ejecutables y escribibles, y deben ser propiedad de root, por ejemplo:

# chown root: root/etc/NetworkManager/dispatcher.d/10-nfs-mount.sh # chmod 755/etc/NetworkManager/dispatcher.d/10-nfs-mount.sh

Importante. Las secuencias de comandos del despachador se ejecutarán en orden alfabético en el momento de la conexión y en orden alfabético inverso en los momentos de desconexión.

Uso de secuencias de comandos de red heredadas

Como mencionamos anteriormente, los scripts de red están en desuso en CentOS/RHEL 8. y no vienen instalados por defecto. Si aún desea utilizar los scripts de red. debe instalar el paquete network-scripts.

# yum install network-scripts

Una vez instalado, este paquete proporciona una nueva versión de los scripts ifup. e ifdown. que llaman a NetworkManager. a través de la herramienta nmcli. que tenemos miró arriba. Tenga en cuenta que NetworkManager. debería estar ejecutándose para que pueda ejecutar estas secuencias de comandos.

Para obtener más información, consulte systemctl. y NetworkManager. páginas man.

# man systemctl # man NetworkManager

Eso es todo lo que preparamos en este artículo. Puede buscar aclaraciones sobre cualquiera de los puntos o hacer preguntas o agregar cualquier cosa a esta guía a través del formulario de comentarios a continuación.