www.google.com などのアドレスを入力すると、送信される http リクエストは 173.194.75.147 ポート:80 になります。
2 つの質問
1>173.194.75.147 を解決するために DNS サービスに接続するのは、ブラウザまたは OS ですか?
2> ブラウザはデフォルトでポート 80 をターゲットにすることを認識していますか?
クエリは、オペレーティングシステムによって実行されるinetサービスによって実行されます。ホストは最初に照会され、次にDNSサーバーが照会されるように設定できますが、常に照会することはできません。UNIXサーバーでは、/ etc/nsswitch.confファイルが解決の順序を定義します。
ブラウザは、デフォルトでポート80でクエリを実行するように設定されています。これを変更するには、完全なURLの後に「:」と別の番号を配置して動作を変更します。
このコマンドを使用して、独自のDNS解決を行うことができますnslookup
。
「下位」レベルで同様の動作を確認するには、コマンドラインでcURLを少し試してみてください。ブラウザを使用せずにURLが解決されることがわかります。HTTPリクエストでデフォルトで使用されるポート80も表示されます。
ブラウザは、OS に名前検索をさせます。たとえば、Windows 7 では、C:\Windows\System32\drivers\etc\hosts
最初にファイルが照会され、次に DNS サーバーが照会されます。Linux、FreeBSD などで/etc/hosts
は、最初にクエリが実行され、次に のネームサーバーがクエリされ/etc/resolv.conf
ます。
URL が http プロトコルを対象とする場合は Destination-port=80 がデフォルトであり、プロトコルが https の場合は destination-port=443 です。これは、標準に従って、ブラウザによって「決定」されます。