• 締切済み

DNSサーバー問い合わせ時のルーターまでのプロセス

使用している家庭用のルーターには、LANポートが複数あり それぞれのLANポートにパソコンをつないでいます。 そのポートの内の1つにつないでいるパソコンAは、DHCPサーバーとして機能しているルーターから プライベートIPアドレス(192.168.100.2/24) を与えられ DNSサーバー(192.168.100.1) の情報も与えられています。 ルーターのプライベートIPアドレスは 192.168.100.1 です。 パソコンAは、ARPテーブルで 192.168.100.1 のMACアドレスを知っているとします。 あるネット上のサーバーのIPアドレスを知るために パソコンAからDNSサーバー(192.168.100.1)へ問い合わせをする時、 そのパソコンAからルーターまでのプロセスについてですが 1 パソコンAのDNSリゾルバキャッシュに そのサーバーのドメインのIPアドレス情報があるかをまず調べる。 2 なければ、DHCPサーバーとして機能しているルーターから与えられたDNSサーバー情報に基づいて DNSサーバーのIPアドレスが192.168.100.1であると分かる。 3 そのIPアドレス(192.168.100.1)に基づいてパソコンAのARPテーブルからDNSサーバー(192.168.100.1)のMACアドレスを割り出し そのMACアドレスを含んだMACフレームを送信する。 その時のIPヘッダの送信先IPアドレスは192.168.100.1。 4 ルーターはMACフレーム内の送信先MACアドレスがルーター自身のMACアドレスであることから 自身で担当すべきMACフレームであると判断し、そのフレームの処理を引き受ける。 以上で正しいでしょうか?

みんなの回答

回答No.1

正しいと思います。 細かいことを言えば、3の前にルーティングテーブルを見て 宛先IP(DNSサーバ)がゲートウェイを経由する必要があるか どうかを判断する処理があります。 今回の場合は宛先のDNSサーバーIPは192.168.100.1ですので、 ゲートウェイを経由せずそのまま3の処理になります。 本来DNSサーバーは別にLAN内になくてもどこにあってもよいのです。 (プロバイダが提供しているものでなくてもよいです。) 例えばgoogleから「8.8.8.8」というIPアドレスで パブリックDNSサービスが提供されています。 (参考) http://gigazine.net/news/20091204_google_public_dns/ 昔はこれを使った方が速いという人もいましたが、 最近は有名になって利用者も増えたように思え、 プロバイダのDNSを使った方が速い気がします。 ただ、プロバイダのDNSが何かおかしいと思った時は、 試しに「8.8.8.8」を使ってみて、プロバイダのDNSの 問題なのか否かの切り分けに使えたりします。

関連するQ&A