为什么youtube.com的解析IP会直接发送到google.com?

swa*_*log 6 ip ping

这可能是一个非常愚蠢的问题,但我很好奇.

youtube.com的ping显示解析的IP为74.125.127.93.现在,如果您在浏览器http://74.125.127.93/中访问此IP,则可能会显示youtube页面.相反,搜索引擎出现了.

有人可以解释窗帘后面发生了什么吗?谢谢.

Aar*_*lla 13

因为有许多服务器名称但只有几个IP地址.

让我解释.IPv4允许2 ^ 32(40亿)个不同的IP地址.听起来很多,但大多数都无法使用.IP地址始终以块的形式分配.最小的块是255个地址(8位 - 1个广播地址),最大的是1600万个地址(2 ^ 24-1).中型块具有64k地址(16位).

如果您是ISP,则会获得一组固定的地址.但是当然你总是要求一个比你绝对需要的块更大的块 - 否则你将耗尽地址,这对ISP来说真的很糟糕.你可以要求两个16位的块,但加入这两个块总是很麻烦.

上周,我们用尽了IPv4块.所以...你有一个64k的块,无法获得更多.但是,您有150,000个想要运行Web服务器的客户.

解决方案:虚拟服务器.你告诉你的DNS"xycom"是13.242.251.17,"aycom"也是同一个地址和"bycom".

当客户端发出请求时,它将执行始终返回相同IP的DNS查询.然后它向刚刚获得的IP发送HTTP请求.诀窍是HTTP请求包含服务器名称.因此,即使所有请求都转到相同的IP地址,Web服务器仍然可以确定您真正想要的是谁.

只要你给它起名字.如果您使用IP,则会获得默认服务,即Google搜索引擎.

[编辑]telnet,你可以自己试试.启动它,telnet 74.125.127.93 80然后键入:

GET http://www.google.com/index.html HTTP/1.1
Run Code Online (Sandbox Code Playgroud)

点击输入两次.您将获得您所在国家/地区的Google主页的重定向.现在输入:

GET http://www.youtube.com/ HTTP/1.1
Run Code Online (Sandbox Code Playgroud)

点击输入两次.这一次,YouTube主页将被退回.