2つのDNSネームサーバーを指定する設定があります。 1つはローカルで、もう1つは外部です。ローカルはレンズ豆、URLフィルタリング後に要求を外部に転送します。万一の場合に備えた外部設定レンズ豆デバイスソフトウェアまたはハードウェアに誤動作があります。
これレンズ豆応答時間は約20ms、外部応答時間は約2msです。しかし、レンズ豆外部にリストされる前のネームサーバー、DNSデフォルトでは、タイミング応答がテストされ、より速い応答が使用されます。
DNSただし、リストされている厳密な順序でネームサーバーを使用する必要があるパラメータが提供されるため、strict-order
この場合、外部ネームサーバーは次の場合にのみ使用する必要があります。レンズ豆「失敗する」。
実際、このパラメータを使用すると、strict-order
必要に応じて機能しなくなり、外部ネームサーバーはまだ勝ちます。これdnsmasq のマニュアルページ「失敗」の定義が指定されていません。
この問題を解決できる他のパラメータ設定を探しています。
最後の手段として外部プログラムを使用して検出します。レンズ豆作業順序と操作DNS対応するネームサーバー設定。しかし、これは好ましい解決策ではありません。
ベストアンサー1
私もこの目標を達成したい。 dnsmasqとPiHoleを実行しているルーターがあります。 Raspberry Pi SDカードはエラーが発生しやすいため、DNSがダウンすると、システム管理者を除く私の家のすべての人のインターネットが実際にダウンします。ミッションクリティカルな状況を心配するコメントが木より森を見逃しているようで心配です。
strict-order
設定はうまくいきますが、文書にその事実があいまいであることがわかりました。逆順で指定する必要があるあなたの構成から。直観に反する文書がこれについて明らかにしてほしい。
no-resolv
strict-order # NOTE: List servers in reverse order below (bottom is highest priority)
server=45.90.30.131 # NextDNS 2
server=45.90.28.131 # NextDNS 1
server=192.168.1.2 # PiHole
自宅でテストしましたが、192.168.1.2はすべてのDNS要求を受信しています。リクエストが私が指定した別のサーバーに転送されたことを確認するために、PiHoleサーバーを停止しました。動作中、ルータは各要求に対して順番にサーバを試みるため、解析は非常に遅くなります。 dnsmasqのタイムアウトを減らす方法を見つけようとしていますが、明らかにこれは設定として存在しません。 dnsmasqの創設者であるSimon Kelleyは、次のように述べています。
dnsmasqのアップストリームタイムアウトは常にクライアントのタイムアウトと同じであるため、唯一の方法はクライアントのタイムアウトを減らすことです。
ただし、10.2.1.2に送信されたパケットが機能していないときに「ホストへのパスなし」エラーを返す準備ができた場合、状況は速く失敗します。これはarpテーブルまたはパステーブル操作で可能ですが、詳細については説明しませんでした。
要求がより速く失敗することを確認するためにDNSサーバーを停止するのではなく、PiHoleを終了しようとしましたが、何の変更もありませんでした。私はこれを処理する自動化された方法がないと思いますが、誰かがプロセスを高速化するためにいくつかのルーター構成を置くことができれば良いでしょう。