私はネットワーク管理者やresolvconfがインストールされていないDebian jessieを使用しており、DHCPを使用しています。
静的DNSを含むDHCP
まず編集しようとしました。
/etc/network/interfaces
そして、以下を追加してください:
dns-nameservers 8.8.8.8
これで、インターフェースファイルは次のようになります。
allow-hotplug eth0
iface eth0 inet dhcp
dns-nameservers 8.8.8.8
DHCPと静的DNSの両方がありますが、ネットワークサービスを再起動しても何も変わりません。
DHCPを使用する場合:
ps aux | grep dhcp
dhclient -v -pf /run/dhclient.eth0.pid -lf /var/lib/dhcp/dhclient.eth0.leases eth0
手動編集
/etc/resolv.confを手動で編集し、そこにネームサーバー8.8.8.8を置くと、Networking.serviceを再起動してからシステムDNSサーバーが8.8.8.8に変わりますが、ifupを実行した後は次のようになります。
sudo ifup eth0
/etc/resolv.confは自動的に192.168.1.1に戻ります。
ネットワーク管理者
その後、ネットワーク管理者を使用することを決定し、ネットワーク管理者をインストールし、プライマリ接続でDNSサーバーIPを設定して再接続した後に機能しましたが、システムを再起動した後、ネットワーク管理者がプライマリDNSサーバー(192.168.1.1)に閉じ込められていました。新しい接続)に自動的に接続されます。
私も確認しましたこのネットワークが利用可能になったら自動的に接続します。接続は正しいですが、再起動すると、ネットワーク管理者は別のネットワークに再接続します。
10時間後にリセット
どういうわけか新しい接続設定を変更することでこの問題を解決しましたが、起動するたびに新しい接続を作成せずに正しい接続に接続できますが、約10時間後にDNSサーバーが自動的に192.168.1.1に変わります。 DNSを8.8.8.8に戻すには、NetworkManager.serviceを再接続または再起動する必要があります。
したがって、/etc/resolv.cofをオーバーライドすることはネットワーク管理者ではありません。
静的構成
これらすべてに直面した後、私は静的設定を使用することにしました。
まず、ネットワーク管理者を削除し、次に静的構成を追加しました。
/etc/network/interfaces
このような:
iface eth0 inet static
address 192.168.1.10
gateway 192.168.1.1
netmask 255.255.255.0
dns-nameservers 8.8.8.8
network.serviceを再起動した後、これらの設定はシステムに適用されず、インターフェイスにIPがないため、ネットワークにアクセスできません。
ルーター DHCP オフ これでルーターのDHCPがオフになっているため、静的構成は正常に機能しますが、他のデバイスではDHCPをオンにする必要があります。
許可する
/etc/resolv.confを編集して権限を変更して、誰も編集できないようにすることができます。
しかし、私は理由を探しています。これがうまくいかない理由は、どのプログラムが/etc/resolv.confを無視するのか、DNSサーバーを設定する正しい方法が何であるかを知りたいのです。
ここで何か抜けましたか?
答え1
デフォルトでは、jessieネットワークはDHCPを介して設定されているため
いくつかの解決策があります
ソール1:
sudo update-rc.d dhcpcd remove
ソール2:
sudo nano /etc/dhcpcd.conf
または、/etc/dhcp/dhclient.conf
に次のコマンドを追加します。
nodhcp
そして、/etc/network/interfaces ファイルで行を次のように変更する必要があります。
iface lo inet loopback
auto eth0
any config .......
提示の一般的な構成
dhcpcd.confファイルの編集
sudo nano /etc/dhcpcd.conf
ファイルの末尾に追加します。
interface eth0
static ip_address=192.168.1.56
#gateway
static routers=192.168.1.210
static domain_name_servers=8.8.8.8
答え2
resolvconf
このプログラムがインストールされている場合、設定resolv.conf
ファイルはシステム上のプログラムによって動的に変更されるため、DebianまたはUbuntuベースのシステムで手動で編集しないでください。 (静的インターフェースと同様に)ネームサーバーを手動で定義する必要がある場合は、ファイルのインターフェース構成/etc/network/interfaces
ファイルに次の行を追加してください。
#Place the line indented within an iface stanza, e.g., right after the gateway line.
dns-nameservers
8.8.8.8
127.0.0.1