Si es un administrador de sistemas experimentado y se enfoca en la administración de redes, probablemente ya haya oído hablar del Administrador de redes. .
Lanzado en 2004 y desarrollado por Red Hat, el Network Manager es un conjunto de diferentes herramientas, en su mayoría interfaces, diseñadas para facilitar la administración de la red en su sistema.
Si desea activar un adaptador de red, probablemente usará el Administrador de red para lograrlo.
De manera similar, si desea editar una tarjeta de red existente para cambiar la dirección IP que se le asignó, deberá usar el Administrador de red nuevamente.
En este tutorial, vamos a describir cómo puede utilizar las diversas herramientas de la suite Network Manager para administrar sus redes fácilmente.
Después de enumerar las herramientas integradas en la suite (nmcli, nmtui, nm-applet ), repasaremos una lista de casos de uso práctico para administradores de red.
Arquitectura del administrador de red
Antes de profundizar en las capacidades de Network Manager, primero describamos su arquitectura y cómo se puede comunicar con los módulos relacionados con Kernel.
API del administrador de red
El primer concepto que debe comprender es que Network Manager funciona como una API para configurar las interfaces de red en su host.
Sin embargo, Network Manager no funciona solo:es parte de un proceso desde la recepción de un mensaje de red en un punto final llamado socket de red.
Un socket de red está representado físicamente por una NIC Ethernet conectada a un cable Ethernet para comenzar a compartir datos a través de una red.
Cuando se conecta un cable Ethernet, el módulo udev lo reconoce primero. que enviará una señal al Network Manager para notificar que se ha conectado un nuevo cable.
De esta forma, el administrador de red puede mantener las conexiones, pero también puede exponer la disponibilidad de la red a otras aplicaciones.
Si está utilizando Firefox, y si Firefox necesita saber el estado de una conexión de red, puede consultar al administrador de red a través de DBus para obtener esta información.
Network Manager es realmente una API de red que ofrecerá detalles sobre las tarjetas de red, las redes alámbricas o inalámbricas disponibles.
También proporcionará una manera fácil de configurar sus tarjetas de red e interfaces con archivos de configuración dedicados.
Administrador de red frente a ifupdown
Históricamente, los sistemas operativos Linux solían administrar las interfaces de red de una manera diferente, principalmente mediante archivos de configuración ubicados en /etc/network.
En este directorio, se puede utilizar un archivo para configurar las interfaces de red:el archivo de interfaces.
Sin embargo, en distribuciones recientes, el archivo de "interfaces" utilizado por las utilidades ifup e ifdown no se utiliza.
De forma predeterminada, Network Manager es el que administra sus interfaces de red pero la forma en que se administra la red se puede cambiar en el archivo de configuración de Network Manager.
Precisamente, el parámetro "administrado" en la sección "ifupdown" del archivo NetworkManager.conf describe si Network Manager se usa en su sistema o no.
Nota :"falso" significa que Network Manager administra sus conexiones y dispositivos, "verdadero" significa que prefiere hacerlo de la manera anterior usando ifup y ifdown.
Acerca de systemd-networkd
En los sistemas más nuevos, systemd está configurado para manejar casi todo y la red no es una excepción a la regla.
En algunos casos, su sistema puede depender del demonio systemd-network para gestionar las interfaces.
Tenga en cuenta que, para evitar conflictos de configuración relacionados con las redes, solo se debe habilitar un servicio de red a la vez:ya sea ifupdown, systemd-networkd o Network Manager.
Si está acostumbrado a administrar sus redes utilizando el archivo "interfaces", es posible que desee seguir haciéndolo; de lo contrario, se recomienda cambiar al Administrador de red.
Herramientas del administrador de red
Ahora que tiene una mayor comprensión de Network Manager, comencemos a enumerar las herramientas que se proporcionan en este conjunto.
El administrador de la red proporciona las siguientes herramientas:
- nmcli :la herramienta de línea de comandos dedicada que se utiliza para configurar, agregar, editar y eliminar conexiones mediante Network Manager;
- nmtui :una interfaz gráfica de usuario que proporciona solo un subconjunto de funciones en comparación con nmcli. Usando nmtui, puede editar una conexión, activar una conexión o cambiar el nombre de host de su computadora;
- nm-applet :disponible en los entornos de escritorio de GNOME, este subprograma se usa como una superposición de interfaz que se puede usar para conectarse o desconectarse de las redes.
Tenga en cuenta que algunas distribuciones pueden tener "accesos directos" de Network Manager para las herramientas descritas anteriormente:nmtui-connect, nmtui-edit o nmtui-hostname.
La mayoría de las veces, esas utilidades son en realidad simples enlaces directos a la utilidad principal nmtui.
En las siguientes secciones, vamos a ver cómo puede usar las diferentes herramientas citadas anteriormente para configurar sus redes correctamente.
Configuración de red usando nmcli
Como se describe en la sección anterior, nmcli es una utilidad de línea de comandos que se puede usar para monitorear la conectividad de su red , sino también para agregar, editar, eliminar conexiones y tener información detallada sobre los dispositivos en su sistema.
Puede interactuar con nmcli usando la siguiente sintaxis
$ nmcli <options> <section> <action>
El nmcli tiene un conjunto de ocho secciones:
- ayuda :utilizado para obtener ayuda general sobre el uso de nmcli;
- generales :se utiliza para obtener el estado y la configuración global del propio Network Manager;
- redes :expone métodos para cerrar Network Manager o volver a abrirlo;
- radio :se utiliza para gestionar protocolos de transmisión inalámbrica como WIFI o WAN;
- conexión :como su nombre lo indica, esta sección se utiliza para subir y bajar interfaces y para agregar y eliminar conexiones existentes;
- dispositivo :se utiliza principalmente para modificar los parámetros asociados con un dispositivo determinado (el nombre de la interfaz, por ejemplo) o para conectar un dispositivo mediante una conexión existente;
- agente y monitor :esas secciones se usan para manejar secretos y ver cambios en la red, respectivamente.
Cada sección descrita tiene un conjunto de acciones predefinidas que se pueden encontrar leyendo la documentación de nmcli (mostrar, agregar, eliminar, modificar, cargar, etc.)
Como ejemplo, si tuviera que enumerar todas las conexiones que están actualmente activas, ejecutaría "nmcli" con la sección "conexión" y la acción "mostrar".
$ nmcli connection show
En este caso, mi host tiene una conexión Ethernet por cable en un adaptador de red llamado "eth0".
En las siguientes secciones, veremos cómo puede interactuar con las tarjetas de red y las conexiones para configurar correctamente su sistema.
Administración de conexiones
Al usar Network Manager, una conexión puede verse como una "configuración de red “.
Como consecuencia, una "conexión" tiene toda la información relacionada con las capas 2 (capa de enlace de datos) y capas 3 (probablemente relacionadas con el direccionamiento IP).
Cuando un dispositivo utiliza una conexión, es decir, un adaptador de red en su host, se configura como "activa" o "activa".
Por otro lado, una conexión puede estar "inactiva" y ahora utilizada por cualquier interfaz de red:en este caso, está configurada como "inactiva" o "inactiva"
El primer punto clave aquí es que cada vez que configuramos la red en un host Linux, esencialmente estamos configurando conexiones, que se vincularán a los dispositivos más adelante.
Lista de conexiones de red
Para enumerar las conexiones de red disponibles en su host, puede ejecutar la acción "mostrar" de la sección "conexión".
$ nmcli connection show
Opcionalmente, puede proporcionar el indicador "–activo" para restringir el resultado a conexiones activas (es decir, utilizadas por adaptadores de red)
nmcli connection show --active
Agregar conexiones de red
En algunos casos, puede ser útil tener varias conexiones configuradas.
Digamos que está trabajando en dos lugares diferentes:uno que usa DHCP para asignar su dirección IP (direccionamiento IP dinámico) y otro que asigna una IP estática a su computadora.
Para lograrlo, puede crear conexiones de red adicionales que se pueden activar según su ubicación.
Para agregar nuevas conexiones de red mediante Network Manager, puede:
- Agregue su archivo de configuración a las conexiones del sistema directorio ubicado en /etc/NetworkManager;
- Agregue la "conexión nmcli ” comando con la opción “agregar”;
- Usar el nm-connection-editor utilidad que proporciona una GUI para agregar, modificar y eliminar conexiones existentes.
Usando la línea de comando nmcli, puede crear una nueva conexión ejecutando el siguiente comando
$ sudo nmcli connection add type ethernet ifname eth2
Usando nmcli, se asignará una nueva conexión UUID a su conexión recién creada y podrá comenzar a usarla para conectarse a Internet, por ejemplo.
Modificar parámetros de conexión
Una gran característica de la utilidad nmcli es modificar los parámetros de sus conexiones existentes .
Si desea modificar su dirección IP y cambiar de DHCP a direccionamiento IP manual, también debe usar la utilidad nmcli para cambiar esos parámetros.
Para modificar los parámetros de conexión existentes , usaría la siguiente sintaxis
$ nmcli connection modify <connection_id> <parameter> <value>
Como ejemplo, supongamos que desea que su dirección IP sea estática y establezca el valor '192.168.1.19'
Para lograr eso, ejecutaría el siguiente comando
$ nmcli connection modify <uuid> ipv4.method manual
$ nmcli connection modify <uuid> ipv4.address 192.168.1.19/24
Nota :al cambiar la dirección IP, no olvide configurar la máscara de subred (aquí /24), de lo contrario, es posible que se le asigne una máscara predeterminada que será incorrecta en la mayoría de los casos.
Para que sus cambios sean efectivos, debe reiniciar su conexión usando las acciones "arriba" y "abajo" de la sección "conexión".
$ nmcli connection down <uuid>
$ nmcli connection up <uuid>
Ahora que sus interfaces se reiniciaron, su cambio de IP debería ser efectivo.
$ hostname -I
192.168.1.19
Administración de dispositivos
“Dispositivo ” es una de las secciones de la utilidad nmcli y se puede usar para administrar adaptadores de red en su host.
Lista de adaptadores de red
Para tener una lista del adaptador de red en su host, puede ejecutar la acción "mostrar" en la sección "dispositivo".
$ nmcli device show
Este comando describe extensamente su adaptador de red, enumera:
- El nombre del dispositivo :asignado por udev cuando el dispositivo se conectó a su computadora (eth0 en este caso);
- Su dirección MAC del dispositivo , referido aquí como la dirección del hardware;
- El estado del dispositivo :si está conectado a la red o no;
- La dirección IPv4 utilizando una notación CIDR (192.168.1.16/24)
- El IPv4 de su puerta de enlace de subred (192.168.1.1);
- El IPv4 de su DNS principal (192.168.1.1)
Nota :aquí, la puerta de enlace actúa como el DNS principal, pero es posible que tenga servidores de nombres dedicados en su empresa.
Esas características son bastante útiles si desea enumerar las tarjetas de red disponibles en su host y determinar si están conectadas o no.
Cambiar la configuración del dispositivo
En algunos casos, puede ser útil cambiar la configuración del dispositivo directamente.
Sin embargo, hay un punto crucial que debe recordar:puede cambiar su dispositivo en vivo, pero si desea que sus cambios se mantengan, debe modificar la configuración de su conexión.
En resumen, los cambios de configuración del dispositivo son temporales.
Para cambiar la configuración de su dispositivo, debe ejecutar el comando "dispositivo nmcli" con la opción "modificar" y especificar el parámetro a cambiar.
$ nmcli device modify <interface_name> <parameter> <value>
$ nmcli dev mod <interface_name> <parameter> <value>
Por ejemplo, supongamos que desea cambiar la dirección IP de su interfaz de red "eth0". También desea que la atribución de IP sea estática en lugar de dinámica.
Para lograrlo, ejecutaría el siguiente comando
$ nmcli device modify eth0 ipv4.method manual
Connection successfully reapplied to 'eth0'
$ nmcli dev mod eth0 ipv4.address 192.168.1.19/24
Connection successfully reapplied to 'eth0'
Volver a aplicar parámetros
Solo para mostrar que los cambios son temporales , si tuviera que "volver a aplicar" los parámetros a su interfaz, todos los cambios se perderían.
En su lugar, se volverán a aplicar los parámetros definidos en su archivo de configuración de conexión (en /etc/NetworkManager/system-connections).
$ nmcli dev reapply eth0
Connection successfully reapplied to 'eth0'
Volver a inspeccionar la dirección IP le daría otra dirección IP de la que asignó estáticamente en la sección anterior.
$ hostname -I
192.168.1.18/24
Herramientas gráficas del administrador de red
En esta sección, vamos a echar un vistazo a las herramientas gráficas incluidas en la suite Network Manager:nmtui y nm-applet.
Utilidad Nmtui
El nmtui es, como su nombre lo describe, una interfaz de usuario de texto creada para facilitar las operaciones de red con una interfaz de usuario fácil de usar.
Para comenzar con nmtui, simplemente ejecute "nmtui" en un shell de terminal.
$ nmtui
En este menú gráfico, tiene tres opciones:
- Editar una conexión :donde puede seleccionar las interfaces de red y modificar los parámetros que se les asignan (como el DNS, la dirección IP o la dirección de la puerta de enlace);
- Activar una conexión :sino también desactivar las conexiones existentes. Como recordatorio, las conexiones solo están activas o habilitadas cuando se asignan a un dispositivo específico;
- Establecer nombre de host del sistema :como "hostnamectl" o "hostname", puede configurar el nombre de la PC a través de una red.
Navegar en la herramienta nmtui es bastante sencillo:puede usar las teclas del teclado para navegar, la tecla 'Enter' para confirmar su selección y la tecla 'Escape' para cancelar y volver a la pantalla anterior.
Nm-applet en GNOME
La última aplicación relacionada con Network Manager es nm-applet:un subprograma GUI disponible para las interfaces de usuario de GNOME.
La herramienta nm-applet es una interfaz de usuario superpuesta que está disponible en la esquina superior derecha del menú de su escritorio.
Con el subprograma nm, puede:ver las conexiones existentes, agregarlas, editarlas y eliminarlas a voluntad.
Puede ver información detallada sobre la configuración de sus conexiones por cable y editarlas para cambiar su dirección IP o cambiar el método de atribución de IP (de DHCP a manual, por ejemplo)
Conclusión
En este tutorial, aprendió sobre el Administrador de red :una herramienta en las distribuciones modernas que se utiliza para crear, modificar y administrar conexiones de red.
Ha descubierto las herramientas asociadas con Network Manager (es decir, nmcli, nmtui y nm-applet ) y ha aprendido cómo puede usar esas herramientas para modificar sus conexiones existentes.
Si está interesado en la creación de redes o en la administración del sistema Linux, tenemos una sección completa dedicada a ello en el sitio web, ¡así que asegúrese de consultarla!