当您输入www.google.com等地址时,发送给的http请求就是 173.194.75.147 port:80。
两个问题
1>浏览器或操作系统是否与DNS服务联系以解析173.194.75.147?
2 - ;浏览器是否知道默认情况下定位到端口80?
答案 0 :(得分:2)
浏览器允许操作系统进行名称查找。例如,在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等。根据标准,这是由您的浏览器“决定”的。
答案 1 :(得分:2)
查询由操作系统运行的inet服务运行。主机可以设置为首先查询,然后是DNS服务器,但不是总是。在UNIX服务器上,/ etc / nsswitch.conf文件定义了解析顺序。
默认情况下,浏览器设置为在端口80上进行查询。您可以通过在完整的URL之后放置一个“:”和另一个数字来修改此行为。
您可以使用nslookup
命令执行自己的DNS解析。
要在“较低”级别查看simialr行为,请在命令行上使用cURL。您将看到在不使用浏览器的情况下解析了URL。您还会看到默认情况下使用端口80的HTTP请求。