ルーターのIPだけでなく、追加のDNSサーバーを提供するDD-WRT


9

DNSMasqでDD-WRT(DD-WRT v24SP2-MULTI(03/21/11)stdを使用)ルーターをセットアップして、特定のドメインを内部アドレスに解決し、他のすべてを通過させるようにしています。ルーター自体は、GoogleのパブリックDNSサーバーを使用してアドレスを解決するように構成されています。

私のセットアップ画面は次のようになります:

DDWRTセットアップ画面

私の問題は、DHCPクライアントが接続すると、ルーターとGoogleの2つのDNSサーバーが割り当てられたDNSサーバーとして取得されることです。

DHCPによって割り当てられたDNSサーバー

これは問題です。ワイヤレスクライアントは、内部IPアドレスを指すはずのドメインを解決しようと8.8.8.8し、ルーターではなく要求が何らかの理由で送信されるため、代わりに外部IPを取得しようとするためです。

ルーターがDNSサーバーとして独自のIP以外のサービスを提供したくない。それは可能ですか?


1
誤解しているかもしれませんが、それはDHCPサーバーの構成セクションなので、クライアントにDNSオプションとしてこれらのGoogleサーバーを提供するようにルーターに明示的に指示しています。リストからそれらを削除してから、ルーターを設定してGoogleから独自のDNSを取得する場合、おそらく以下の答えがこれを行う適切な方法です。
horatio

私はそれらを削除した場合、ルータは...それはDHCP経由でISPから提供されたことをサーバーに提供します
0x6A75616E

あなたはあなたの投稿とコメントで「何らかの理由で」重大な時間を言います。これが8.8.8.8がクライアントに渡される理由です。言ったから。これを報告したくない場合は、削除する必要があります。ルーターがDNSサーバーの場合は、ルーターのアドレスのみを試してください。
horatio

@horatio、本当ではない。私のポイントは、dhcpサーバーが追加のDNSアドレスをまったく渡さない理由です。デバイスでdnsmasqを実行し、特定の名前解決ルールを適用すると、追加のDNSサーバー(ルーター自体以外)にサービスを提供しても、その目的が損なわれます。
0x6A75616E

そのセクションは、DHCP情報を要求するクライアントに配布される DNSサーバーのリストです。
horatio

回答:


7

DNSMasqを使用しているのは良いことです。

[ サービス(>サービス) ]タブの[ DNSMasq ] > [追加のDNSMasqオプション]ボックスで必要な設定を行うことができますが、最初にそれらの静的DNSフィールドをクリアする必要があります。 「設定>基本設定」の静的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

これは私には完璧に機能したようです。非常に馬鹿げた質問ですが。最初の行のどの部分がDHCPオプション006を指定していますか?オプション:dns-server?
Residualfail

@Residualfail:はい。数値でも指定できると思いますが、option:dns-serverDHCPオプションに対応しています006
palswim 2016

1
早すぎるかもしれません。内部DNSがシャットダウンした後、DNSがGoogleのDNSにフォールバックしているようには見えません。=(
Residualfail

4

公式DD-WRTサイトから取得した情報:http : //www.dd-wrt.com/wiki/index.php/OpenDNS

残りのDNSサーバーをルーティング不可能なIP(私の場合は10.0.0.010.0.0.1)に設定でき、これらのルーティング不可能なISPのDNSサーバーを絞り込みます。これまでのところ、存在しないDNSサーバーで待機することなく、遅延なく機能しているようです。


ルーティング不可能なアドレスはネットワークスタックによってすぐに削除されるため、遅延は発生しません。わずかなオーバーヘッドが発生し、ハックですが、実際には問題はありません。
2016年

3

私はDDWRTを使用していないので、これは半問/半回答です。

DHCPサーバーとしての手動DNSMasqは、「追加のDNSMasqオプション」セクションで述べています。

[サービス]タブの[追加のDNSMasqオプション]に入力して設定できるDNSMasqのWebインターフェイスには、いくつかの追加オプションがあります。

ISPからDNSサーバーを通過させたい場合は、次のパラメーターを使用できます。

dhcp-option=6, x.x.x.x, y.y.y.y

ここで、xxxx = DNS1 yyyy = DNS2

これは、ISPサーバーの引き渡しがオプションであることを意味しているようです。そのため、上記の行を見つけて削除すると、オフになります。


1
DHCPサーバーにそのIPアドレスをDNSサーバーIPとして渡すために、dhcp-option = 6,192.168.10.10を設定します。
1

1
ポインタをありがとう。私は(私はddwrtに使用していたデーモンDNSある)uDHCPdとDNSMASQの両方で(それに切り替える)ことを試みたが、無駄に:(それは何らかの理由で追加のDNSレコードを提供し続ける。。
0x6A75616E

その場合は、DD-WRTフォーラムに質問を投稿してください。
harrymc '25年

2

クライアントが外部DNSに到達したくない場合は、DHCPサーバーの構成にクライアントのアドレスを含めないでください。

私はあなたが外部のDHCPクライアント(DNSMASQがDNSクライアントの設定を取得する場所)の構成に(最終的にはより高速な)googleのDNSサーバーを追加したいと思います

追加:

WANリンク構成に余分な(すべての)DNSサーバーを追加する必要があります。DNSMasqはそれらを使用し、DHCPクライアントがプロバイダーから取得するものは決してありません。


あなたの貢献に感謝しますが、それは質問の文脈ではあまり意味がありません。DNSMasqは、クライアントからのDNS要求を実際のDNSサーバーに転送することで機能し、一部の応答をオンザフライで変更できます。DNSサーバーを構成から削除した場合、ルーターはISPが割り当てたサーバーに戻ります。あなたは「設定を修正する」と言って私の質問に答えていますが、質問自体は「設定を修正する方法」です。
0x6A75616E 2012年

2

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サーバーを実行していることを意味します。そうでない場合は、に変更する0.0.0.0か、ネットワーク上のローカルDNSサーバーの適切なアドレスに変更してください。

サーバーとクライアントがこのように構成されている場合は、ルーターのDNS IPアドレスのみが表示されます。すべての要求は、ルーターに関連付けられたDNSサーバーを介してルーティングされます。

ローカルDNSサーバーに関する注意 ルーターで特定のローカルアドレスをローカルIPに関連付ける場合は、それらを適切なDD-WRT画面のDNSMasq構成オプションに追加するか、ローカルDNSサーバーを使用して、適切なIPアドレスをそのサーバー(通常、静的サーバー、ネットワークの範囲内)。この方法では、解決の順序は最初にローカルサーバー、次に2つの外部になります。ただし、それでもクライアントだけがルーターIPをDNSサーバーとして認識します。


回答ありがとうございます!ネットワーク上のすべてのクライアントにDNSサーバーがハードコーディングされていないことを確認しました。実際、すべての場合において、192.168.10.10(ルーター自体)が最初にヒットしたDNSサーバーとして戻ってきます。何が起こるかというと、DHCPが現在提供しているセカンダリDNSサーバーにランダムにアクセスするコンピューターがいくつかあります。他のdnsmasqインスタンスを別のマシンで実行して、それをdns2およびdns3として使用する可能性があります。笑。再びthx。
0x6A75616E

2

ルーターが停止した後も同様の問題が発生し、フラッシュされた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を無効にします。


1
これは実際に悪い考えではありません...別のボックスにdhcpをセットアップし、ddwrtを使うのをやめるかもしれません。
0x6A75616E

1
この問題は、私の2016年2月のビルドにまだ存在し、機能のようです。私はルーターを捨て、これのためにLinux PCに戻ります。ルーターソフトウェアを構築する人々は、GUIのこの予期しない、一般的ではない、無責任な動作に伴うプライバシーの問題をよりよく理解する必要があります。自分でハッキングする必要がある場合、比較的複雑で限定されたシステムを使用しても意味がありません。DNSとDHCPをすでに別のマシンで実行している場合、ルーターには何が残っていますか?パケットプッシュ?
2016年

1

答えを探すためにこのつまずきを見つけたので、数年遅れて追加しました... 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を配布している場合でも、マシンがそれらにアクセスしないように十分に配布できます。


0

ハックの少ない方法を使用する:LANとDNSの場合、DNSに3つのIPをリッスンさせるために使用できるアドレスがいくつかあると思います。

ルーティング不可能なアドレスを使用することによる利益は、プラクティブには無関係である必要がありますが、少なくとも、何かが壊れていることとルーターがそれに応答することには依存していません。それがいつの日か変わらないかどうか確信が持てません。

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