DNSMasqでDD-WRT(DD-WRT v24SP2-MULTI(03/21/11)stdを使用)ルーターをセットアップして、特定のドメインを内部アドレスに解決し、他のすべてを通過させるようにしています。ルーター自体は、GoogleのパブリックDNSサーバーを使用してアドレスを解決するように構成されています。
私のセットアップ画面は次のようになります:
私の問題は、DHCPクライアントが接続すると、ルーターとGoogleの2つのDNSサーバーが割り当てられたDNSサーバーとして取得されることです。
これは問題です。ワイヤレスクライアントが内部IPアドレスを指すはずのドメインを解決しようとし、何らかの理由でリクエストが8.8.8.8
ルーターの代わりに。
ルーターがDNSサーバーとして独自のIP以外のサービスを提供したくない。それは可能ですか?
DNSMasqを使用しているのは良いことです。
サービス(>サービス)タブのDNSMasq>追加のDNSMasqオプションボックスで必要な設定を行うことができますが、最初にそれらの静的DNSをクリアする必要があります田畑。
DNSMasqオプションボックスに以下を追加します。
dhcp-option= option:dns-server, 192.168.10.10 # DHCP option 006
server = 8.8.8.8 # DNSMasq will use these servers for forwarding the DNS requests that it can't serve
server = 8.8.4.4
公式DD-WRTサイトから取得した情報: http://www.dd-wrt.com/wiki/index.php/OpenDNS
残りのDNSサーバーをルーティング不可能なIPに設定できるようです(私の場合は10.0.0.0
&10.0.0.1
)そして、これらの非ルーティング可能なISPのDNSサーバーを絞り出します。これまでのところ、存在しないDNSサーバーで待機することなく、遅延なく機能しているようです。
私はDDWRTを使用していないので、これは半問/半回答です。
マニュアル DHCPサーバーとしてのDNSMasq は、「追加のDNSMasqオプション」セクションで述べています。
[サービス]タブの[追加のDNSMasqオプション]に入力して設定できるDNSMasqのWebインターフェイスには、いくつかの追加オプションがあります。
ISPからDNSサーバーを通過させたい場合は、次のパラメーターを使用できます。
dhcp-option=6, x.x.x.x, y.y.y.y
ここで、x.x.x.x = DNS1 y.y.y.y = DNS2
これは、ISPサーバーの引き渡しがオプションであるため、上記の行を見つけて削除するとオフになるはずです。
ルーターが停止した後も同様の問題があり、フラッシュしたWRT160Nを実行する必要がありました。
ネットワークの192.168.2.30でローカルDNSサーバーとして機能するボックスがあります。私は基本的に、DHCPがDNSサーバーとしてそのアドレスのみを提供するようにします。 DNSを他の場所に移動させたくありません。
「ファームウェア:DD-WRT v24-sp2(12/19/10)mini」を使用しています
DNSMasq設定、DHCP設定、ローカルDNS、または私が使用するもののどのような組み合わせも重要ではないようです。 DNSサーバー2とDNSサーバー3が空白であるか、DNSサーバー1と一致する場合、DD-WRTはそれらのスポットにComcastのDNSサーバーを配布するように要求します。ローカルではないクエリのためにOpenDNSに192.168.2.30を転送しているので、これは必要ありません。
私はこれをこのDD-WRTのかなり古い(今のところ)バージョンのバグとして書いており、192.168.2.30に自分のDHCPサーバーをインストール/構成し、ルーターのDHCPを無効にします。
DD-WRTの一般的な構成オプションは、ルーターがISPのプライマリDNSサーバーの外部でDNSをルーティングできるようにすることです。あなたはこれを成功させました。ただし、リクエストはCLIENTマシンから生成され、ルーターに接続されているため、優先順位は常にクライアントのマシンで構成されたDNSに与えられ、次にルーターに与えられます。
発生しているのは、クライアントがルーターに関連付けられているということですが、DNSにはルーターのIPと他の2つのDNS設定が表示されます。クライアントコンピューターを確認し、IPV4設定が接続からDNSサーバー構成を動的にプルするように設定されていることを確認してください。手動で構成するのではありません。
次に、DD-WRTルーターが正しくセットアップされていることを確認します。
上記の構成では、いくつかの問題もあります。 DHCPアドレス範囲を200
で始まり、255
で終わるように設定しました。これを200で始まり254
で終わるように変更することをお勧めします。通常の構成では*.*.*.255
はブロードキャストアドレスであり、関連付けられたクライアントへの割り当てに使用する通常のIPアドレスではないため、255アドレスをオフのままにします。
ローカルDNS設定を強調表示しました。あなたが127.0.0.1
に設定したためです。つまり、ローカルDNSサーバーをrouterで実行しています。そうでない場合は、0.0.0.0
に変更するか、ネットワーク上のローカルDNSサーバーの適切なアドレスに変更してください。
サーバーとクライアントがこのように構成されている場合は、ルーターのDNS IPアドレスのみが表示されます。すべての要求は、ルーターに関連付けられたDNSサーバーを介してルーティングされます。
ローカルDNSサーバーに関する注意ルーターで特定のローカルアドレスをローカルIPに関連付ける場合は、それらを適切なDD-WRT画面のDNSMasq構成オプションに追加するか、ローカルDNSサーバーを使用します。そのサーバー(通常は静的サーバー、ネットワークの範囲内)の適切なIPアドレスを入力します。この方法では、解決の順序は最初にローカルサーバー、次に2つの外部になります。ただし、それでもクライアントだけがルーターIPをDNSサーバーとして認識します。
クライアントが外部DNSに到達したくない場合は、DHCPサーバーの構成にクライアントのアドレスを含めないでください。
私はあなたが外部のDHCPクライアントの設定に(最終的にはより高速な)googleのDNSサーバーを追加したいと思います(DNSMASQはDNSクライアントの設定を取得します)
追加:
追加の(すべての)DNSサーバーをWANリンク構成に追加する必要があります。DNSMasqはそれらを使用し、DHCPクライアントがプロバイダーから取得するサーバーは決して使用しません。
答えを探すためにこのつまずきを見つけたので数年遅れて追加しました... piホールに仮想インターフェイスを追加して、さらに2つのIPアドレスを処理しました。
eth0 192.168.10.10
eth0.1 192.168.10.11
eth0.2 192.168.10.12
これにより、3つのボックスすべてにローカルアドレスを設定でき、dd-wrtルーターが5つ、3つのローカルISP、2つのアップストリームISP DNSを配布している場合でも、マシンがそれらにヒットしないように十分に配布できます。
ハックの少ない方法を使用する:LANとDNSの場合、3つのIPでDNSをリッスンするために必要なアドレスがいくつかあるはずです。
ルーティング不可能なアドレスを使用することによる利益は、プラクティブには無関係である必要がありますが、少なくとも、何かが壊れていることやルーターがそれに応答することには依存していません。それがいつの日か変わらないかどうか確信が持てません。