Configuración de redes mediante NetworkManager
- DESCRIPCIÓN
El artículo trata sobre los conceptos básicos de NetworkManager y el uso de la herramienta de interfaz de línea de comandos para configurar la red.
- INTENCIÓN
Está utilizando NetworkManager y desea configurar la red.
- ESFUERZO
Se tardan unos 15 minutos en leer este artículo.
- OBJETIVO
Comprender mejor cómo funciona NetworkManager y cómo se pueden configurar las conexiones de red.
1 Acerca de NetworkManager #
NetworkManager es un programa que gestiona la conexión de red primaria y otras interfaces de conexión. Se ha diseñado para ser totalmente automático por defecto. NetworkManager se gestiona con systemd y se incluye con todos los archivos de unidad de servicio necesarios.
NetworkManager almacena todas las configuraciones de red como una conexión, que es una colección de datos que describe cómo crear una red y cómo conectarse a ella. Estas conexiones se almacenan como archivos en el directorio /etc/NetworkManager/system-connections/.
Una conexión está activa cuando un dispositivo concreto la utiliza. El dispositivo puede tener más de una conexión configurada, pero solo una puede estar activa a la vez. Las demás conexiones se pueden utilizar para cambiar rápidamente de una conexión a otra. Por ejemplo, si la conexión activa no está disponible, NetworkManager intenta conectar el dispositivo a otra conexión configurada.
Para gestionar las conexiones, utilice el comando nmcli, descrito en la Sección 4, “Gestión de la red mediante NetworkManager”.
2 El archivo de configuración NetworkManager.conf #
El archivo de configuración principal de NetworkManager es /etc/NetworkManager/NetworkManager.conf, que se puede utilizar para configurar el comportamiento de NetworkManager.
El archivo consta de secciones de pares clave-valor. Cada par clave-valor debe pertenecer a una sección. Una sección comienza con un nombre entre corchetes []. Las líneas que comienzan con # se consideran comentarios. La configuración mínima debe incluir la sección [main] con el valor plugins:
[main] plugins=keyfile
El complemento keyfile admite todos los tipos de conexiones y capacidades de NetworkManager.
El archivo de configuración por defecto contiene la sección connectivity que especifica el URI para comprobar la conexión de red.
En SUSE Linux Micro, también puede utilizar otras secciones. Para obtener información detallada, consulte networkmanager.conf(5) o Gnome's developer guide.
3 Inicio y detención de NetworkManager #
Dado que NetworkManager es un servicio de systemd, puede utilizar comandos de systemd comunes para iniciar, detener o reiniciar NetworkManager.
Para iniciar NetworkManager:
# systemctl start networkPara reiniciar NetworkManager:
# systemctl restart networkPara detener NetworkManager:
# systemctl stop network4 Gestión de la red mediante NetworkManager #
4.1 El comando nmcli #
NetworkManager proporciona una interfaz de línea de comandos para gestionar las conexiones. Con la interfaz nmcli, puede conectarse a una red concreta, editar una conexión, editar un dispositivo, etc. La sintaxis genérica de nmcli es la siguiente:
# nmcli OPTIONSSUBCOMMANDSUBCOMMAND_ARGUMENTS
Donde OPTIONS se describe en la Sección 4.1.1, “Opciones del comando nmcli” y SUBCOMMAND puede ser uno de los siguientes valores:
-
connection permite configurar la conexión de red. Para obtener información detallada, consulte la Sección 4.1.2, “El subcomando
connection”.-
device Para obtener información detallada, consulte la Sección 4.1.3, “El subcomando
device”.-
general muestra el estado y los permisos. Para obtener información detallada, consulte la Sección 4.1.4, “El subcomando
general”.-
monitor monitoriza la actividad de NetworkManager y observa los cambios en el estado de conectividad y los dispositivos. Este subcomando no acepta argumentos.
-
networking consulta el estado de la red. Para obtener información detallada, consulte la Sección 4.1.5, “El subcomando
networking”.
4.1.1 Opciones del comando nmcli #
Además de los subcomandos y sus argumentos, el comando nmcli puede incluir las siguientes opciones:
-
-a|--ask La ejecución del comando se detiene para solicitar los argumentos que faltan, por ejemplo, una contraseña para conectarse a una red.
-
-c|--color {yes|no|auto} Controla la salida de color:
yespara habilitar los colores,nopara inhabilitarlos, yautocrea una salida de color solo cuando la salida estándar se dirige a un terminal.-
-m|--mode {tabular|multiline} Cambia entre
table(cada línea describe una sola entrada, las columnas definen propiedades particulares de la entrada) ymultiline(cada entrada incluye más líneas, cada propiedad está en su propia línea). El valor por defecto estabular.-
-h|--help Muestra la ayuda.
-
-w|--wait seconds Establece un período de tiempo límite para esperar a que NetworkManager finalice las operaciones. Se recomienda utilizar esta opción para los comandos que pueden tardar más en completarse, por ejemplo, la activación de la conexión.
4.1.2 El subcomando connection #
El comando connection permite gestionar conexiones o ver cualquier información sobre conexiones concretas. nmcli connection proporciona los siguientes comandos para gestionar las conexiones de red:
-
show Para mostrar las conexiones:
#nmcli connection showTambién puede utilizar este comando para mostrar detalles acerca de una conexión específica:
#nmcli connection show CONNECTION_IDdonde CONNECTION_ID es cualquiera de los identificadores: un nombre de conexión, un UUID o una vía
-
up Para activar la conexión proporcionada. Utilice el comando para volver a cargar una conexión. Ejecute también este comando después de realizar cualquier cambio en la conexión.
#nmcli connection up [--active] [CONNECTION_ID]Cuando se especifica
--active, solo se muestran los perfiles activos. El valor por defecto es mostrar tanto las conexiones activas como la configuración estática.-
down Para desactivar una conexión.
#nmcli connection down CONNECTION_IDdonde: CONNECTION_ID es cualquiera de los identificadores: un nombre de conexión, un UUID o una vía
Si desactiva la conexión, no se volverá a conectar más tarde aunque tenga el indicador
autoconnect.-
modify Para cambiar o suprimir una propiedad de una conexión.
#nmcli connection modify CONNECTION_IDSETTING.PROPERTYPROPERTY_VALUEDonde:
CONNECTION_ID es cualquiera de los identificadores: un nombre de conexión, un UUID o una vía
SETTING.PROPERTY es el nombre de la propiedad, por ejemplo,
ipv4.addressesPROPERTY_VALUE es el valor deseado de SETTING.PROPERTY
El siguiente ejemplo desactiva la opción
autoconnecten la conexiónethernet1:#nmcli connection modify ethernet1 connection.autoconnect no-
add Para añadir una conexión con los detalles proporcionados. La sintaxis del comando es similar a la del comando
modify:#nmcli connection add CONNECTION_IDsave YES|NOSETTING.PROPERTYPROPERTY_VALUEDebe especificar al menos un valor de
connection.typeo usartype. En el siguiente ejemplo se añade una conexión Ethernet asociada a la interfazeth0con DHCP y se inhabilita el indicadorautoconnectde la conexión:#nmcli connection add type ethernet autoconnect no ifname eth0-
edit Para editar una conexión existente mediante un editor interactivo.
#nmcli connection edit CONNECTION_ID-
clone Para clonar una conexión existente. La sintaxis mínima es:
#nmcli connection clone CONNECTION_IDNEW_NAMEdonde CONNECTION_ID es la conexión que se va a clonar.
-
delete Para suprimir una conexión existente:
#nmcli connection delete CONNECTION_ID-
monitor Para monitorizar la conexión proporcionada. Cada vez que cambia la conexión, NetworkManager imprime una línea.
#nmcli connection monitor CONNECTION_ID-
reload Para volver a cargar todos los archivos de conexión desde el disco. Dado que NetworkManager no monitoriza los cambios realizados en los archivos de conexión, debe utilizar este comando siempre que realice cambios en los archivos. Este comando no acepta más subcomandos.
-
load Para cargar/volver a cargar un archivo de conexión concreto, ejecute:
#nmcli connection load CONNECTION_FILE
Para obtener más información acerca de los comandos mencionados anteriormente, consulte la nmcli
documentation.
4.1.3 El subcomando device #
El subcomando device permite mostrar y gestionar interfaces de red. El comando nmcli device reconoce los siguientes comandos:
-
status Para imprimir el estado de todos los dispositivos.
#nmcli device status-
show Muestra información detallada acerca de un dispositivo. Si no se especifica ningún dispositivo, se mostrarán todos los dispositivos.
#mcli device show [DEVICE_NAME]-
connect Para conectar un dispositivo. NetworkManager intenta encontrar una conexión adecuada que se activará. Si no hay ninguna conexión compatible, se crea un perfil nuevo.
#nmcli device connect DEVICE_NAME-
modify Realiza cambios temporales en la configuración que está activa en el dispositivo concreto. Los cambios no se almacenan en el perfil de conexión.
#nmcli device modify DEVICE_NAME [+|-] SETTING.PROPERTY VALUEPara conocer los valores posibles de SETTING.PROPERTY, consulte nm-settings-nmcli(5).
El siguiente ejemplo inicia la compartición de la conexión compartida IPv4 en el dispositivo
con1.#nmcli dev modify con1 ipv4.method shared-
disconnect Desconecta un dispositivo e impide que el dispositivo active automáticamente más conexiones sin intervención manual.
#nmcli device disconnect DEVICE_NAME-
delete Para suprimir la interfaz del sistema. Puede utilizar el comando para suprimir solo dispositivos de software como enlaces y puentes. No es posible suprimir dispositivos de hardware con este comando.
#nmcli device DEVICE_NAME-
wifi Muestra todos los puntos de acceso disponibles.
#nmcli device wifi-
wifi connect Se conecta a una red Wi-Fi especificada por su SSID o BSSID. El comando acepta las siguientes opciones:
password: la contraseña para redes segurasifname: la interfaz utilizada para la activaciónname: puede asignar un nombre a la conexión
#nmcli device wifi connect SSID [password PASSWORD_VALUE] [ifname INTERFACE_NAME]Para conectarse a una red Wi-Fi GUESTWiFi con la contraseña
pass$word2#@@, ejecute:#nmcli device wifi connect GUESTWiFi password pass$word2#@@
4.1.4 El subcomando general #
Puede utilizar este comando para ver el estado y los permisos de NetworkManager, así como para cambiar el nombre de host y el nivel de registro. nmcli
general reconoce los siguientes comandos:
-
status Muestra el estado general de NetworkManager. Siempre que no se especifique un comando para el comando
nmcli general, se utilizará el estado por defecto.#nmcli general status-
hostname Si no proporciona un nombre de host nuevo como argumento, se mostrará el nombre de host actual. Si especifica un nombre de host nuevo, el valor se utiliza para definir un nombre de host nuevo.
#nmcli general hostname [HOSTNAME]Por ejemplo, para definir
MyHostname, ejecute:#nmcli general hostname MyHostname-
permissions Muestra su permiso para operaciones de NetworkManager como habilitar o inhabilitar la red, modificar conexiones, etc.
#nmcli general permissions-
logging Muestra y cambia los niveles de registro y los dominios de NetworkManager. Sin ningún argumento, el comando muestra los niveles y dominios de registro actuales.
#nmcli general logging [level LEVEL domains DOMAIN]LEVEL es cualquiera de los valores:
OFF,ERR,WARN,INFO,DEBUGoTRACE.DOMAIN es una lista de valores que pueden ser los siguientes:
PLATFORM, RFKILL, ETHER, WIFI, BT, MB, DHCP4, DHCP6, PPP, WIFI_SCAN, IP4, IP6, AUTOIP4, DNS, VPN, SHARING, SUPPLICANT, AGENTS, SETTINGS, SUSPEND, CORE, DEVICE, OLPC, WIMAX, INFINIBAND, FIREWALL, ADSL, BOND, VLAN, BRIDGE, DBUS_PROPS, TEAM, CONCHECK, DCB, DISPATCH, AUDIT, SYSTEMD, VPN_PLUGIN, PROXY.
4.1.5 El subcomando networking #
El subcomando permite consultar el estado de la red. Además, mediante este comando, puede habilitar o inhabilitar la conectividad. El comando nmcli networking acepta los siguientes comandos:
-
on/off Habilita o inhabilita la conectividad. El comando
offdesactiva todas las interfaces gestionadas por NetworkManager.#nmcli networking on- connectivity
Muestra el estado de conectividad de la red. Si se utiliza
check, NetworkManager realiza una nueva comprobación del estado. De lo contrario, se muestra el último estado detectado.#nmcli networking connectivityLos estados posibles son los siguientes:
none: el host no está conectado a ninguna red.
portal: el host está detrás de un portal cautivo y no puede acceder a Internet.
limited: el host está conectado a una red, pero no tiene acceso a Internet.
full: el host está conectado a una red y tiene acceso completo a Internet.
unknown: NetworkManager no ha podido determinar el estado de la red.
5 Información legal #
Copyright © 2006 –2025 SUSE LLC y colaboradores. Reservados todos los derechos.
Está permitido copiar, distribuir y modificar este documento según los términos de la licencia de documentación gratuita GNU, versión 1.2 o (según su criterio) versión 1.3. Esta información de copyright y licencia deberán permanecer inalterados. En la sección titulada “GNU Free Documentation License” (Licencia de documentación gratuita GNU) se incluye una copia de la versión 1.2 de la licencia.
Para obtener información sobre las marcas comerciales de SUSE, consulte https://www.suse.com/company/legal/. Todas las marcas comerciales de otros fabricantes son propiedad de sus respectivas empresas. Los símbolos de marcas comerciales (®, ™, etc.) indican marcas comerciales de SUSE y sus filiales. Los asteriscos (*) indican marcas comerciales de otros fabricantes.
Toda la información recogida en esta publicación se ha compilado prestando toda la atención posible al más mínimo detalle. Sin embargo, esto no garantiza una precisión total. Ni SUSE LLC, ni sus filiales, ni los autores o traductores serán responsables de los posibles errores o las consecuencias que de ellos pudieran derivarse.