关于一些问题的个人思考,欢迎大家讨论
今天在论坛上看到有人问:ping了一个域名,用得到的IP地址在浏览器里却打不开网页.
这个问题我之前有想过,不过仍然没有一个确定的答案,下面仅仅把自己的一些想法写出来,欢迎大家拍砖.
首先,从理论上讲,一个域名对应一个IP,ping了一个域名以后得到的IP应该是可以这个网站的.
但是在实际中,为了应付巨大的网络流量和随时的黑客攻击,各个网站采用了不同的方法:
有的网站采用了NAT(网络地址转换)的技术,屏蔽了内网真正的IP地址,外网的用户看到的只是一个转换后的IP地址.因此,无法得到真正的IP地址.
还有的网站采用检测host字段的方法,比如新浪.在http协议的请求报文中有一个host字段, 当ip访问时,host字段就是ip值. sina的服务器通过检测这个host字段, 如果不是预设的
www.sina.com, 就会拒之.这样,就算你得到了IP地址,仍然无法访问.这样做的缺点是当DNS挂掉的时候 ,无法通过IP去访问,除非临时修改协议.
为了应付巨大的网络流量,大部分的网站都采用的负载均衡的方法,采用一个域名对应多个IP的方法,将流量分散到多个服务器上面去.
用户系统信息:Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 2.0.50727)