Ubuntu 16.04(Xenial)を新規インストールしました。 DHCPを使用してwlanインターフェイスを自動的に起動するように/etc/network/interfaces
を構成しました:
auto lo
iface lo inet loopback
auto wlp2s0
iface wlp2s0 inet dhcp
wpa-ssid SSID
wpa-psk "password"
この種の機能:IPは正常に構成されていますが、デフォルトゲートウェイは設定されていません。起動後、私は常にroute add default gw 192.168.1.1
を手動で実行する必要があります。何が間違っている可能性がありますか?以前のバージョンで正常に動作していたこのセットアップを誓うことができます...
Ubuntu Server 16.04でも同じ問題が発生しています。トラブルシューティングの後、私のDHCPサーバーはMicrosoft DHCPサーバー(Windows Server 2008 R2)からのクラスレス静的ルート(DHCPオプション121、ISC DHCPのrfc3442-classless-static-routes
)も提供します。
/sbin/dhclient-script
を見ると、少なくとも1つのクラスレス静的ルートがDHCPクライアントに提供されている場合、ルーター設定は無視されるため、デフォルトルートは設定されません。
# if we have $new_rfc3442_classless_static_routes then we have to
# ignore $new_routers entirely
私の「修正」は、別のクラスレス静的ルートをWindows DHCPサーバーに追加することです。そう:
(追加すると、ネットワークマスクは自動的に255.255.255.255に変更されます)
私は短いDHCPリースの有効期限(15分)があり、新しいルートを追加してからネットワーク上の他のLinuxまたはWindowsユーザーから苦情を受けていないので、変更は大きな問題を引き起こさないはずです。
私はコメントするには余りにも新しいので:
/var/lib/dhcp/dhclient.ens32.leases
、option routers
が存在し、有効です。Raspberry Piをルーターとして構成しているときに、同じ問題に遭遇しました。ファイル/etc/dhcpcd.confを編集して修正しました。
ファイルを開き、次の行を探します。
# A list of options to request from the DHCP server.
option domain_name_servers, domain_name, domain_search, Host_name
option classless_static_routes
私は単に「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
DHCPサーバーによって設定された自動デフォルトルートを取得しています。
ファイル/etc/dhcp/dhclient.confを編集し、次の行を探すことにより、dhclientで同様のことを試みることができます。
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;
rfc3442-classless-static-routesのリクエストを削除します。