web-dev-qa-db-fra.com

La connexion DHCP ne définit pas automatiquement la passerelle par défaut

Je viens de faire une nouvelle installation d'Ubuntu 16.04 (Xenial). J'ai configuré /etc/network/interfaces pour afficher l'interface wlan automatiquement à l'aide de DHCP:

auto lo
iface lo inet loopback

auto wlp2s0
iface wlp2s0 inet dhcp
  wpa-ssid SSID
  wpa-psk "password"

Cela fonctionne: l’IP est configuré normalement, mais la passerelle par défaut n’est pas définie. Après le démarrage, je dois toujours exécuter route add default gw 192.168.1.1 manuellement. Une idée de ce qui peut éventuellement être faux? Je pourrais jurer que cette configuration fonctionnait très bien sur les anciennes versions ...

3
Jon Smark

Je rencontre le même problème sur Ubuntu Server 16.04. Après le dépannage, mon problème provient de mon serveur DHCP, qui fournit également une route statique sans classe (option DHCP 121, rfc3442-classless-static-routes dans DHCP ISC), à partir d'un serveur Microsoft DHCP (Windows Server 2008 R2).

Si vous examinez /sbin/dhclient-script, si au moins un itinéraire statique sans classe est fourni au client DHCP, il ne tient pas compte du paramètre du routeur, donc aucun itinéraire défini par défaut.

# if we have $new_rfc3442_classless_static_routes then we have to
# ignore $new_routers entirely

Mon "correctif" consiste à ajouter une autre route statique sans classe au serveur DHCP Windows. Alors:

  • Destination: 0.0.0.0
  • Masque de réseau: 0.0.0.0
  • Routeur: 192.168.1.1

(une fois ajouté, le masque de réseau est automatiquement modifié en 255.255.255.255)

J'ai une courte durée de bail DHCP (15 minutes) et je n'ai reçu aucune plainte d'autres utilisateurs de Linux ou Windows sur le réseau depuis l'ajout du nouvel itinéraire. Je suppose donc que le changement ne devrait pas causer de problèmes majeurs.

Comme je suis trop nouveau pour commenter:

  • @ t11z Mon fichier de bail est /var/lib/dhcp/dhclient.ens32.leases, option routers est présent et valide.
  • @Jos Bien qu'il s'agisse d'une solution de contournement, votre suggestion va à l'encontre de l'utilisation de DHCP pour configurer les paramètres réseau. Si l'adresse IP de la passerelle par défaut change à l'avenir, les ordinateurs affectés devront être mis à jour manuellement.
6
greecemunky

Je configure un Raspberry Pi en tant que routeur et je rencontre le même problème. Je l'ai corrigé en modifiant le fichier /etc/dhcpcd.conf.

Ouvrez le fichier et cherchez la ligne:

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, Host_name
option classless_static_routes

J'ai simplement commenté "option classless_static_routes"

# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, Host_name
# option classless_static_routes

Je reçois maintenant un itinéraire automatique par défaut défini par le serveur DHCP.

Vous pouvez essayer une chose similaire avec dhclient en modifiant le fichier /etc/dhcp/dhclient.conf et en recherchant cette ligne:

request subnet-mask, broadcast-address, time-offset, routers,
        domain-name, domain-name-servers, domain-search, Host-name,
        dhcp6.name-servers, dhcp6.domain-search,
        netbios-name-servers, netbios-scope, interface-mtu,
        rfc3442-classless-static-routes, ntp-servers;

et en supprimant la demande pour rfc3442-classless-static-routes.

1
Flash5k