Configuración de la red 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 network
Para reiniciar NetworkManager:
#
systemctl restart network
Para detener NetworkManager:
#
systemctl stop network
4 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:
#
nmcliOPTIONSSUBCOMMANDSUBCOMMAND_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:
yes
para habilitar los colores,no
para inhabilitarlos, yauto
crea una salida de color solo cuando la salida estándar se dirige a un terminal.-
-m|--mode {tabular|multiline}
Cambia entre
tabular
(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 showCONNECTION_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 downCONNECTION_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 modifyCONNECTION_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.addresses
PROPERTY_VALUE es el valor deseado de SETTING.PROPERTY
El siguiente ejemplo desactiva la opción
autoconnect
en 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 addCONNECTION_IDsave YES|NOSETTING.PROPERTYPROPERTY_VALUEDebe especificar al menos un valor de
connection.type
o usartype
. En el siguiente ejemplo se añade una conexión Ethernet asociada a la interfazeth0
con DHCP y se inhabilita el indicadorautoconnect
de 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 editCONNECTION_ID-
clone
Para clonar una conexión existente. La sintaxis mínima es:
#
nmcli connection cloneCONNECTION_IDNEW_NAMEdonde CONNECTION_ID es la conexión que se va a clonar.
-
delete
Para suprimir una conexión existente:
#
nmcli connection deleteCONNECTION_ID-
monitor
Para monitorizar la conexión proporcionada. Cada vez que cambia la conexión, NetworkManager imprime una línea.
#
nmcli connection monitorCONNECTION_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 loadCONNECTION_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 connectDEVICE_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 modifyDEVICE_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 disconnectDEVICE_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 deviceDEVICE_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 connectSSID [password PASSWORD_VALUE] [ifname INTERFACE_NAME]Para conectarse a una red Wi-Fi GUESTWiFi con la contraseña
pass$word2#@@
, ejecute:#
nmcli device wifi connectGUESTWiFi 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 [levelLEVEL domains DOMAIN]LEVEL es cualquiera de los valores:
OFF
,ERR
,WARN
,INFO
,DEBUG
oTRACE
.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
off
desactiva 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 –2024 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. Este aviso 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.