ホームネットワーク用にローカルでDNSを実行する


102

ちょうど大きくなった小さなホームネットワークがあります(新しいルームメイト、私の既存のルームメイトはラップトップ(彼女のコンピューターの上に)、友人はラップトップを持ってくるなど)。

私は自分のローカルネットワークのもの(の検索にローカルDNSサーバを実行したいのですがfileserver.localwindowsTV.localmachineA.localmachineB.localappletv.local)。静的IPを使用するビジネスラインを使用し、内部でbind / namedを実行していました。しかし、今では通常のアカウントを持っています。

私のISPのDNSサーバーは絶えず変化しています(何らかの理由で、私のISPは同じIP範囲を長く維持したくない)。外部トラフィックにISPのDNSを使用するためにローカルDNSを自動的に更新する必要がありますが、内部DNSサーバーを維持できます(hostsファイルを更新するのは、win7で既存のマシンを再構築する上ですべての新しいマシンで面倒です)またはUbuntu 9.04)。

さらに、ISPのDNSサーバーがクラッシュしたり、応答しなくなったりすることがよくあります。プライマリとして使用でき、それらが失敗した場合はISPを使用できる、信頼できる(毎日再構成したくない)オープンDNSサーバーはありますか?

更新:dhcpを使用して接続できる各ワークステーションも探しますが、ISP DNSサーバーを取得する代わりに、内部サーバーを取得します。


2
ここには少なくとも2つの質問があります:ローカルDNS構成、パブリックDNSサーバー。次回は2つの質問を投稿してください。
hyperslug

17
同意しますが、全体的な解決策を探しています。それ自体の各質問には正しい答えがありますが、一致しない場合があります。私は一緒に機能する両方の問題の解決策を探しています。
ロイ・リコ

@RoyRico良い解決策を見つけましたか?私はトマトルーターで同じことをしようとしていて、あらゆる方向で壁にぶつかっています。
ジェフ

-あなたがLinuxボックスを持っている場合は、ここではどのように設定DNSMASQ詳細であるsfxpt.wordpress.com/2011/02/06/...
XPTは

誰もが...思っていた場合には、新しいGoogleのDNSサーバは、8.8.8.8と8.8.4.4です
Tmanok

回答:


16

内部の偽のドメインを機能させる場合は、自分以外のDNSサーバーでワークステーションを構成することはできません。BINDをセットアップすると、それ自体で動作し、ISPやその他の権限のないDNSサーバーはまったく必要ありません。


9
ただし、可能であれば、優れたネチズンはISPのDNSキャッシュに転送します。ルートDNSサーバーの負荷はものすごいです。特に、このような小さなサイトでは、すべての世帯が直接行くことを決めた場合、スケーリングされないためです。(ISPの改ざんが心配な場合は、DNSSECを使用してください)。
sourcejedi

1
@sourcejedi、キャッシングDNSサーバーが実際に行うことを誤解します。ルートサーバーに打撃を与えることはありません。たまに週に1回しか邪魔しません。
ミリ14

7
ISP DNSサーバーに転送する必要がある別の理由があります...それらに対する通常のクライアントのように見えます。そうしないと、世界中にDNSクエリを送信しているシステムがあると彼らが見ている場合、彼らはあなたがDNSサーバーを実行していると仮定し、あなたの顔にファイアウォールルールを投げて、あなたにホースをかけるかもしれません。何が壊れたのかを把握するのに苦労し、おそらくそれが起こるかどうかを把握しようとして時間を浪費します。
ミリ14

1
@milliのポイントに加えて、ISPのDNSは、一部のドメインの解決を、より高速/キャッシュされた/従量制のコンテンツでプライベートマシンにオーバーライドする場合もあります。パブリックDNSを使用すると、これらのサービスが中断されたり、コストが高くなる可能性があります。
ウォルフ

85

基本的に、独自のDHCPおよびDNSサーバーを実行する必要があります。プライベートIPアドレスを提供する一般的なルーターがある場合は、既に独自のDHCPサーバーを実行しています。

DHCPサーバーは、ルーターIPをゲートウェイアドレスとして、DNSサーバーIPをDNSサーバーアドレスとして配布するように構成する必要があります。

DNSサーバーは、などの非公式トップレベルドメインをローカルで解決し、.local他の要求を別のDNSに転送するように構成する必要があります。BIND forwarders { }では、非ローカルアドレスの解決に使用するパブリックDNSサーバーを含むセクションを「/etc/bind/named.conf.options」に追加する必要があります。他のコメントが示唆するように、ISPのDNSサーバーに転送したくない場合は、OpenDNS、GoogleのパブリックDNSサーバー、または4.2.2.1/4.2.2.2を使用できます(誰がそれらを行うかは忘れます)。

独自のDNSサーバーを実行している場合は、ホームネットワーク上のすべてのDNSクエリが通過するため、常にオンになっているボックスが必要です。このボックスには、ホームサブネット上の固定IPが必要です。DHCPによって大量に取得できないこと、およびボックス自体がDHCP経由でIPを取得していないことを確認してください。たとえば、192.168.1.1から192.168.1.100のアドレスを配布するようにDHCPが構成されている場合は、DNSサーバーにIP 192.168.1.101を割り当てます。ホームルーターの通常の状況では、DNSサーバーが192.168.1.101であることをルーターに伝えて再起動するだけです。

ブロードバンドルーターでローカルDNSを実行できる場合は素晴らしいですが、DNSサーバーは、使用するDNSソフトウェアによっては、クエリをキャッシュするために大量のRAMを利用できる場合があります。私のネットワークでは、ストレートBINDを使用しています。あなたはそれを少し経験しているように聞こえますが、私にとってはうまくいきます。


3
4.2.2.1/4.2.2.2/4.2.2.3はレイヤー3からのものです
。– Hengjie

1
素晴らしい答えです!完全で明確な情報をありがとう。ローカルネットワーク上でこれをすぐに設定してみます。
フォーム

2
成功!このアプローチは適切です。アドレス可能な範囲外の固定IPの設定/ DNSボックスのDHCPの回避は特に重要です。ありがとう!
フォーム

@Hengjieレイヤー3とは何ですか?
ジョナサン

レイヤー3は、データセンタープロバイダーであり、ネットワークプロバイダーでもあります。また、堅牢なDNSサーバーも提供しています。
恒傑

15

信頼できるオープンDNSサーバーはありますか

あなたはそれを言った:OpenDNS

208.67.222.222
208.67.220.220

3
また、独自のDNSサーバーをセットアップするさまざまな方法の概要については、debian.com / dns.htmを参照してください。
ケネスコクラン

1
OpenDNSの場合は+1。私は仕事でも家でも使います。素晴らしいサービス。
DWilliams

4
OpenDNSネームサーバーは嘘つきであることに注意してください。それらはDNS応答を書き換えて、広告サービスに誘導したり、宛先を検閲したりします。
ボルツマイヤー

1
@bortz、私は彼らがそれについてうそを見たことがありませんが、彼らはランディングページと不正なURLの場合には広告にリダイレクトします。検閲はオプトインであり、デフォルトではオフになっています。
hyperslug

12
8.8.8.8および8.8.4.4のGoogleのパブリックDNSサーバーも非常に優れています。
ローレンス

6

Windowsを実行している場合-Simple DNS Plusをご覧ください-DHCPサーバープラグインも付属する完全なDNSサーバーであり、使いやすいGUIを備えています。

[注:製品はこの投稿の著者によって開発されています]


Windowsをマシンの1つとして実行していますが、常にオンになっているわけではありません。Linuxマシンは通常オンです。
ロイ・リコ

これに言及するだけでは、無料のソリューションではありません。14日間の試用および教育ライセンスが提供されます。そうしないと、$> 70 $ 300との間のどこかに生地を引っ張ってよ
Cyber​​Fox

5

バインドは非常に簡単で、バインドスタイルの構成ファイルをサポートし、かなり信頼できます。サーバーがスタンドアロンの「ゲートウェイ」タイプのボックスであり、いくつかの追加機能が必要な場合は、untangleと呼ばれるファイアウォール/ゲートウェイのディストリビューションもご覧ください。


4

Linuxボックスがある場合は、DNSMASqをセットアップしてローカルアドレスを取得し、それを外部アドレスの転送/キャッシュDNSサーバーとして使用します。これは、openwrt / ddwrt / tomatoなどのホームルーター用のLinuxディストリビューションでよく使用されるものでもあります。

また、ほとんどのApple / Macネットワークでは、LinuxとAppleコンピューターの両方がブロードキャストレベルのDNS /サービス解決のために通信できるBonjour / Zeroconfを使用します。

つまり、3つすべてのOSが実行されている純粋なハイブリッドネットワークでは、場所/ニーズに応じて、OpenDNS、GoogleDNS、またはローカルISP DNSに転送するローカルDNSサーバーが間違いなく必要になります。


2

4.2.2.1および4.2.2.2は私が使用するものです

編集:つまり、公開サーバーに関して。覚えやすいし、私はそれらを使用して以来、私はそれらが失敗するのを見たとは思わない。


前に見たことがあります。誰がそれらを実行しますか?公衆はそれらの使用を許可されていますか?彼らはどれほど信頼性がありますか?
ロイ・リコ

ベライゾン。彼らは気にしないようです。非常に。
hyperslug

これらはオープンDNSサーバーであり、無料で公開されています。それらは高速で信頼性があります。
ウォルター

3
4.2.2.2は、クレジットカードの処理に信頼できるDNSを必要とする顧客にとっては十分に失敗するのを見てきました。それらを見るたびに、これらを常にGoogleのパブリックDNSまたはOpenDNSに変更します。Verizonのサーバーから変更すると、この問題は常にすぐに解消されます。
スティーブンジェニングス

2

ブロードバンドルーターは、ローカルネットワークにDNSサービスとDHCPサービスの両方を提供します。インターネットからローカルマシンへのINcomming接続が必要な場合は、DynDNSとIncomming PortForwardingもサポートするルーターが必要です。

DD-wrt対応ハードウェアリストから1つを選択すると、そのファームウェアでフラッシュでき、小規模ネットワークで必要になる可能性のある機能をすべてサポートします。


4
少なくとも提供されたファームウェアでは、ほとんどのブロードバンドルーターがDNSサービスを提供するとは思わない。ほとんどはDHCPを提供し、それを使用してISPのDNSサーバーを使用するようシステムに指示します。現在、DD-WRT、OpenWRT、Tomatoなどのサードパーティのファームウェアをフラッシュすると、DNSサービスも提供できます。
afrazier

1

LANでDNSサーバーを実行するには、* nixのネームサーバーである「pdnsd」をご覧ください。


1

転送に使用できる無料のDNSサーバー:

1.1.1.1 - Cloudflare
1.0.0.1 - Cloudflare
4.2.2.1 - Layer 3
4.2.2.2 - Layer 3
4.2.2.3 - Layer 3
8.8.8.8 - Google
8.8.4.4 - Google
208.67.222.222 - OpenDNS
208.67.220.220 - OpenDNS

0

リンクテキストからDNSベンチマークプログラムをダウンロードすると、パブリックDNSサーバーとローカルDNSサーバーのリストのベンチマークが実行されます。このプログラムを実行した後、最速のサーバーのコピーをルーターのDNS設定に入れてから、DHCPセッションを更新し、テストを再度実行してください。

ルーターで許可されている場合、ルーターと高速外部DNSサーバーの両方をDHCPクライアントに渡すDNSサーバーのリストに追加します(ただし、ルーターDNSサーバーアドレス用に入力したものとは異なるものを選択します)。


0

同様の問題がありました。OpenWRT互換ルーターを購入し、OpenWRTをインストールしました。静的IPバインディングとルーターでの名前解決を提供します。これにより、ネットワーク内のコンピューターやデバイスに希望どおりに名前を付けることができます。


-1

たぶん私は何か愚かなことを言っています。この場合、個々のマシンのhostsファイルにIPと名前を追加するだけです。

192.168.0.120 tv.local

192.168.0.80 studiopc.local

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.