web-dev-qa-db-ja.com

dhclientは、無効なエントリを使用して/etc/resolv.confを構成します

インターフェイスでdhclientを実行すると、/ etc/resolve confがゲートウェイ(ルーター)のIP番号に設定される理由を理解しようとしています。

このエントリは無効であり、毎回、アドレスを解決できなくなります。

私はしたいと思います:

  • dhclientによる/etc/resolv.confの上書きを停止するか
  • dhclientにルーターからの有効なDNSIPを書き込んでもらいます

環境の詳細:Windows Sevenx64のクライアントシステムとして仮想DebianWheezyを使用しています。これは、ネットワークモードがブリッジに設定されたVirtualboxによって実行されます(debianからのすべてのパケットはWindowsのネットワークインターフェイスに挿入されます)。

/etc/resolv.confを手動で構成すると、すべて正常に機能します。すべてのブートでこれを行うのは非常に面倒です。

PS>私はそれを行うためのスクリプトを書くことができることを知っていますが、これは私が望む解決策ではありません。 //編集

  • ルーターIP:192.168.1.100
  • /etc/resolv.conf dhclient eth0を実行した後: "nameserver 192.168.1.100 "
  • /etc/resolv.confを次のように表示します: "nameserver 89.202.xxxx "(実際のIPを提供する必要はありませんか?)

他のすべてのデバイス-Ubuntuを搭載したラップトップ、Androidを搭載した2台の電話、Windows7を搭載したラップトップはルートから正しいDNSエントリを取得できます

3
kubal5003

最善のアプローチは、ルーターのdhcpサーバーを修正することです。これにより、正しい設定が提供されます...

それができない、またはしたくない場合は、DHCP経由でDNSサーバーを要求しないようにdhclient構成を調整できます。

ほとんどのディストリビューションの構成ファイルはおそらく/etc/dhcp/dhclient.conf。このファイルには、次のような行があります。

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

このリストからdomain-name-server(およびおそらくdomain-search)を削除し、dhclientプロセスを再起動します。

3
andrekeller

ユーザー「rbtux」は正しいです。しかし、提案される前に/etc/dhcp/dhclient.confに特別な(コメントされた)行があります:

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

私はそれをコメント解除しました、そしてそれは私のために働きます。

私の工学のためにsry。

1
Artsiomius