web-dev-qa-db-ja.com

Linux:resolv.confの編集方法

Open DNSをセットアップする必要があるが、resolv.confを編集できない

Dynamic resolv.conf(5) file for glibc resolver(3) generated by resolvconf(8)
DO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN
nameserver 127.0.1.1
search gateway.2wire.net
25
Ricky Wilson

システムはresolvconfを使用するため、resolv.confファイルは/etc/resolvconf/run/resolv.confへのシンボリックリンクに置き換えられ、resolvconfがファイルを動的に生成します。だからDO NOT EDIT THIS FILE BY HAND -- YOUR CHANGES WILL BE OVERWRITTEN

ファイル内の情報を適切に更新するには、dns- *パラメーターを/etc/network/interfacesに入れることができます。

auto eth0
iface eth0 inet static
     address 33.33.13.10
     netmask 255.255.255.0
     gateway 33.33.13.1
     dns-nameservers 33.33.13.1 12.34.56.78
     dns-search example.com

次に、次の方法でdns- *情報を更新できます。

$ resolvconf -d eth0
$ resolvconf -a eth0

または、ifdown&ifupおよびresolvconf -d、-aをバックグラウンドで実行できます。

注:resolvconf -uが機能しない場合があります。理由がわかりません

man resolvconfを読む必要があります。これに関する詳細情報があります。

ヒント:/etc/resolv.confを手動で更新する場合は、手動でシンボリックリンクを削除し、/ etc/resolv.confを作成できます。これにより、ファイルはresolvconfから更新されなくなります。

    $ rm /etc/resolv.conf         ;# to remove the symlink
    $ vi /etc/resolv.conf         ;# to create a regular file

これには通常、/etc/resolvconf/resolv.conf.d/base(ディストリビューションによってこの配置が若干異なる場合があります)またはこのディレクトリ内の他のファイルを編集する必要があります。これらは、resolvconfプロセス自体によって追加されます。これらのファイルの形式は、標準のresolv.confと同じです。

これらの編集を行ったら、resolvconf -uコマンドを使用してresolvconfを強制的に更新できます。

9
Cris Favero