Difference between revisions of "NetworkManager (Español)"

From ArchWiki
Jump to: navigation, search
(VPN no funciona en Gnome)
(simplification and beautification of wikilinks, fixing whitespace, capitalization and section fragments (https://github.com/lahwaacz/wiki-scripts/blob/master/link-checker.py (interactive)))
 
(52 intermediate revisions by 5 users not shown)
Line 5: Line 5:
 
[[fr:NetworkManager]]
 
[[fr:NetworkManager]]
 
[[it:NetworkManager]]
 
[[it:NetworkManager]]
 +
[[ja:NetworkManager]]
 
[[pt:NetworkManager]]
 
[[pt:NetworkManager]]
 
[[ru:NetworkManager]]
 
[[ru:NetworkManager]]
 
[[tr:NetworkManager]]
 
[[tr:NetworkManager]]
 
[[zh-CN:NetworkManager]]
 
[[zh-CN:NetworkManager]]
{{Article summary start|Sumario}}
+
{{Related articles start (Español)}}
{{Article summary text|Este artículo trata sobre la instalación y configuración de NetworkManager - un conjunto de herramientas cooperativas que hacen de la gestión de las redes algo simple y directo.}}
+
{{Related|Network Configuration (Español)}}
{{Article summary heading|Descripción}}
+
{{Related|Wireless Setup (Español)}}
{{Article summary text|Arch Linux provee [[netcfg (Español)|netcfg]] para la [[Configuring_Network_(Español)|gestión de la red]]. {{ic|netcfg}} proporciona soporte para conexiones cableadas en desktops y servidores, así como configuraciones de [[Wireless Setup (Español)|conexiones inalámbricas]] y roaming para la movilidad de los usuarios, permitiendo una fácil gestión de los perfiles de red. '''NetworkManager''' y [[Wicd (Español)|Wicd]] son alternativas populares de terceros.}}
+
{{Related|Netctl (Español)}}
{{Article summary end}}
+
{{Related|Wicd (Español)}}
 +
{{Related articles end}}
  
 
[http://projects.gnome.org/NetworkManager/ NetworkManager] es un programa que proporciona a los sistemas la detección y configuración automática para conectarse a la red. Las funcionalidades de NetworkManager son útiles tanto para redes inalámbricas como por cable. Para las redes inalámbricas, NetworkManager prefiere las redes conocidas y tiene la capacidad de cambiar a la red más confiable. NetworkManager permite que las aplicaciones puedan cambiar de modalidad en línea y fuera de línea. NetworkManager da preferencia a las conexiones por cable antes que a las inalámbricas, tiene soporte para conexiones por módem y para ciertos tipos de VPN. NetworkManager fue originariamente desarrollado por Red Hat y ahora es respaldado por el proyecto [[GNOME]].
 
[http://projects.gnome.org/NetworkManager/ NetworkManager] es un programa que proporciona a los sistemas la detección y configuración automática para conectarse a la red. Las funcionalidades de NetworkManager son útiles tanto para redes inalámbricas como por cable. Para las redes inalámbricas, NetworkManager prefiere las redes conocidas y tiene la capacidad de cambiar a la red más confiable. NetworkManager permite que las aplicaciones puedan cambiar de modalidad en línea y fuera de línea. NetworkManager da preferencia a las conexiones por cable antes que a las inalámbricas, tiene soporte para conexiones por módem y para ciertos tipos de VPN. NetworkManager fue originariamente desarrollado por Red Hat y ahora es respaldado por el proyecto [[GNOME]].
Line 25: Line 27:
 
Network Manager tiene soporte para las redes VPN mediante un sistema basado en plug-ins. Si necesita asistencia técnica VPN a través del gestor de la red hay que instalar uno de los siguientes paquetes de los [[official repositories|repositorios oficiales]]:
 
Network Manager tiene soporte para las redes VPN mediante un sistema basado en plug-ins. Si necesita asistencia técnica VPN a través del gestor de la red hay que instalar uno de los siguientes paquetes de los [[official repositories|repositorios oficiales]]:
  
 +
* {{Pkg|networkmanager-openconnect}}
 
* {{Pkg|networkmanager-openvpn}}
 
* {{Pkg|networkmanager-openvpn}}
 
* {{Pkg|networkmanager-pptp}}
 
* {{Pkg|networkmanager-pptp}}
Line 39: Line 42:
 
Si desea guardar los datos de autentificación (Wireless/DSL) y activar la configuración global de las conexiones, es decir, «disponible para todos los usuarios» instale y configure [[GNOME Keyring]].
 
Si desea guardar los datos de autentificación (Wireless/DSL) y activar la configuración global de las conexiones, es decir, «disponible para todos los usuarios» instale y configure [[GNOME Keyring]].
  
=== KDE4 ===
+
=== KDE ===
  
El front-end para KNetworkManager se ha hecho disponible desde KDE 4.4 como un widget de Plasma disponible en los repositorios oficiales:
+
El frontend de Plasma de Network Manager es un widget disponible en los repositorios oficiales como el paquete {{Pkg|kdeplasma-applets-plasma-nm}}{{Broken package link|{{aur-mirror|kdeplasma-applets-plasma-nm}}}}. El anterior frontend de Plasma KNetworkManager también está disponible como paquete {{AUR|kdeplasma-applets-networkmanagement}} desde aur.
{{Pkg|kdeplasma-applets-networkmanagement}}.
+
 
+
En comparación con GNOME funciona igual de bien, o incluso mejor (tiene más características y detecta más hardware).
+
 
+
{{Nota|Si va a cambiar a otra herramienta para gestionar la red como [[Wicd]], no se olvide ajustar el valor predefinido 'Network Management Backend' en
+
Configuración del sistema -> Hardware -> Fuentes de información}}
+
  
 
Si tiene instalado tanto el widget Plasma como {{ic|nm-applet}} y no desea iniciar {{ic|nm-applet}} cuando usa KDE, añada la siguiente línea a {{ic|/etc/xdg/autostart/nm-applet.desktop}}:
 
Si tiene instalado tanto el widget Plasma como {{ic|nm-applet}} y no desea iniciar {{ic|nm-applet}} cuando usa KDE, añada la siguiente línea a {{ic|/etc/xdg/autostart/nm-applet.desktop}}:
 
  NotShowIn=KDE
 
  NotShowIn=KDE
 +
 +
Véase [http://userbase.kde.org/NetworkManagement Userbase page] para obtener más información.
  
 
=== XFCE ===
 
=== XFCE ===
Line 68: Line 67:
  
 
{{ic|nm-applet}} funciona normalmente, pero sin notificaciones.
 
{{ic|nm-applet}} funciona normalmente, pero sin notificaciones.
 +
 +
Si nm-applet no le pide la contraseña cuando se conecta a las nuevas redes wifi, e inmediatamente después se desconecta, es probable que tenga que instalar {{Pkg|gnome-keyring}}.
  
 
=== Openbox ===
 
=== Openbox ===
Line 75: Line 76:
 
Si desea guardar los datos de autentificación (Wireless/DSL) instale y configure [[gnome-keyring]].
 
Si desea guardar los datos de autentificación (Wireless/DSL) instale y configure [[gnome-keyring]].
  
{{Nota|Si el demonio ''networkmanager'' se encuentra en {{ic | rc.conf}}, las configuraciones siguientes están obsoletas y el applet se iniciará dos veces.}}
+
{{ic|nm-applet}} instala el archivo autostart en {{ic|/etc/xdg/autostart/nm-applet.desktop}}. Si tiene problemas con él (por ejemplo, {{ic|nm-applet}} se inicia dos veces o no se inicia en absoluto), consulte [[Openbox#autostart] o [https://bbs.archlinux.org/viewtopic.php?pid=993738] para conocer la solución.
 
+
Para poder iniciar automáticamnte {{ic|nm-applet}} correctamente al arranque de Openbox, puede que tenga que eliminar el archivo {{ic|/etc/xdg/autostart/nm-applet.desktop}} (Es posible que necesite eliminar este archivo de nuevo después de cada actualización del paquete  {{pkg|network-manager-applet}}).
+
 
+
Luego, en {{ic|autostart}}, active el inicio de {{ic|nm-applet}} con la siguiente línea:
+
 
+
(sleep 3 && /usr/bin/nm-applet --sm-disable) &
+
 
+
Si se producen errores de conexión, asegúrese de que tiene [[D-Bus]] iniciado en la sesión de usuario.
+
  
 
=== Otros escritorios y gestores de ventanas ===
 
=== Otros escritorios y gestores de ventanas ===
Line 123: Line 116:
 
}}
 
}}
  
=== Desactivar la configuración de la red actual ===
+
{{Nota|Puede ser una buena idea usar {{ic|1=systemctl --type=service}} para asegurarse que ningún otro servicio está en ejecución para configurar la red. La existencia de varios servicios de gestión de redes entrarán en conflicto.}}
Tendrá que desactivar su configuración de red actual para poder probar correctamente NetworkManager.
+
 
+
Primero, [[Daemon (Español)|detenga]] el demonio de red:
+
 
+
# systemctl stop net-auto-wireless.service
+
 
+
A continuación, desactive los demonios de red que se estén ejecutando.  
+
 
+
# systemctl disable net-auto-wireless.service
+
 
+
Por último, pare sus NIC (Network Interface Controllers, es decir, tarjetas de red). Por ejemplo (usando el paquete {{Pkg|iproute2}}):
+
 
+
# ip link set eth0 down
+
# ip link set wlan0 down
+
  
 
=== Activar NetworkManager ===
 
=== Activar NetworkManager ===
Line 150: Line 129:
  
 
{{bc|# systemctl start NetworkManager}}
 
{{bc|# systemctl start NetworkManager}}
 +
 +
==== Evitar advertencias ====
 +
 +
NetworkManager imprimirá, probablemente sin sentido, [https://bugs.archlinux.org/task/34971 advertencias (Bug#34971)] para el registro del sistema, cuando [[NetworkManager#Network services with NetworkManager dispatcher|NetworkManager-dispatcher.service]] y [https://www.archlinux.org/packages/?name=modemmanager ModemManager.service] no estén activados. Para mantener el registro limpio y suprimir estos mensajes, active ambos servicios, incluso si no son requeridos por el entorno:
 +
 +
{{bc|# systemctl enable NetworkManager-dispatcher.service && systemctl enable ModemManager.service}}
 +
{{bc|# systemctl start NetworkManager-dispatcher.service && systemctl start ModemManager.service}}
  
 
=== Activar NetworkManager Wait Online ===
 
=== Activar NetworkManager Wait Online ===
Line 170: Line 156:
 
=== Configurar permisos PolicyKit ===
 
=== Configurar permisos PolicyKit ===
  
Véase [[General Troubleshooting#Session permissions]] para la creación de una sesión de trabajo.
+
Véase [[General troubleshooting#Session permissions]] para la creación de una sesión de trabajo.
  
 
Con una sesión de trabajo, tiene varias opciones para la concesión de los privilegios necesarios para NetworkManager:
 
Con una sesión de trabajo, tiene varias opciones para la concesión de los privilegios necesarios para NetworkManager:
Line 189: Line 175:
 
=== Servicios de red con NetworkManager dispatcher===
 
=== Servicios de red con NetworkManager dispatcher===
  
Hay algunos servicios de red que no se desean ejecutar hasta que NetworkManager crea la interfaz. Algunos ejemplos son [[OpenNTPD]] y diversos tipos de montajes de sistemas de archivos de red (por ejemplo, '''netfs'''). NetworkManager tiene la capacidad de iniciar estos servicios cuando se conecta a una red y detenerlos cuando se desconecta.
+
Hay algunos servicios de red que no se desean ejecutar hasta que NetworkManager crea la interfaz. Algunos ejemplos son [[OpenNTPD]] y diversos tipos de montajes de sistemas de archivos de red (por ejemplo, '''netfs'''). NetworkManager tiene la capacidad de iniciar estos servicios cuando se conecta a una red y detenerlos cuando se desconecta. Para utilizar esta característica necesita iniciar/activar el [[daemon|servicio]] NetworkManager-dispatcher:
  
Para utilizar esta característica, se pueden añadir los scripts apropiados  a la carpeta  {{ic|/etc/NetworkManager/dispatcher.d}}. Estos scripts necesitan los permisos de ejecución del usuario. Por seguridad, es una buena práctica que sean propiedad de '''root: root''' y  con permisos de escritura únicamente para el propietario.
+
Una vez que la función está activa, se pueden añadir los scripts apropiados  a la carpeta  {{ic|/etc/NetworkManager/dispatcher.d}}. Estos scripts necesitan los permisos de ejecución del usuario. Por seguridad, es una buena práctica que sean propiedad de '''root:root''' y  con permisos de escritura únicamente por el propietario.
  
Los scripts se ejecutan en orden alfabético durante la fase de conexión, y en orden alfabético inverso durante la fase de desconexión. Reciben dos argumentos: el nombre de la interfaz (por ejemplo, ''eth0'') y el estado (''up'' o ''down''). A fin de garantizar el orden en que vayan surgiendo, es común el uso de caracteres numéricos puestos como prefijos delante del nombre del script (por ejemplo, {{ic|10_portmap}} o {{ic|30_netfs}} (que asegura que el mapeador de puertos se levante antes de que se intente montar NFS).
+
Los scripts se ejecutan en orden alfabético durante la fase de conexión, y en orden alfabético inverso durante la fase de desconexión. Reciben dos argumentos: el nombre de la interfaz (por ejemplo, ''eth0'') y el estado (''up'' o ''down'' para las interfaces y vpn-up o vpn-down para las conexiones vpn). A fin de garantizar el orden en que vayan surgiendo, es común el uso de caracteres numéricos puestos como prefijos delante del nombre del script (por ejemplo, {{ic|10_portmap}} o {{ic|30_netfs}} (que asegura que el mapeador de puertos se levante antes de que se intente montar NFS).
  
{{Advertencia|Por razones de seguridad, debe desactivar el acceso de escritura para el grupo y otro. Por ejemplo, utilice el filtro 755.
+
{{Advertencia|
En otro caso, puede ser denegada la ejecución del script con el mensaje de error:  «nm-dispatcher.action: Script could not be executed: writable by group or other, or set-UID» en {{ic|/var/log/messages.log}} }}
+
* Por razones de seguridad, debe desactivar el acceso de escritura para el grupo y otro. Por ejemplo, utilice el filtro 755. En otro caso, puede ser denegada la ejecución del script con el mensaje de error:  «nm-dispatcher.action: Script could not be executed: writable by group or other, or set-UID» en {{ic|/var/log/messages.log}}.
{{Advertencia|Si se conecta a redes extranjeras o públicas, debe estar al tanto de cuáles son los servicios que están empezando y qué servidores se espera que estén disponibles para ellos al conectarse. Podría crear un agujero de seguridad al iniciar los servicios equivocados mientras está conectado a una red pública.}}
+
* Si se conecta a redes extranjeras o públicas, debe estar al tanto de cuáles son los servicios que están empezando y qué servidores se espera que estén disponibles para ellos al conectarse. Podría crear un agujero de seguridad al iniciar los servicios equivocados mientras está conectado a una red pública.}}
 +
 
 +
====Evitar el tiempo de espera de tres segundos====
 +
 
 +
Si lo anterior funciona, entonces esta sección no es relevante. Sin embargo, existe un problema general en relación con la ejecución del script dispatcher que se demora más de tres segundos antes de ser ejecutado. NetworkManager usa un tiempo de espera interna de 3 segundos (véase [https://bugzilla.redhat.com/show_bug.cgi?id=982734 Bugtracker] para más información) y automáticamente termina los scripts que tardan más de 3 segundos al acabar. En estos casos, el archivo de servicio dispatcher, ubicado en {{ic|/usr/lib/systemd/system/NetworkManager-dispatcher.service}}, tiene que ser modificado para permanecer activo después de arrancar. Cree el archivo de servicio {{ic|/etc/systemd/system/NetworkManager-dispatcher.service}} con el siguiente contenido:
 +
 
 +
.include /usr/lib/systemd/system/NetworkManager-dispatcher.service
 +
[Service]
 +
RemainAfterExit=yes
 +
 
 +
A continuación, active el script {{ic|NetworkManager-dispatcher}} modificado.
  
 
==== Iniciar OpenNTPD ====
 
==== Iniciar OpenNTPD ====
  
 
El siguiente ejemplo de script inicia el demonio OpenNTPD cuando una interfaz se conecta. Guarde el archivo como {{ic|/etc/NetworkManager/dispatcher.d/20_openntpd}} y hágalo ejecutable.
 
El siguiente ejemplo de script inicia el demonio OpenNTPD cuando una interfaz se conecta. Guarde el archivo como {{ic|/etc/NetworkManager/dispatcher.d/20_openntpd}} y hágalo ejecutable.
 +
 
{{bc|<nowiki>
 
{{bc|<nowiki>
 
#!/bin/sh
 
#!/bin/sh
 
+
interface=$1 status=$2
INTERFACE=$1 # The interface which is brought up or down
+
case $status in
STATUS=$2 # The new state of the interface
+
  up)
 
+
    systemctl start openntpd
case "$STATUS" in
+
    ;;
    'up') # $INTERFACE is up
+
  down)
exec /etc/rc.d/openntpd start
+
    if ! nm-tool | awk '/State:/{print $2}' | grep -qs ^connected; then
;;
+
      systemctl stop openntpd
    'down') # $INTERFACE is down
+
    fi
# Check for active interface and down if no one active
+
    ;;
if [ ! `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then
+
exec /etc/rc.d/openntpd stop
+
fi
+
;;
+
 
esac
 
esac
 +
}}
 
</nowiki>}}
 
</nowiki>}}
  
 
==== Montar carpeta remota con sshfs ====
 
==== Montar carpeta remota con sshfs ====
  
Dado que el script viene ejecutado en un entorno muy restrictivo, es necesario exportar la variable {{ic|SSH_AUTH_SOCK}} para poder conectarse al propio agente SSH. Hay diferentes maneras para lograr esto, vea [https://bbs.archlinux.org/viewtopic.php?pid=1042030#p1042030 este link] para más información. El siguiente ejemplo funciona con [[gnome-keyring]], y le pedirá la contraseña si no está desbloqueada ya. En caso de que NetworkManager se conecte automáticamente al iniciar sesión, es probable gnome-keyring aún no se haya iniciado, de modo que la exportación fallará (de ahí que entre en modo de espera). Conocer la {{ic|UUID}} necesaria para comprobar que coincide se puede encontrar en {{ic|/etc/NetworkManager/system-connections/}}).
+
Dado que el script viene ejecutado en un entorno muy restrictivo, es necesario exportar la variable {{ic|SSH_AUTH_SOCK}} para poder conectarse al propio agente SSH. Hay diferentes maneras para lograr esto, vea [https://bbs.archlinux.org/viewtopic.php?pid=1042030#p1042030 este enlace] para más información. El siguiente ejemplo funciona con [[gnome-keyring]], y le pedirá la contraseña si no está desbloqueada ya. En caso de que NetworkManager se conecte automáticamente al iniciar sesión, es probable gnome-keyring aún no se haya iniciado, de modo que la exportación fallará (de ahí que entre en modo de espera). Conocer la {{ic|UUID}} necesaria para comprobar que coincide se puede encontrar con la orden {{ic|nmcli con status}} o {{ic|nmcli con list}}.    
  
#!/bin/bash
+
{{bc|<nowiki>
USER=<your sshfs user>
+
#!/bin/sh
if [ $CONNECTION_UUID == <connection UUID> ]; then
+
USER='username'
        case "$2" in
+
REMOTE='user@host:/remote/path'
+
LOCAL='/local/path'
                up)
+
 
                    #sleep 10
+
interface=$1 status=$2
                    export SSH_AUTH_SOCK=$(find /tmp/keyring-*/ -type s -user $USER -group users -name ssh)
+
if [ "$CONNECTION_UUID" = "</nowiki>''uuid''<nowiki>" ]; then
                    su $USER -c "/usr/bin/sshfs user@host:/remote/folder /local/folder/"
+
  case $status in
                  ;;
+
    up)
+
      export SSH_AUTH_SOCK=$(find /tmp -maxdepth 1 -type s -user "$USER" -name 'ssh')
                down)
+
      su "$USER" -c "sshfs $REMOTE $LOCAL"
                    fusermount -u /local/folder
+
      ;;
                  ;;
+
    down)
        esac
+
      fusermount -u "$LOCAL"
  fi
+
      ;;
 +
  esac
 +
fi
 +
</nowiki>}}
  
==== Usar dispatcher para conectarse a VPN despues de establecer una conexión a red ====
+
==== Usar dispatcher para conectarse a VPN despues de establecer una conexión de red ====
  
 
En este ejemplo, conectaremos automáticamente a una conexión VPN, previamente definida en NetworkManager, después de conectarse a una red Wi-Fi específica. Lo primero que hay que hacer es crear el script dispatcher que define el comportamiento a realizar después de conectarse a la red.  
 
En este ejemplo, conectaremos automáticamente a una conexión VPN, previamente definida en NetworkManager, después de conectarse a una red Wi-Fi específica. Lo primero que hay que hacer es crear el script dispatcher que define el comportamiento a realizar después de conectarse a la red.  
Line 248: Line 245:
 
:1. Cree el script dispatcher:
 
:1. Cree el script dispatcher:
 
{{hc|/etc/NetworkManager/dispatcher.d/vpn-up|<nowiki>
 
{{hc|/etc/NetworkManager/dispatcher.d/vpn-up|<nowiki>
  VPN_NAME=<name of VPN connection defined in NetworkManager>
+
#!/bin/sh
  ESSID=<wifi network ESSID (not connection name)>
+
VPN_NAME="name of VPN connection defined in NetworkManager"
  if [ "$2" = "up" -o "$2" = "vpn-down" ]; then          # -o "$2" = "vpn-down" makes VPN reconnect after VPN connection interrupt
+
ESSID="wifi network ESSID (not connection name)"
     if [ "$(iwgetid | grep ':"'$ESSID'"')" ]; then       # check for ESSID match
+
 
       nmcli con up id "$VPN_NAME";                      # parentheses needed for VPN connection names with spaces
+
interface=$1 status=$2
 +
case $status in
 +
  up|vpn-down)
 +
     if iwgetid | grep -qs ":\"$ESSID\""; then
 +
       nmcli con up id "$VPN_NAME"
 
     fi
 
     fi
   elif [ "$2" = "down" ]; then                          # disconnect VPN prior to disconnecting from the network
+
    ;;
     if [ "$(iwgetid | grep ':"'$ESSID'"')" ]; then       # check for ESSID match and that VPN is actually connected
+
   down)
       if [ $(nmcli con status id "$VPN_NAME" | grep -c activated) ]; then
+
     if iwgetid | grep -qs ":\"$ESSID\""; then
         nmcli con down id "$VPN_NAME";
+
       if nmcli con status id "$VPN_NAME" | grep -qs activated; then
 +
         nmcli con down id "$VPN_NAME"
 
       fi
 
       fi
 
     fi
 
     fi
  fi
+
    ;;
 +
esac
 
</nowiki>}}
 
</nowiki>}}
 
Recuerde que debe hacerlo ejecutable con {{ic|chmod +x}} y establecer la conexión VPN a disposición de todos los usuarios.  
 
Recuerde que debe hacerlo ejecutable con {{ic|chmod +x}} y establecer la conexión VPN a disposición de todos los usuarios.  
Line 267: Line 270:
  
 
:2. Edite el archivo de configuración de la conexión VPN para señalar a NetworkManager como el almacen de los parámetros confidenciales propios en vez incluirlo en el depósito de claves [https://bugzilla.redhat.com/show_bug.cgi?id=710552 que será inaccesible para el usuario root]: abra {{ic|/etc/NetworkManager/system-connections/<name of your VPN connection>}} y modifique {{ic|password-flags}} y {{ic|secret-flags}} de {{ic|1}} a {{ic|0}}.
 
:2. Edite el archivo de configuración de la conexión VPN para señalar a NetworkManager como el almacen de los parámetros confidenciales propios en vez incluirlo en el depósito de claves [https://bugzilla.redhat.com/show_bug.cgi?id=710552 que será inaccesible para el usuario root]: abra {{ic|/etc/NetworkManager/system-connections/<name of your VPN connection>}} y modifique {{ic|password-flags}} y {{ic|secret-flags}} de {{ic|1}} a {{ic|0}}.
 +
 +
Otra forma es poner directamente la contraseña en el archivo de configuración añadiendo la sección {{ic|vpn-secrets}}:
 +
  [vpn]
 +
  ....
 +
  password-flags=0
 +
 
 +
  [vpn-secrets]
 +
  password=your_password
  
 
{{Nota|Ahora es necesario volver a editar la configuración de la conexión de NetworkManager y volver a introducir las contraseñas/secretos de VPN.}}
 
{{Nota|Ahora es necesario volver a editar la configuración de la conexión de NetworkManager y volver a introducir las contraseñas/secretos de VPN.}}
Line 290: Line 301:
 
  nm-applet --sm-disable &
 
  nm-applet --sm-disable &
  
Para las direcciones IP estáticas, tendrá que configurar NetworkManager para que las identifique. El proceso suele implicar pulsar con el botón derecho del ratón en el applet y seleccionar un menú similar a 'Editar las conexiones'.
+
Para las direcciones IP estáticas, tendrá que configurar NetworkManager para que las identifique. El proceso suele implicar pulsar con el botón secundario del ratón en el applet y seleccionar un menú similar a 'Editar las conexiones'.
  
 
== Solución de problemas ==
 
== Solución de problemas ==
  
 
Algunas soluciones para los problemas más comunes.
 
Algunas soluciones para los problemas más comunes.
 +
 +
=== Al usar nm-applet, las conexiones a redes wifi no solicitan contraseña y se desconectan ===
 +
 +
Esto ocurre cuando no hay instalado ningún paquete keyring. Una solución fácil es instalar {{Pkg|gnome-keyring}}.
  
 
=== Problemas con el tráfico de datos a través del canal PPTP ===
 
=== Problemas con el tráfico de datos a través del canal PPTP ===
Line 300: Line 315:
 
Puede suceder que el login a la conexión PPTP se haga de manera correcta, y vea que la interfaz ppp0 tiene una IP VPN exacta, y, sin embargo, no puede hacer ping a ninguna IP remota. Ello es debido a la falta del soporte MPPE (Microsoft Point-to-Point Encryption) que se encuentra en el paquete pppd de Arch. Se recomienda probar primero con el paquete estándar {{pkg|ppp}} de Arch que podría funcionar como es debido.
 
Puede suceder que el login a la conexión PPTP se haga de manera correcta, y vea que la interfaz ppp0 tiene una IP VPN exacta, y, sin embargo, no puede hacer ping a ninguna IP remota. Ello es debido a la falta del soporte MPPE (Microsoft Point-to-Point Encryption) que se encuentra en el paquete pppd de Arch. Se recomienda probar primero con el paquete estándar {{pkg|ppp}} de Arch que podría funcionar como es debido.
  
Para resolver el problema será suficiente instalar {{AUR|ppp-mppe}} desde [[AUR]].
+
Para resolver el problema será suficiente instalar {{AUR|ppp-mppe}}{{Broken package link|{{aur-mirror|ppp-mppe}}}} desde [[AUR]].
  
 
=== Desactivada la gestión de red ===
 
=== Desactivada la gestión de red ===
Line 313: Line 328:
 
[ -f $nmpid ] && rm $nmpid</nowiki>}}
 
[ -f $nmpid ] && rm $nmpid</nowiki>}}
  
=== NetworkManager impide a DHCPCD el uso de resolv.conf.head y resolv.conf.tail ===
+
=== Personalizar resolv.conf ===
  
A veces es problemático agregar elementos estáticos a {{ic|resolv.conf}} cuando dicho archivo se está constantemente reescribiendo por NetworkManager y {{ic|dhcpcd}}. Una solución simple es usar el siguiente script:
+
Véase la página principal: [[resolv.conf]]. También asegúrese de que NetworkManager utiliza {{Pkg|dhcpcd}} y no {{Pkg|dhclient}}. Si desea utilizar {{Pkg|dhclient}}, puede probar el paquete {{AUR|networkmanager-dispatch-resolv}}{{Broken package link|{{aur-mirror|networkmanager-dispatch-resolv}}}} disponible en [[Arch User Repository (Español)|AUR]].
{{bc|<nowiki>
+
#!/bin/bash
+
#
+
# /etc/NetworkManager/dispatcher.d/99-resolv.conf-head_and_tail
+
# Include /etc/resolv.conf.head and /etc/resolv.conf.tail to /etc/resolv.conf
+
#
+
# scripts in the /etc/NetworkManager/dispatcher.d/ directory
+
# are called alphabetically and are passed two parameters:
+
# $1 is the interface name, and $2 is “up” or “down” as the
+
# case may be.
+
 
+
resolvconf='/etc/resolv.conf';
+
cat "$resolvconf"{.head,,.tail} 2>/dev/null > "$resolvconf".tmp
+
mv -f "$resolvconf".tmp "$resolvconf"
+
</nowiki>}}
+
 
+
=== Guardar los cambios en resolv.conf ===
+
 
+
NetworkManager intentará escribir la información del DNS de DHCP en {{ic|/etc/resolv.conf}}, sobreescribiendo el contenido existente. Para evitar este comportamiento, se puede establecer el «bit inmutable» en el archivo:
+
# chattr +i /etc/resolv.conf
+
 
+
Para modificar el archivo en el futuro, retire primero el bit inmutable:
+
# chattr -i /etc/resolv.conf
+
  
 
=== Problemas con DHCP ===
 
=== Problemas con DHCP ===
Line 353: Line 345:
 
en {{ic|/etc/dhcpcd.conf}} (advierta que este archivo es un archivo distinto de {{ic|dhcpd.conf}}). Esto no debería causar problemas a menos que tenga varios servidores DHCP en la red (no habitual); consulte [http://technet.microsoft.com/en-us/library/cc977442.aspx esta página] para obtener más información.
 
en {{ic|/etc/dhcpcd.conf}} (advierta que este archivo es un archivo distinto de {{ic|dhcpd.conf}}). Esto no debería causar problemas a menos que tenga varios servidores DHCP en la red (no habitual); consulte [http://technet.microsoft.com/en-us/library/cc977442.aspx esta página] para obtener más información.
  
=== Problemas con el hostname ===
+
=== Problemas con hostname (''«nombre del equipo»'') ===
Agregue la línea siguiente a /etc/NetworkManager/NetworkManager.conf:
+
 
  dhcp=dhcpcd
+
Dependerá de los plugins utilizados por NetworkManager, los cuales determinarán si el nombre del equipo se envía o no a un router para conectarse. El plugin genérico «keyfil» no envía, por defecto, el nombre del equipo en la configuración.
a continuación, reinicie.
+
 
  systemctl restart NetworkManager
+
==== Opción 1: modificar keyfil en NetworkManager.conf  ====
fuente https://bbs.archlinux.org/viewtopic.php?id=152376
+
 
 +
Para hacer que transmita el nombre del equipo, agregue lo siguiente al archivo:
 +
 
 +
{{hc|/etc/NetworkManager/NetworkManager.conf|2=
 +
[keyfile]
 +
hostname=''su_nombre-del-equipo''
 +
}}
 +
 
 +
Las opciones en {{ic|[keyfile]}} se aplicarán a las conexiones de red en la ruta predeterminada {{ic|/etc/NetworkManager/system-connections}}.
 +
 
 +
==== Opción 2: configurar dhclient para poner el nombre del equipo en el servidor DHCP  ====
 +
 
 +
Otra opción es configurar el cliente DHCP, que NetworkManager iniciará automáticamente, para que envíe el nombre del equipo. NetworkManager utiliza {{pkg|dhclient}} si está instalado y, en su defecto, recurre a {{pkg|dhcpcd}}. Para hacer que ''dhclient'' envíe el nombre del equipo hay que establecer una opción non-default, que permita que  ''dhcpcd'' envíe el nombre del equipo por defecto.
 +
 
 +
*En primer lugar, compruebe qué cliente DHCP está utilizando (''dhclient'' en este ejemplo):
 +
 
 +
{{hc|<nowiki># journalctl -b | egrep "dhclient|dhcpcd"</nowiki>|
 +
...
 +
Nov 17 21:03:20 zenbook dhclient[2949]: Nov 17 21:03:20 zenbook dhclient[2949]: Bound to *:546
 +
Nov 17 21:03:20 zenbook dhclient[2949]: Listening on Socket/wlan0
 +
Nov 17 21:03:20 zenbook dhclient[2949]: Sending on  Socket/wlan0
 +
Nov 17 21:03:20 zenbook dhclient[2949]: XMT: Info-Request on wlan0, interval 1020ms.
 +
Nov 17 21:03:20 zenbook dhclient[2949]: RCV: Reply message on wlan0 from fe80::126f:3fff:fe0c:2dc.
 +
}}
 +
 
 +
*Copie el archivo de configuración de referencia {{ic|/usr/share/dhclient/dhclient.conf.example}} a {{ic|/etc/dhclient.conf}}:
 +
 
 +
  # cp /usr/share/dhclient/dhclient.conf.example /etc/dhclient.conf
 +
 
 +
*Echa un vistazo al archivo -realmente solo nos interesa una línea y que dhclient utiliza por defecto (de hecho, es la opción que utiliza si el archivo no existe)- para conocer otras opciones. La línea importante es esta:
 +
 
 +
{{hc|/etc/dhclient.conf|2=send host-name = pick-first-value(gethostname(), "ISC-dhclient");}}
 +
 
 +
*Fuerce una reactualización de las direcciones IP, y, a continuación, debería ver el nombre de su equipo en el servidor DHCP.  
 +
   
 +
==== Opción 3: configurar NetworkManager para utilizar dhcpcd  ====
 +
 
 +
[[pacman (Español)|Instale]] el paquete {{Pkg|dhcpcd}} y dígale a NetworkManager que lo utilice:
 +
 
 +
{{hc|/etc/NetworkManager/NetworkManager.conf|2=dhcp=dhcpcd}}
 +
 
 +
Después [[systemd#Using units|reinicie]] {{ic|NetworkManager.service}}.
  
 
=== Falta la ruta predeterminada ===
 
=== Falta la ruta predeterminada ===
Line 379: Line 412:
 
  # rfkill event unblock X
 
  # rfkill event unblock X
  
=== Ajustes de la IP estática restaurado a DHCP ===
+
=== Ajustes de la IP estática restaurando a DHCP ===
  
 
Debido a un error aún no solucionado, al cambiar las conexiones por defecto para la IP estática, {{ic|nm-applet}} no guarda correctamente el cambio de configuración y vuelve a DHCP automático.
 
Debido a un error aún no solucionado, al cambiar las conexiones por defecto para la IP estática, {{ic|nm-applet}} no guarda correctamente el cambio de configuración y vuelve a DHCP automático.
Line 417: Line 450:
  
 
== Consejos y trucos ==
 
== Consejos y trucos ==
=== Compartir la conexión a Internet a través de WiFi ===
+
=== Compartir la conexión a Internet a través de Wi-Fi ===
  
Puede compartir su conexión a Internet (por ejemplo: 3G o por cable) con unos pocos clics utilizando nm. Necesitará el apoyo de una tarjeta wifi (Las tarjetas basadas en Atheros AR9xx o, al menos, AR5xx son probablemente la mejor opción)
+
Puede compartir su conexión a Internet (por ejemplo: 3G o por cable) con unos pocos clics utilizando nm. Necesitará el apoyo de una tarjeta wifi (las tarjetas basadas en Atheros AR9xx o, al menos, AR5xx son probablemente la mejor opción).
  
 
==== Ad-hoc ====
 
==== Ad-hoc ====
  
* pacman -S dnsmasq
+
* [[pacman (Español)|Instale]] el paquete {{Pkg|dnsmasq}} para ser capaz de compartir la conexión.
* personalizar dnsmasq.conf puede interferir con nm
+
* Un archivo dnsmasq.conf personalizado puede interferir con nm (aunque esta afirmación no se ha verificado).
* Clic sobre nm-applet -> Crear nueva red inalámbrica
+
* Clicar sobre nm-applet Crear red inalámbrica nueva.
* Siga el asistente (asegúrese de usar una contraseña de 5 o 13 caracteres de extensión, otras longitudes fallarán)
+
* Siga el asistente (asegúrese de usar una contraseña de 5 o 13 caracteres de extensión, otras longitudes fallarán).
 
* Los ajustes se guardarán para la próxima vez que los necesite.
 
* Los ajustes se guardarán para la próxima vez que los necesite.
  
Line 456: Line 489:
 
Cierre la sesión y vuelva a entrar para completar el proceso.
 
Cierre la sesión y vuelva a entrar para completar el proceso.
  
{{Nota|El siguiente método es anticuado y puede no funcionar en todas algunas máquinas.}}
+
{{Nota|El siguiente método es anticuado y puede no funcionar en todos los equipos.}}
 
* En {{ic|/etc/pam.d/gdm}} (o el demonio correspondiente en {{ic|/etc/pam.d}}), añada la siguiente línea al final de los bloques «auth» y «session», para el caso de que no existan:  
 
* En {{ic|/etc/pam.d/gdm}} (o el demonio correspondiente en {{ic|/etc/pam.d}}), añada la siguiente línea al final de los bloques «auth» y «session», para el caso de que no existan:  
 
   auth            optional        pam_gnome_keyring.so
 
   auth            optional        pam_gnome_keyring.so
Line 467: Line 500:
  
 
==== KDE ====
 
==== KDE ====
{{Nota|Consulte http://live.gnome.org/GnomeKeyring/Pam para mayor información, y si se utiliza KDE con KDM, es posible usar {{AUR|pam-keyring-tool}} disponible desde [[AUR]].}}
+
{{Nota|Consulte http://live.gnome.org/GnomeKeyring/Pam para mayor información, y si se utiliza KDE con KDM, es posible usar {{AUR|pam-keyring-tool}}{{Broken package link|{{aur-mirror|pam-keyring-tool}}}} disponible desde [[AUR]].}}
  
 
Coloque un script como el siguiente en {{ic|~/.kde4/Autostart}}:
 
Coloque un script como el siguiente en {{ic|~/.kde4/Autostart}}:
Line 475: Line 508:
  
 
==== SLiM login manager ====
 
==== SLiM login manager ====
Véase [[Slim#SLiM and Gnome Keyring]].
+
Véase [[SLiM#SLiM and Gnome Keyring]].
  
 
=== Ignorar dispositivos específicos ===
 
=== Ignorar dispositivos específicos ===
Line 512: Line 545:
 
==== Usar servidores OpenDNS ====
 
==== Usar servidores OpenDNS ====
  
Cree el archivo {{ic|/etc/resolv.conf.opendns}} con los nombres de servidores:
+
Cree el archivo {{ic|/etc/resolv.conf.opendns}} con los nombres de los servidores:
  
 
  nameserver 208.67.222.222
 
  nameserver 208.67.222.222
 
  nameserver 208.67.220.220
 
  nameserver 208.67.220.220
  
Para sustituir el servidor DHCP por los servidores OpenDNS:
+
o utilizar los servidores DNS de Google, porque la gente ha estado recibiendo anuncios por los servidores de OpenDNS últimamente:
 +
 
 +
nameserver 8.8.8.8
 +
nameserver 8.8.4.4
 +
 
 +
Y, de este modo, tiene el dispatcher que reemplaza los servidores DHCP descubiertos con los de OpenDNS:
  
 
{{hc|/etc/NetworkManager/dispatcher.d/dns-servers-opendns|<nowiki>
 
{{hc|/etc/NetworkManager/dispatcher.d/dns-servers-opendns|<nowiki>
Line 525: Line 563:
 
cp -f /etc/resolv.conf.opendns /etc/resolv.conf</nowiki>}}
 
cp -f /etc/resolv.conf.opendns /etc/resolv.conf</nowiki>}}
  
Haga ejecutable el script:
+
Haga el script ejecutable:
  
 
  # chmod +x /etc/NetworkManager/dispatcher.d/dns-servers-opendns
 
  # chmod +x /etc/NetworkManager/dispatcher.d/dns-servers-opendns
 +
 +
=== Activar el almacenamiento en caché de DNS ===
 +
 +
Las peticiones de DNS se puede acelerar si almacenamos en caché las solicitudes anteriores a nivel local para su posterior consulta. NetworkManager tiene un plugin para activar la caché DNS utilizando dnsmasq, pero no está activado en la configuración predeterminada. Es, sin embargo, fácil de activar siguiente las instrucciones de abajo.
 +
 +
Comience [[pacman (Español)|instalando]] {{Pkg|dnsmasq}}.  Después, edite el archivo {{ic|/etc/NetworkManager/NetworkManager.conf}} y, seguidamente, añada la línea siguiente debajo de la sección {{ic|[main]}}:
 +
 +
dns=dnsmasq
 +
 +
Ahora solo queda reiniciar NetworkManager o reiniciar el sistema.  NetworkManager  iniciará automáticamente dnsmasq y añadirá 127.0.0.1 al archivo {{ic|/etc/resolv.conf}}. Los servidores DNS reales pueden ser encontrados en {{ic|/var/run/NetworkManager/dnsmasq.conf}}.  Puede verificar que dnsmasq está siendo utilizado buscando DNS dos veces con dig y comprobando el servidor y los tiempos de consulta.

Latest revision as of 20:13, 24 April 2016

NetworkManager es un programa que proporciona a los sistemas la detección y configuración automática para conectarse a la red. Las funcionalidades de NetworkManager son útiles tanto para redes inalámbricas como por cable. Para las redes inalámbricas, NetworkManager prefiere las redes conocidas y tiene la capacidad de cambiar a la red más confiable. NetworkManager permite que las aplicaciones puedan cambiar de modalidad en línea y fuera de línea. NetworkManager da preferencia a las conexiones por cable antes que a las inalámbricas, tiene soporte para conexiones por módem y para ciertos tipos de VPN. NetworkManager fue originariamente desarrollado por Red Hat y ahora es respaldado por el proyecto GNOME.

Contents

Intalación base

NetworkManager se puede instalar con el paquete networkmanager, disponible en los repositorios oficiales.

Soporte VPN

Network Manager tiene soporte para las redes VPN mediante un sistema basado en plug-ins. Si necesita asistencia técnica VPN a través del gestor de la red hay que instalar uno de los siguientes paquetes de los repositorios oficiales:

Interfaces gráficas

Para configurar y acceder fácilmente a NetworkManager la mayoría de los usuarios desearán instalar un applet. Esta GUI normalmente se ubica en la bandeja del sistema (o área de notificación) y permite la selección de red y la configuración de NetworkManager. Existen distintos tipos de applets para los diferentes tipos de entornos de escritorio.

GNOME

El applet de GNOME network-manager-applet (anteriormente gnome-network-manager) es lo suficientemente ligero y funciona en todos los entornos.

Si desea guardar los datos de autentificación (Wireless/DSL) y activar la configuración global de las conexiones, es decir, «disponible para todos los usuarios» instale y configure GNOME Keyring.

KDE

El frontend de Plasma de Network Manager es un widget disponible en los repositorios oficiales como el paquete kdeplasma-applets-plasma-nm[broken link: archived in aur-mirror]. El anterior frontend de Plasma KNetworkManager también está disponible como paquete kdeplasma-applets-networkmanagementAUR desde aur.

Si tiene instalado tanto el widget Plasma como nm-applet y no desea iniciar nm-applet cuando usa KDE, añada la siguiente línea a /etc/xdg/autostart/nm-applet.desktop:

NotShowIn=KDE

Véase Userbase page para obtener más información.

XFCE

El paquete network-manager-applet no tendrá ningún problema en XFCE, pero para ver las notificaciones, incluidos los mensajes de error, necesitará nm-applet, una específica implementación de Freedesktop (consulte Proyecto Galapago) para mostrar las notificaciones. Para activar las notificaciones, instale xfce4-notifyd, un paquete que proporciona una implementación de la especificación.

Sin un demonio de notificación, nm-applet generará los siguientes errores en stdout/stderr:

(nm-applet:24209): libnotify-WARNING **: Failed to connect to proxy
** (nm-applet:24209): WARNING **: get_all_cb: couldn't retrieve
system settings properties: (25) Launch helper exited with unknown
return code 1.
** (nm-applet:24209): WARNING **: fetch_connections_done: error
fetching connections: (25) Launch helper exited with unknown return
code 1.
** (nm-applet:24209): WARNING **: Failed to register as an agent:
(25) Launch helper exited with unknown return code 1

nm-applet funciona normalmente, pero sin notificaciones.

Si nm-applet no le pide la contraseña cuando se conecta a las nuevas redes wifi, e inmediatamente después se desconecta, es probable que tenga que instalar gnome-keyring.

Openbox

Para que NetworkManager funcione correctamente en Openbox, el applet de GNOME requiere el demonio de notificación xfce4-notifyd, por la misma razón que en XFCE, y el paquete gnome-icon-theme para poder mostrar el applet en la bandeja del sistema.

Si desea guardar los datos de autentificación (Wireless/DSL) instale y configure gnome-keyring.

nm-applet instala el archivo autostart en /etc/xdg/autostart/nm-applet.desktop. Si tiene problemas con él (por ejemplo, nm-applet se inicia dos veces o no se inicia en absoluto), consulte [[Openbox#autostart] o [1] para conocer la solución.

Otros escritorios y gestores de ventanas

En todos los demás casos, se recomienda usar el applet de GNOME. Deberá asegurarse que tiene instalado el paquete gnome-icon-theme para poder ver el applet.

Para guardar información confidencial sobre las conexiones instale y configure gnome-keyring.

Para ejecutar nm-applet en un entorno sin una bandeja de sistema, puede utilizar trayer o stalonetray. Por ejemplo, puede agregar un script como este a su propia ruta:

nmgui
 #!/bin/sh
 nm-applet    > /dev/null 2>/dev/null &
 stalonetray  > /dev/null 2>/dev/null
 killall nm-applet

Al cerrar la ventana de stalonetray, cierra nm-applet también, así que no consume memoria extra una vez que haya terminado con la configuración de red.

Desde la línea de órdenes

La paquete networkmanager contiene nmcli desde la versión 0.8.1.

Configuración

NetworkManager requiere algunos pasos adicionales para ser capaz de ejecutarse correctamente.

Antes de comenzar, compruebe que /etc/hosts está configurado correctamente. Si ya ha intentado conectarse antes de realizar este paso, NetworkManager puede haberlo modificado. He aquí un ejemplo de línea hostname en /etc/hosts:

/etc/hosts
127.0.0.1 localhost
::1       localhost

En caso de tener nss-myhostname apagado, la línea sería:

/etc/hosts
127.0.0.1 my-laptop localhost
::1       my-laptop localhost
Nota: Puede ser una buena idea usar systemctl --type=service para asegurarse que ningún otro servicio está en ejecución para configurar la red. La existencia de varios servicios de gestión de redes entrarán en conflicto.

Activar NetworkManager

Una vez que el demonio NetworkManager se ha iniciado, se conectará automáticamente a cualesquiera «conexiones del sistema» disponibles que estén configuradas. Las «conexiones del usuario» o las conexiones no configuradas necesitarán nmcli o un applet para la configuración y la conexión.

Puede activar NetworkManager para que se inicie en el arranque con la siguiente orden:

# systemctl enable NetworkManager

Puede iniciar el demonio NetworkManager inmediatamente con la siguiente orden:

# systemctl start NetworkManager

Evitar advertencias

NetworkManager imprimirá, probablemente sin sentido, advertencias (Bug#34971) para el registro del sistema, cuando NetworkManager-dispatcher.service y ModemManager.service no estén activados. Para mantener el registro limpio y suprimir estos mensajes, active ambos servicios, incluso si no son requeridos por el entorno:

# systemctl enable NetworkManager-dispatcher.service && systemctl enable ModemManager.service
# systemctl start NetworkManager-dispatcher.service && systemctl start ModemManager.service

Activar NetworkManager Wait Online

Si tiene servicios que pueden fallar si se inician antes de que se abra la red, tiene que usar NetworkManager-wait-online.service además del servicio de NetworkManager. Esto, sin embargo, casi nunca es necesario, ya que la mayoría de los demonios de red se ponen en marcha correctamente, incluso si la red no se ha configurado todavía.

Puede activar NetworkManager Wait Online en el arranque con la siguiente orden:

# systemctl enable NetworkManager-wait-online

En algunos casos, el servicio puede que no se inicie con éxito en el arranque:

 NetworkManager-wait-online.service: main process exited, code=exited, status=1/FAILURE
 Failed to start Network Manager Wait Online
 Unit NetworkManger-wait-online.service entered failed state
 Starting Network.
 Reached target Network.

Esto se debe a la configuración del tiempo de espera en /usr/lib/systemd/system/NetworkManager-wait-online.service que es corto. Cambie el tiempo de espera predeterminado de 30 a un valor más alto.

Configurar permisos PolicyKit

Véase General troubleshooting#Session permissions para la creación de una sesión de trabajo.

Con una sesión de trabajo, tiene varias opciones para la concesión de los privilegios necesarios para NetworkManager:

Opción 1. Ejecute un agente de autenticación PolicyKit cuando se conecte, como /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1 (es parte del paquete polkit-gnome). Se le pedirá la contraseña cada vez que agregue o quite una conexión de red.

Opción 2. Añada su usuario al grupo wheel. No tendrá que introducir su contraseña, pero necesitará garantizar los permisos particulares a los usuarios tales como la capacidad de usar sudo sin introducir la contraseña de root.

Opción 3. Añádase al grupo network y cree el siguiente archivo

/etc/polkit-1/rules.d/50-org.freedesktop.NetworkManager.rules
polkit.addRule(function(action, subject) {
  if (action.id.indexOf("org.freedesktop.NetworkManager.") == 0 && subject.isInGroup("network")) {
    return polkit.Result.YES;
  }
});

Todos los usuarios del grupo network podrán añadir y eliminar redes sin contraseña. Esto no funcionará bajo systemd si no se tiene una sesión activa con systemd-logind.

Servicios de red con NetworkManager dispatcher

Hay algunos servicios de red que no se desean ejecutar hasta que NetworkManager crea la interfaz. Algunos ejemplos son OpenNTPD y diversos tipos de montajes de sistemas de archivos de red (por ejemplo, netfs). NetworkManager tiene la capacidad de iniciar estos servicios cuando se conecta a una red y detenerlos cuando se desconecta. Para utilizar esta característica necesita iniciar/activar el servicio NetworkManager-dispatcher:

Una vez que la función está activa, se pueden añadir los scripts apropiados a la carpeta /etc/NetworkManager/dispatcher.d. Estos scripts necesitan los permisos de ejecución del usuario. Por seguridad, es una buena práctica que sean propiedad de root:root y con permisos de escritura únicamente por el propietario.

Los scripts se ejecutan en orden alfabético durante la fase de conexión, y en orden alfabético inverso durante la fase de desconexión. Reciben dos argumentos: el nombre de la interfaz (por ejemplo, eth0) y el estado (up o down para las interfaces y vpn-up o vpn-down para las conexiones vpn). A fin de garantizar el orden en que vayan surgiendo, es común el uso de caracteres numéricos puestos como prefijos delante del nombre del script (por ejemplo, 10_portmap o 30_netfs (que asegura que el mapeador de puertos se levante antes de que se intente montar NFS).

Advertencia:
  • Por razones de seguridad, debe desactivar el acceso de escritura para el grupo y otro. Por ejemplo, utilice el filtro 755. En otro caso, puede ser denegada la ejecución del script con el mensaje de error: «nm-dispatcher.action: Script could not be executed: writable by group or other, or set-UID» en /var/log/messages.log.
  • Si se conecta a redes extranjeras o públicas, debe estar al tanto de cuáles son los servicios que están empezando y qué servidores se espera que estén disponibles para ellos al conectarse. Podría crear un agujero de seguridad al iniciar los servicios equivocados mientras está conectado a una red pública.

Evitar el tiempo de espera de tres segundos

Si lo anterior funciona, entonces esta sección no es relevante. Sin embargo, existe un problema general en relación con la ejecución del script dispatcher que se demora más de tres segundos antes de ser ejecutado. NetworkManager usa un tiempo de espera interna de 3 segundos (véase Bugtracker para más información) y automáticamente termina los scripts que tardan más de 3 segundos al acabar. En estos casos, el archivo de servicio dispatcher, ubicado en /usr/lib/systemd/system/NetworkManager-dispatcher.service, tiene que ser modificado para permanecer activo después de arrancar. Cree el archivo de servicio /etc/systemd/system/NetworkManager-dispatcher.service con el siguiente contenido:

.include /usr/lib/systemd/system/NetworkManager-dispatcher.service
[Service]
RemainAfterExit=yes

A continuación, active el script NetworkManager-dispatcher modificado.

Iniciar OpenNTPD

El siguiente ejemplo de script inicia el demonio OpenNTPD cuando una interfaz se conecta. Guarde el archivo como /etc/NetworkManager/dispatcher.d/20_openntpd y hágalo ejecutable.

#!/bin/sh
interface=$1 status=$2
case $status in
  up)
    systemctl start openntpd
    ;;
  down)
    if ! nm-tool | awk '/State:/{print $2}' | grep -qs ^connected; then
      systemctl stop openntpd
    fi
    ;;
esac
}}

Montar carpeta remota con sshfs

Dado que el script viene ejecutado en un entorno muy restrictivo, es necesario exportar la variable SSH_AUTH_SOCK para poder conectarse al propio agente SSH. Hay diferentes maneras para lograr esto, vea este enlace para más información. El siguiente ejemplo funciona con gnome-keyring, y le pedirá la contraseña si no está desbloqueada ya. En caso de que NetworkManager se conecte automáticamente al iniciar sesión, es probable gnome-keyring aún no se haya iniciado, de modo que la exportación fallará (de ahí que entre en modo de espera). Conocer la UUID necesaria para comprobar que coincide se puede encontrar con la orden nmcli con status o nmcli con list.

#!/bin/sh
USER='username'
REMOTE='user@host:/remote/path'
LOCAL='/local/path'

interface=$1 status=$2
if [ "$CONNECTION_UUID" = "uuid" ]; then
  case $status in
    up)
      export SSH_AUTH_SOCK=$(find /tmp -maxdepth 1 -type s -user "$USER" -name 'ssh')
      su "$USER" -c "sshfs $REMOTE $LOCAL"
      ;;
    down)
      fusermount -u "$LOCAL"
      ;;
  esac
fi

Usar dispatcher para conectarse a VPN despues de establecer una conexión de red

En este ejemplo, conectaremos automáticamente a una conexión VPN, previamente definida en NetworkManager, después de conectarse a una red Wi-Fi específica. Lo primero que hay que hacer es crear el script dispatcher que define el comportamiento a realizar después de conectarse a la red.

1. Cree el script dispatcher:
/etc/NetworkManager/dispatcher.d/vpn-up
#!/bin/sh
VPN_NAME="name of VPN connection defined in NetworkManager"
ESSID="wifi network ESSID (not connection name)"

interface=$1 status=$2
case $status in
  up|vpn-down)
    if iwgetid | grep -qs ":\"$ESSID\""; then
      nmcli con up id "$VPN_NAME"
    fi
    ;;
  down)
    if iwgetid | grep -qs ":\"$ESSID\""; then
      if nmcli con status id "$VPN_NAME" | grep -qs activated; then
        nmcli con down id "$VPN_NAME"
      fi
    fi
    ;;
esac

Recuerde que debe hacerlo ejecutable con chmod +x y establecer la conexión VPN a disposición de todos los usuarios.

Intentando conectar usando esta configuración, se producirá un error y NetworkManager mostrará un mensaje de 'no valid VPN secrets', debido al método para guardar secretos de VPN que nos lleva al paso 2:

2. Edite el archivo de configuración de la conexión VPN para señalar a NetworkManager como el almacen de los parámetros confidenciales propios en vez incluirlo en el depósito de claves que será inaccesible para el usuario root: abra /etc/NetworkManager/system-connections/<name of your VPN connection> y modifique password-flags y secret-flags de 1 a 0.

Otra forma es poner directamente la contraseña en el archivo de configuración añadiendo la sección vpn-secrets:

 [vpn]
 ....
 password-flags=0
 
 [vpn-secrets]
 password=your_password
Nota: Ahora es necesario volver a editar la configuración de la conexión de NetworkManager y volver a introducir las contraseñas/secretos de VPN.

Configuración del proxy

NetworkManager no gestona directamente la configuración del proxy, pero si está usando GNOME, puede usar proxydriver, el cual se encarga de configurar el proxy utilizando la información de NetworkManager. Puede encontrar el paquete proxydriverAUR en AUR.

Para que proxydriver pueda cambiar la configuración del proxy, tendrá que ejecutar la siguiente orden, como parte del proceso de inicio de GNOME (Sistema -> Preferencias -> Aplicaciones de inicio):

xhost +si:localuser:your_username

Consulte: Proxy settings

Comprobación

Los applets de NetworkManager están diseñados para cargarse al iniciar sesión, por lo que no debería ser objeto de configuración adicional para la mayoría de los casos. Si ya ha desactivado la configuración de red existente y ha desconectado la red, ahora puede comprobar si NetworkManager funciona. El primer paso es iniciar el demonio networkmanager.

Algunos applets proveen un archivo .desktop para que el applet de NetworkManager se puede cargar a través del menú de la aplicación. Si no lo hace, tendrá que descubrir la orden para iniciarlo o reiniciar sesión otra vez para iniciar el applet. Una vez que el applet se inicia, es probable que comience a interrogar y ordenar conexiones de red, para después autoconfigurarse con un servidor DHCP.

Para iniciar el applet de GNOME en los gestores de ventanas no compatibles con xdg como Awesome:

nm-applet --sm-disable &

Para las direcciones IP estáticas, tendrá que configurar NetworkManager para que las identifique. El proceso suele implicar pulsar con el botón secundario del ratón en el applet y seleccionar un menú similar a 'Editar las conexiones'.

Solución de problemas

Algunas soluciones para los problemas más comunes.

Al usar nm-applet, las conexiones a redes wifi no solicitan contraseña y se desconectan

Esto ocurre cuando no hay instalado ningún paquete keyring. Una solución fácil es instalar gnome-keyring.

Problemas con el tráfico de datos a través del canal PPTP

Puede suceder que el login a la conexión PPTP se haga de manera correcta, y vea que la interfaz ppp0 tiene una IP VPN exacta, y, sin embargo, no puede hacer ping a ninguna IP remota. Ello es debido a la falta del soporte MPPE (Microsoft Point-to-Point Encryption) que se encuentra en el paquete pppd de Arch. Se recomienda probar primero con el paquete estándar ppp de Arch que podría funcionar como es debido.

Para resolver el problema será suficiente instalar ppp-mppeAUR[broken link: archived in aur-mirror] desde AUR.

Desactivada la gestión de red

A veces, cuando NetworkManager se apaga, el archivo del PID (estado) no se retira y recibirá el mensaje de «Network management disabled». Si esto sucede, tendrá que quitarlo manualmente:

# rm /var/lib/NetworkManager/NetworkManager.state

Si esto sucede en el arranque, se puede añadir una acción al archivo /etc/rc.local para que lo retire en el arranque:

nmpid=/var/lib/NetworkManager/NetworkManager.state
[ -f $nmpid ] && rm $nmpid

Personalizar resolv.conf

Véase la página principal: resolv.conf. También asegúrese de que NetworkManager utiliza dhcpcd y no dhclient. Si desea utilizar dhclient, puede probar el paquete networkmanager-dispatch-resolvAUR[broken link: archived in aur-mirror] disponible en AUR.

Problemas con DHCP

Si tiene problemas para obtener una dirección IP mediante DHCP, intenta agregar lo que sigue al archivo /etc/dhclient:

 interface "eth0" {
   send dhcp-client-identifier 01:aa:bb:cc:dd:ee:ff;
 }

Donde aa:bb:cc:dd:ee:ff es la dirección MAC del NIC (la tarjeta de red). La dirección MAC se puede encontrar utilizando la orden ip link show eth0 proporcionada por el paquete iproute2.

Con algunos routers, resultará imposible conectarse correctamente, a menos que comente la línea:

require dhcp_server_identifier

en /etc/dhcpcd.conf (advierta que este archivo es un archivo distinto de dhcpd.conf). Esto no debería causar problemas a menos que tenga varios servidores DHCP en la red (no habitual); consulte esta página para obtener más información.

Problemas con hostname («nombre del equipo»)

Dependerá de los plugins utilizados por NetworkManager, los cuales determinarán si el nombre del equipo se envía o no a un router para conectarse. El plugin genérico «keyfil» no envía, por defecto, el nombre del equipo en la configuración.

Opción 1: modificar keyfil en NetworkManager.conf

Para hacer que transmita el nombre del equipo, agregue lo siguiente al archivo:

/etc/NetworkManager/NetworkManager.conf
[keyfile]
hostname=su_nombre-del-equipo

Las opciones en [keyfile] se aplicarán a las conexiones de red en la ruta predeterminada /etc/NetworkManager/system-connections.

Opción 2: configurar dhclient para poner el nombre del equipo en el servidor DHCP

Otra opción es configurar el cliente DHCP, que NetworkManager iniciará automáticamente, para que envíe el nombre del equipo. NetworkManager utiliza dhclient si está instalado y, en su defecto, recurre a dhcpcd. Para hacer que dhclient envíe el nombre del equipo hay que establecer una opción non-default, que permita que dhcpcd envíe el nombre del equipo por defecto.

  • En primer lugar, compruebe qué cliente DHCP está utilizando (dhclient en este ejemplo):
# journalctl -b | egrep "dhclient|dhcpcd"
...
Nov 17 21:03:20 zenbook dhclient[2949]: Nov 17 21:03:20 zenbook dhclient[2949]: Bound to *:546
Nov 17 21:03:20 zenbook dhclient[2949]: Listening on Socket/wlan0
Nov 17 21:03:20 zenbook dhclient[2949]: Sending on   Socket/wlan0
Nov 17 21:03:20 zenbook dhclient[2949]: XMT: Info-Request on wlan0, interval 1020ms.
Nov 17 21:03:20 zenbook dhclient[2949]: RCV: Reply message on wlan0 from fe80::126f:3fff:fe0c:2dc.
  • Copie el archivo de configuración de referencia /usr/share/dhclient/dhclient.conf.example a /etc/dhclient.conf:
# cp /usr/share/dhclient/dhclient.conf.example /etc/dhclient.conf
  • Echa un vistazo al archivo -realmente solo nos interesa una línea y que dhclient utiliza por defecto (de hecho, es la opción que utiliza si el archivo no existe)- para conocer otras opciones. La línea importante es esta:
/etc/dhclient.conf
send host-name = pick-first-value(gethostname(), "ISC-dhclient");
  • Fuerce una reactualización de las direcciones IP, y, a continuación, debería ver el nombre de su equipo en el servidor DHCP.

Opción 3: configurar NetworkManager para utilizar dhcpcd

Instale el paquete dhcpcd y dígale a NetworkManager que lo utilice:

/etc/NetworkManager/NetworkManager.conf
dhcp=dhcpcd

Después reinicie NetworkManager.service.

Falta la ruta predeterminada

Si con un sistema de KDE4, no se creó ninguna ruta por defecto a la hora de establecer conexiones inalámbricas con NetworkManager, en general se puede resolver modificando la configuración de la ruta de la conexión inalámbrica para eliminar la selección por defecto «Use only for resources on this connection».

Modem 3G no detectado

Si NetworkManager (desde v0.7.999) no detecta el módem 3G, pero todavía se puede conectar usando wvdial, pruebe a instalar el paquete modemmanager y reinicie el demonio NetworkManager con networkmanager rc.d restart. También puede ser necesario volver a conectar o reiniciar el módem. Esta utilidad proporciona soporte para el hardware no incluido por defecto en la base de datos de NetworkManager.

Desconexión de WLAN en portátiles

A veces, NetworkManager no funciona cuando se deshabilita el adaptador WiFi con el interruptor del portátil y se trata de activar de nuevo después. Esto suele ser debido a un problema con rfkill. Instale rfkill de los repositorios oficiales y use la siguiente orden:

$ watch -n1 rfkill list all

para comprobar si el controlador informa rfkill sobre el estado del adaptador inalámbrico. Si un identificador permanece bloqueado después de conectar el adaptador se puede tratar de desbloquearlo de forma manual con la orden siguiente (donde X es el número del identificador proporcionado por la salida de la orden anterior):

# rfkill event unblock X

Ajustes de la IP estática restaurando a DHCP

Debido a un error aún no solucionado, al cambiar las conexiones por defecto para la IP estática, nm-applet no guarda correctamente el cambio de configuración y vuelve a DHCP automático.

Para solucionar este problema hay que editar la conexión por defecto (por ejemplo, «Auto eth0») en nm-applet, cambiar el nombre de la conexión (por ejemplo, «mi eth0»), desactivar la casilla «Disponible para todos los usuarios», modificar la configuración de IP estáticas como se desee, y pulsar en Aplicar. Esto guardará la nueva conexión con el nombre dado.

A continuación, tendrá que asegurarse que la conexión por defecto no se conecte automáticamente. Para ello, ejecute nm-connection-editor (no como root). En el editor de conexión, modifique la conexión por defecto (por ejemplo, «Auto eth0») y desmarque la opción «Conectar automáticamente». Pulse Aplicar y cierre el editor de conexión.

No se pueden editar las conexiones como usuario normal

Véase #Set_up_PolicyKit_permissions.

Eliminar una red oculta

Obviamente, una red oculta no se muestra en la lista de selección de la GUI Wireless, por lo que no puede ser eliminada desde la interfaz gráfica de usuario. Puede eliminarla usando la siguiente orden:

# rm /etc/NetworkManager/system-connections/[SSID]

Dicha orden funciona para cualquier otra conexión.

VPN no funciona en Gnome

Al configurar openconnect o conexiones vpnc en NetworkManager mientras usa Gnome, a veces puede no ver el cuadro de diálogo emergente, apareciendo el siguiente error en /var/log/errors.log:

localhost NetworkManager[399]: <error> [1361719690.10506] [nm-vpn-connection.c:1405] get_secrets_cb(): Failed to request VPN secrets #3: (6) No agents were available for this request.

Esto es causado por el Applet NM de Gnome esperando scripts de dialogos para pasar a /usr/lib/gnome-shell, cuando los paquetes de NetworkManager se colocan en /usr/lib/networkmanager. Como un arreglo «temporal» (este error ha sido tratado por un tiempo), hagan el enlace siguiente(s):

# Para OpenConnect
ln -s /usr/lib/networkmanager/nm-openconnect-auth-dialog /usr/lib/gnome-shell/ 
# Para VPNC (es decir, Cisco VPN)
ln -s /usr/lib/networkmanager/nm-vpnc-auth-dialog /usr/lib/gnome-shell/

Esto puede ser necesario hacerlo para cualquier otro plugin VPN NM también, pero estos son los dos más comunes.

Consejos y trucos

Compartir la conexión a Internet a través de Wi-Fi

Puede compartir su conexión a Internet (por ejemplo: 3G o por cable) con unos pocos clics utilizando nm. Necesitará el apoyo de una tarjeta wifi (las tarjetas basadas en Atheros AR9xx o, al menos, AR5xx son probablemente la mejor opción).

Ad-hoc

  • Instale el paquete dnsmasq para ser capaz de compartir la conexión.
  • Un archivo dnsmasq.conf personalizado puede interferir con nm (aunque esta afirmación no se ha verificado).
  • Clicar sobre nm-applet → Crear red inalámbrica nueva.
  • Siga el asistente (asegúrese de usar una contraseña de 5 o 13 caracteres de extensión, otras longitudes fallarán).
  • Los ajustes se guardarán para la próxima vez que los necesite.

Real AP

El soporte para la modalidad de infraestructura (necesaria por los teléfonos Andoid, que no son compatibles con ad-hoc intencionadamente) no está apoyado actualmente por NetworkManager, pero está en desarrollo activo ...

Véase: http://fedoraproject.org/wiki/Features/RealHotspot

Comprobar la activación de la red en el interior de un proceso cron o script

Algunos tareas de cron requieren de la red para poder funcionar. Es posible que desee evitar la ejecución de estos trabajos cuando la red no funciona. Para ello, agregue un if de prueba para las consultas de redes con nm-tool de NetworkManager y compruebe el estado de las redes. La prueba tiene éxito si se muestra aquí cualquier interfaz activa, y fallida si no lo están. Esto es conveniente para los ordenadores portátiles que pueden tener conexión cableada, conexión inalámbrica, o podrían estar fuera de red.

if [ `nm-tool|grep State|cut -f2 -d' '` == "connected" ]; then
       #Whatever you want to do if the network is online
else
       #Whatever you want to do if the network is offline - note, this and the else above are optional
fi

Es útil para un script cron.hourly que ejecuta fpupdate para la actualización del escáner de firmas del antivirus F-Prot, por ejemplo. Otra forma de ser útil, con una pequeña modificación, podría ser diferenciar entre redes que utilizan diferentes partes de la salida nm-tool, por ejemplo, en cuanto que la red inalámbrica activa se indica con un asterisco, es posible, con la utilización de grep, cambiar el nombre de la red orientando la busqueda de grep a la red del asterisco.

Desbloquear automáticamente keyring después del login

GNOME

  1. Haga clic con el botón derecho en el icono nm-applet del panel y seleccione «Configuración de la red» y abra la pestaña «Inalámbrica».
  2. Seleccione la conexión que desee y haga clic en el botón «Configuración».
  3. Marque las casillas «Conectar automáticamente» y «Disponible para todos los usuarios».

Cierre la sesión y vuelva a entrar para completar el proceso.

Nota: El siguiente método es anticuado y puede no funcionar en todos los equipos.
  • En /etc/pam.d/gdm (o el demonio correspondiente en /etc/pam.d), añada la siguiente línea al final de los bloques «auth» y «session», para el caso de que no existan:
 auth            optional        pam_gnome_keyring.so
 session         optional        pam_gnome_keyring.so  auto_start
  • En /etc/pam.d/passwd, use la siguiente línea para el bloque del «password»:
 password    optional    pam_gnome_keyring.so
La próxima vez que inicie sesión, debería preguntarle si desea que la contraseña se desbloquee automáticamente al iniciar sesión.

KDE

Nota: Consulte http://live.gnome.org/GnomeKeyring/Pam para mayor información, y si se utiliza KDE con KDM, es posible usar pam-keyring-toolAUR[broken link: archived in aur-mirror] disponible desde AUR.

Coloque un script como el siguiente en ~/.kde4/Autostart:

 #!/bin/sh
 echo PASSWORD | /usr/bin/pam-keyring-tool --unlock --keyring=default -s

Un script similar debe funcionar también con Openbox, LXDE, etc.

SLiM login manager

Véase SLiM#SLiM and Gnome Keyring.

Ignorar dispositivos específicos

A veces se puede desear que NetworkManager ignore algunos dispositivos específicos y no trate de configurar las direcciones y las rutas para ellos.

Puede ignorar los dispositivos por la dirección MAC mediante la siguiente configuración en /etc/NetworkManager/NetworkManager.conf :

[keyfile]
unmanaged-devices=mac:00:22:68:1c:59:b1;mac:00:1E:65:30:D1:C4

Después de poner esto reinicie NetworkManager, y con ello debería ser capaz de configurar las interfaces de NetworkManager sin alterar lo que ha establecido.

Conectar más rápido

Deshabilitar IPv6

Las conexiones lentas o reconexiones a la red pueden ser debidas a las consultas superfluas de NetworkManager a las IPv6. Si no hay soporte para IPv6 en la red local, la conexión a una red puede tardar más de lo normal, mientras que NetworkManager intenta establecer una conexión IPv6 con resultado final de «time out». La solución es desactivar IPv6 en NetworkManager lo que hará que la conexión de red sea más rápida. Esto tiene que hacerse una sola vez para cada red a la cual se conecte.

  • Haga clic en el icono del estado de la red.
  • Haga clic en «Configuración de la red».
  • Vaya a la pestaña «Cableada» o «Inalámbrica», según corresponda.
  • Seleccione el nombre de la red.
  • Haga clic en «Configuración».
  • Vaya a «Ajustes de IPv6».
  • En el botón desplegable «Método», elija la opción «Ignorar».
  • Haga clic en «Guardar».

Acelerar DHCP mediante la desactivación de ARP sondeando DHCPCD

dhcpcd contiene una implementación de una recomendación de la norma DHCP (RFC2131 sección 2.2) para comprobar a través de ARP si la dirección IP asignada realmente no está en uso. Puede parecer innecesario en una red doméstica, pero puede ahorrar alrededor de 5 segundos en cada conexión añadiendo la siguiente línea a /etc/dhcpcd.conf:

noarp

Esto equivale a lanzar dhcpcd con el flag --noarp, lo cual desactiva el sondeo a ARP, acelerando las conexiones con DHCP.

Usar servidores OpenDNS

Cree el archivo /etc/resolv.conf.opendns con los nombres de los servidores:

nameserver 208.67.222.222
nameserver 208.67.220.220

o utilizar los servidores DNS de Google, porque la gente ha estado recibiendo anuncios por los servidores de OpenDNS últimamente:

nameserver 8.8.8.8
nameserver 8.8.4.4

Y, de este modo, tiene el dispatcher que reemplaza los servidores DHCP descubiertos con los de OpenDNS:

/etc/NetworkManager/dispatcher.d/dns-servers-opendns
#!/bin/bash
# Use OpenDNS servers over DHCP discovered servers

cp -f /etc/resolv.conf.opendns /etc/resolv.conf

Haga el script ejecutable:

# chmod +x /etc/NetworkManager/dispatcher.d/dns-servers-opendns

Activar el almacenamiento en caché de DNS

Las peticiones de DNS se puede acelerar si almacenamos en caché las solicitudes anteriores a nivel local para su posterior consulta. NetworkManager tiene un plugin para activar la caché DNS utilizando dnsmasq, pero no está activado en la configuración predeterminada. Es, sin embargo, fácil de activar siguiente las instrucciones de abajo.

Comience instalando dnsmasq. Después, edite el archivo /etc/NetworkManager/NetworkManager.conf y, seguidamente, añada la línea siguiente debajo de la sección [main]:

dns=dnsmasq

Ahora solo queda reiniciar NetworkManager o reiniciar el sistema. NetworkManager iniciará automáticamente dnsmasq y añadirá 127.0.0.1 al archivo /etc/resolv.conf. Los servidores DNS reales pueden ser encontrados en /var/run/NetworkManager/dnsmasq.conf. Puede verificar que dnsmasq está siendo utilizado buscando DNS dos veces con dig y comprobando el servidor y los tiempos de consulta.