Articulo de referencia

Administrador de red

{{Cite web |title=README.md |url=https://gitlab.freedesktop.org/NetworkManager/NetworkManager/-/blob/37c0e0860e7727e1f4a60698861d3a62840e8b82/README.md |date=2025-03-25 |access-...

NetworkManager es un demonio que se sitúa sobre libudev y otras interfaces del kernel de Linux (y un par de demonios más) y proporciona una interfaz de alto nivel para la configuración de las interfaces de red para simplificar el uso de redes informáticas en distribuciones de Linux . [ 2 ]

Cómo funciona

NetworkManager es un demonio del sistema, con varias interfaces gráficas disponibles.
Núcleo de Linux: controladores de dispositivos de red y pila de red. Los programas de utilidad no se muestran, ya que se comunican a través del SCI con los diferentes componentes del núcleo.

Para conectar ordenadores entre sí, se han desarrollado diversos protocolos de comunicación , como IEEE 802.3 (Ethernet), IEEE 802.11 ("inalámbrico"), IEEE 802.15.1 (Bluetooth), PPPoE , PPPoA , etc. Cada ordenador participante debe disponer del hardware adecuado, como una tarjeta de red o una tarjeta de red inalámbrica , y este hardware debe estar configurado correctamente para poder establecer una conexión.

En el caso de un núcleo monolítico, todos los controladores de dispositivos forman parte de él. El hardware se accede (y también se configura) a través de su controlador de dispositivo mediante la utilidad de configuración, y programas como el navegador web , SSH , el cliente NTP , etc., se utilizan para enviar y recibir paquetes de red.

Configuración de interfaces de red sin NetworkManager

En Linux y todos los sistemas operativos tipo Unix, las utilidades ifconfigy las más recientes ip(del paquete iproute2 ) se utilizan para configurar el hardware IEEE 802.3 e IEEE 802.11 . Estas utilidades configuran el kernel directamente y la configuración se aplica de inmediato. Tras el arranque, el usuario debe volver a configurarlas.

Para aplicar la misma configuración estática después de cada arranque, se utilizan los programas PID1: System V init ejecuta scripts de shell y programas binarios, systemd analiza sus propios archivos de configuración (y ejecuta programas). La configuración de arranque para las interfaces de red se almacena en /etc/network/interfacespara las distribuciones Debian Linux y sus derivados o ifcfgarchivos en /etc/sysconfig/network-scripts/para Fedora y sus derivados, y los servidores DNS/etc/resolv.conf en . /etc/network/interfaceso /etc/sysconfig/network-scripts/ifcfg-*puede definir una dirección IP estática o dhclientpara ser utilizada, y todo tipo de VPN también se puede configurar aquí.

En caso de que sea necesario cambiar la configuración, el protocolo DHCP se encarga en gran medida de hacerlo automáticamente, sin que el usuario se dé cuenta.

Configuración de interfaces de red con NetworkManager

  • NetworkManager es accesible a través de D-Bus .
  • La configuración se almacena en/etc/NetworkManager/NetworkManager.conf

Pero a medida que hemos pasado de servidores físicos de gran tamaño a hosts más portátiles que se pueden conectar y desconectar (o mover de un punto de acceso Wi-Fi a otro) a discreción del usuario, las configuraciones dinámicas (es decir, no almacenadas en un archivo de configuración estático, sino tomadas de fuera del host y que potencialmente cambian después del arranque) se han vuelto más comunes. Bootp fue uno de los primeros protocolos utilizados para esto, y hasta el día de hoy su descendiente DHCP sigue siendo muy común. Muchos sistemas tipo Unix incluyen un programa llamado dhclient para gestionar esta configuración dinámica. Con una configuración relativamente estática o dinámica simple, la configuración estática modificada por dhclient funciona bien. Sin embargo, a medida que las redes y sus topologías se vuelven más complejas, un gestor central para toda la información de configuración de red se vuelve más esencial.

Arquitectura de software

NetworkManager tiene dos componentes:

  1. El demonio NetworkManager , el software que gestiona las conexiones e informa sobre los cambios en la red.
  2. la interfaz gráfica o de línea de comandos
Interfaces gráficas y de línea de comandos
applet nm
nm-applet es una interfaz gráfica de usuario (GUI) basada en GTK 3 para NetworkManager que se ejecuta en la bandeja del sistema. El applet es mantenido por el proyecto GNOME y puede usarse con cualquier entorno de escritorio que implemente el protocolo de bandeja del sistema fd.o [ 4 ] (esto excluye GNOME Shell , que tiene su propia implementación integrada).
plasma-nm
KDE Plasma 6 tiene su propio applet para configurar las conexiones a través de NetworkManager, plasma-nm. Este applet no viene incluido en Plasma 6 por defecto.
nmcli
nmcli es la interfaz de línea de comandos integrada de NetworkManager añadida en 2010. [ 5 ] nmcli permite mostrar fácilmente el estado actual de NetworkManager, administrar conexiones y dispositivos, y monitorear conexiones.
nmtui
nmtui es la interfaz de usuario basada en texto integrada para NetworkManager. Es básica en comparación con nmcli, ya que solo permite a los usuarios agregar, editar, activar y desactivar conexiones; establecer el nombre de host del sistema; y habilitar y deshabilitar radios. [ 6 ] No permite la configuración de conexiones cableadas, WPA-Enterprise ni VPN ; se pueden usar conexiones preconfiguradas. [ 7 ]
cnetworkmanager
cnetworkmanager es una interfaz de línea de comandos (CLI) basada en Python para NetworkManager, escrita por Martin Vidner. El último commit del proyecto fue en agosto de 2010; su versión final (0.21.1) se publicó en agosto de 2009. [ 8 ]

Soporte para banda ancha móvil

NetworkManager se utiliza junto con ModemManager [ 9 ] y el paquete PPP de Paul [ 10 ] para el soporte de WWAN / banda ancha móvil .

Antti Kaijanmäki anunció el desarrollo de un asistente de configuración de banda ancha móvil para NetworkManager en abril de 2008; [ 11 ] los cambios necesarios se realizaron en NetworkManager en la versión 0.7.1. [ 12 ]

Historia

Red Hat inició el proyecto NetworkManager en 2004 con el objetivo de facilitar a los usuarios de Linux la gestión de las necesidades de red modernas, en particular las redes inalámbricas . NetworkManager adopta un enfoque oportunista para la selección de red, intentando utilizar la mejor conexión disponible cuando se producen interrupciones o cuando el usuario cambia de red inalámbrica. Prioriza las conexiones Ethernet sobre las redes inalámbricas "conocidas", que a su vez tienen preferencia sobre las redes inalámbricas con SSID a las que el usuario nunca se ha conectado. Se le solicitan al usuario las claves WEP o WPA según sea necesario.

El proyecto NetworkManager fue uno de los primeros componentes importantes de escritorio Linux en utilizar D-Bus y HAL de forma extensiva. Sin embargo, desde junio de 2009, NetworkManager ya no depende de HAL, y desde la versión 0.9.10 (aprox. 2014), tampoco requiere que el demonio D-Bus esté en ejecución para su funcionamiento como usuario root. [ 13 ]

Véase también

  • Linux en el escritorio : descripción general de los usos de Linux. Páginas que muestran breves descripciones de destinos de redirección. 
  • BlueZ – Software del sistema que implementa funciones Bluetooth. Páginas que muestran breves descripciones de los destinos de redirección. 
  • GNOME Keyring Manager : software de gestión de contraseñas para Linux. Páginas que muestran breves descripciones de los destinos de redirección. 
  • usbserial – Biblioteca de software Unix Páginas que muestran breves descripciones de destinos de redirección 
  • Wicd : gestor de red escrito en Python.
  • wpa_supplicant – Implementación de código abierto de IEEE 802.11i 
  • wvdial – Programa informático para facilitar las conexiones de módem. Páginas que muestran breves descripciones de los destinos de redireccionamiento. 
  • netifd : un pequeño demonio con la capacidad de escuchar eventos de netlink; no requiere D-Bus , no depende de GLib y está diseñado para dispositivos integrados.
  • ConnMan : demonio para gestionar conexiones a Internet en dispositivos integrados.

Referencias

  1. "NetworkManager 1.56.1" . 14 de mayo de 2026. Consultado el 19 de mayo de 2026 .
  2. 1 2 "README.md" . freedesktop.org . 2025-03-25 . Consultado el 2025-07-04 .
  3. "CONTRIBUTING.md · main · NetworkManager / NetworkManager · GitLab" . 23 de mayo de 2024.
  4. "nm-applet(1)" . GNOME GitLab . 2019-02-15 . Consultado el 2025-07-04 .
  5. "Piezas iniciales de nmcli, gitweb" . cgit.freedesktop.org . Consultado el 28 de mayo de 2015 .
  6. Parra, Javier Sánchez; Mancera, Fernando Fernández (2023-06-14). "tui: habilitar/deshabilitar radios Wi-Fi y WWAN | Confirmación de NetworkManager b3b83234" . freedesktop.org . Consultado el 4 de julio de 2025 .
  7. "Red Hat Enterprise Linux 7 | Guía de redes | 3.2. Configuración de redes IP con nmtui" . Documentación de Red Hat . Archivado del original el 22 de abril de 2025. Consultado el 4 de julio de 2025 .
  8. Vidner , Martin (2010-08-20). "cnetworkmanager.git/summary" . repo.or.cz. Archivado del original el 31-08-2022 . Recuperado el 04-07-2025 .
  9. "ModemManager" . ModemManager . Archivado del original el 28-06-2025 . Consultado el 04-07-2025 .
  10. "ppp" . Samba . Consultado el 4 de julio de 2025 .
  11. Kaijanmäki, Antti (10 de abril de 2008). "ANUNCIO: Asistente de configuración de banda ancha móvil" . Archivos de servicios de correo de GNOME . Recuperado el 4 de julio de 2025 .
  12. Williams, Dan (22 de junio de 2009). "Mobile Broadband Assistant lo hace fácil" . Blog de Dan Williams | Blogs de GNOME . Archivado del original el 17 de junio de 2025. Consultado el 4 de julio de 2025 .
  13. "Construiremos una casa de ensueño de red" . Blogs.gnome.org. 20 de junio de 2014. Consultado el 28 de mayo de 2015 .
  • Página principal de NetworkManager
  • Base de datos de proveedores de servicios
  • Administrador de red en freedesktop.org
  • Estado de NetworkManager en la lista de correo freebsd-gnome
  • Página original de NetworkManager en redhat.com a través de Wayback Machine.
  • Anuncio del primer lanzamiento público de NetworkManager.
  • Cómo usar una interfaz WiFi con NetworkManager
  • NetworkManager en la Wiki de Arch