
私はパイホール私のホーム ネットワークでは、ルーターに DNS を設定するオプションがリストされている場所が 2 つあります。デフォルトでは、これらのスペースの 1 つにはルーター自体のアドレス ( 192.168.1.1
) が入力され、もう 1 つは ISP のアップストリーム DNS ( 79.79.79.79
) に設定されています。最初のスペースを Pi-hole の IP に変更し、もう 1 つはそのままにしておく必要があると言われました。
私の理解が正しければ、これは、リクエストが行われると、Pi-hole がリクエストを受信し、それがローカルの場合 (つまり、ホスト名が「Foo」の NAS にアクセスする場合)、独自の DNS があるため、そのホスト名に割り当てられている IP がわかるルーターの DHCP サーバーにリクエストを渡すという意味ですか?
ただし、リクエストが外部からのものである場合、Pi-hole は PiHole 自体に設定されているアップストリーム DNS を使用し、ルーターで指定された DNS をスキップします ( 79.79.79.79
)。
これは理論的には機能しているように見えますが、私の疑問は、DHCP サーバーがルーター自体で実行されており、Pi-hole では無効になっているため、理論的には Pi-hole がこれを停止するはずなのに、なぜどの Windows コンピューターでも CMD からホスト名でデバイスに ping できるのかということです。
DHCP はどこでどのように関係するのでしょうか。また、ネットワークのどの部分が IP がx.x.x.x
ホスト名「Foo」に属していることを伝える役割を担っているのでしょうか。
答え1
Pi-hole を使用する場合、ルータは DHCP 要求に別の DNS を使用しますか?
いいえ ...
DHCP は次のように動作します。
IPアドレスを必要とするシステムは、放送NIC から。
リスニング中の DHCP サーバーはブロードキャストを受信して応答します。
ハンドシェイクがいくつか実行され、IP アドレスを必要とするシステムはリースとオプションと呼ばれる追加情報を取得します。
DHCP には多くの「オプション」があり、そのうちの 1 つは、使用可能な DNS サーバーの IP アドレスです。
したがって、上記の4番目のポイントまでは、DHCPサーバー以外と通信することはありません。システムがDHCPサーバーからDNS IPを取得した後、それからDNS を通信できます。
これは、リクエストが行われると、Pi-hole がリクエストを受信し、それがローカルの場合 (つまり、ホスト名が「Foo」の NAS にアクセスする場合)、独自の DNS があるため、そのホスト名に割り当てられている IP がわかるルーターの DHCP サーバーにリクエストが渡されることを意味しますか?
Pi-Hole が使用するものはdnsmasq
、DNS 要求に応答する小さなプログラムで、NAS などのローカル システムのカスタム IP からドメインへのマッピングを直接構成して応答することができ、他の DNS 要求を他のものに渡すことができると思います。
その「その他」とは、おそらくすべてのフィルターを処理し、ブロックされていないものがあれば、ISP DNS または指定した他の外部 DNS (Google など) に転送するものです。
Windows コンピュータの CMD からホスト名でデバイスを ping できるのはなぜですか
WindowsはネットBIOSコンピュータ名と DNS を解決するために使用します。これは、TCP/IP が PC に自動的に搭載される前の、80 年代後半から 90 年代前半の古いピアツーピア プロトコルです。このプロトコルは、中央の WINS サーバーの有無にかかわらず機能します。これは LAN から漏れるべきではありません。