1

自宅の LAN には複数のコンピュータがあります。それらは、私をインターネットに接続し、LAN上のDHCPサーバーおよびネームサーバーとして機能するルーターに接続されています。

私のコンピューターの一部は Ubuntu マシンであり、適切な /etc/resolv.conf をセットアップしようとしています。問題は、私のルーターがネームサーバーとしてはとてもお粗末 (非常に遅い) ことです。そのため、Google のネームサーバーや OpenDNS などの外部ネームサーバーを使用することを好みます。

しかし、これらのパブリック ネームサーバーは明らかに、私のローカル マシンの IP アドレスを知りません。

そこで私の質問です: 特定のホスト名が 1 つのネームサーバーによって解決され、他のホスト名が別のネームサーバーによって解決されるように /etc/resolv.conf を構成する方法はありますか?

(私の推測ではノーです。その場合、固定 IP アドレスを設定する必要があります。しかし、それは避けたいと考えています。)

4

1 に答える 1

3

ローカル ネームサーバーとインターネット ネームサーバーのどちらかを選択する必要があるコンピューターに、ローカル転送ネームサーバーをインストールします。軽量で、このタスクの構成が簡単なUnboundを使用します。

これを Unbound 構成に入れます。

stub-zone:
        name: "internal.example.com"
        stub-host: internal.nameserver.ip.address
forward-zone:
        name: "."
        forward-host: internet.nameserver.ip.address

ローカル ホスト上のアプリケーションがUnboundのこのインスタンスを使用するように設定しますnameserver 127.0.0.1/etc/resolv.conf

解決しようとするmyhost.internal.example.comと にクエリが送信さinternal.nameserve.ip.addressれ、解決しようとすると にwww.google.comクエリが送信されますinternet.nameserver.ip.address

すべてのローカル ホストが、上記の単一のローカル ドメイン ( internal.example.com) の下にグループ化されていることを願っています。残念ながら、安価なルーター + DHCP サーバー + DNS サーバーが、認識しているすべてのホスト名を合成されたルート ゾーンに貼り付けてしまう可能性が非常に高くなります。その場合は、次のようにすべてを 1 つずつリストする必要があります。

stub-zone:
        name: "hostname1"
        stub-host: internal.nameserver.ip.address
stub-zone:
        name: "hostname2"
        stub-host: internal.nameserver.ip.address
stub-zone:
        name: "hostname3"
        stub-host: internal.nameserver.ip.address
forward-zone:
        name: "."
        forward-host: internet.nameserver.ip.address

もちろん、これに関する問題は、構成および設定する必要があるさまざまなマシンに多数のバインドされていないインスタンスがあることです。LAN 上の 1 つのホストだけがこのサービスを提供し、他のすべてのホストの再帰的なネームサーバーとして機能することでこれを回避できますが、そうする場合は、そのホストを DHCP サーバーと権限のあるネームサーバーにすることもできます。ローカル ホストの場合も同様であり、最初から遅い組み込みの DHCP+DNS サーバーを取り除きます。

于 2012-07-05T20:09:30.207 に答える