结论:

简单的说,就是baidu有钱。

正文:

大型网站依靠自身稀稀落落的服务器很难满足网页“秒开”的用户需求,会加入CDN加速的队伍。

当用户访问 http://www.zhihu.com 时,域名解析到距离用户最近的CDN服务器的公网IP,浏览器于是与公网IP对应的CDN服务器建立连接。

问题来了,CDN服务器一个公网IP,可能hosted多个客户网站(a.com, b.com, c.com),当浏览器主动连接时,CDN服务器如何知道是连接哪个客户网站呢?

这时,就需要 SNI(Server Name Indication)登场了。

用户浏览器只要填入:SNI = “www.zhihu.com”

CDN服务器可以根据SNI的值知晓,浏览器原来想连接知乎的网站,完成TLS安全连接,并把资源返回浏览器。

而用户突然不使用域名,而是直接使用IP地址访问了,这就让CDN服务器有点茫然失措。

SNI = “54.223.189.245”

SNI已经无法帮助CDN服务器,分辨用户到底是想访问哪个网站了。

与其返回错误的资源,还不如拒绝服务。

那么,为什么直接使用IP=111.13.101.208为何可以访问 http://baidu.com

计算机通信里,如果一个地址或端口会引起歧义或冲突,是需要坚决避免的。

反过来说,如果一个地址不会引起歧义,可以放心大胆使用。

如果IP=111.13.101.208对应的就是 http://baidu.com 网站服务器,或专用CDN服务器(只服务 http://baidu.com),即使使用IP访问又有何不可呢?

问题又来了,百度服务器需要提供“111.13.101.208”的数字证书,如果提供不出,依然无法https访问网站!

通常数字证书都是为域名签发的,很少会为IP地址签发证书。但也有为IP地址签发证书的,只要IP地址在签发期间专属于客户。

<原文转载自chexiaopangnetwork>

为什么直接ping知乎的ip不能访问知乎的网站,而百度就可以?的更多相关文章

  1. route 一个很奇怪的现象:我的主机能ping通同一网段的其它主机,并也能xshell 远程其它的主机,而其它的主机不能ping通我的ip,也不能远程我和主机

    一个很奇怪的现象:我的主机能ping通同一网段的其它主机,并也能xshell 远程其它的主机,而其它的主机不能ping通我的ip,也不能远程我和主机. [root@NB Desktop]# route ...

  2. [shell]通过ping检测整个网段IP的网络状态脚本

    要实现Ping一个网段的所有IP,并检测网络连接状态是否正常,很多方法都可以实现,下面简单介绍两种,如下:脚本1#!/bin/sh# Ping网段所有IP# 2012/02/05ip=1 #通过修改初 ...

  3. 【源】ensp 绑定本地网卡与仿真设备进行通信 场景下 仿真设备ping 不通 本机IP 问题

    环境:Win7, ensp 1.2.00.500 问题现象:本机可以ping 通 仿真设备的接口IP,但是在仿真设备上 ping不通 本机接口ip. 问题处理:把本机win7系统只带的防火墙关闭后,在 ...

  4. android手机 ping 虚拟机ubuntu的ip地址

    今天使用android手机往虚拟机上ubuntu 上搭建的nginx 和rtmp服务器推送东西的时候,怎么都推不上去. 后来在windows下的cmd里: # adb shell # ping 192 ...

  5. shell通过ping检测整个网段IP的网络状态脚本

    要实现Ping一个网段的所有IP,并检测网络连接状态是否正常,很多方法都可以实现,下面简单介绍两种,如下:脚本1#!/bin/sh# Ping网段所有IP# 2012/02/05ip=1 #通过修改初 ...

  6. CentOS7 Docker容器无法ping通宿主机ip问题解决记录

    Docker服务部署启动容器发现docker容器内访问宿主机IP不通,于是进入容器内ping宿主机IP,发现无法ping通,容器IP为172.17.0.2,于是继续ping172.17.0.1也不通, ...

  7. 为啥用ip不可以访问知乎,而百度却可以?

    我们先来ping知乎的域名,然后可以得到响应的服务器的ip 之后我们用浏览器来访问这个ip,结果如下 被拒绝访问了. 而用ip来访问百度,则没啥问题,如图 访问知乎的时候,域名可以访问,ip不可以访问 ...

  8. 你应该知道的10个奇特的 HTML5 单页网站

    网页设计师努力寻找新的方式来展现内容.其中一个大的趋势是单页网站,现在被世界上的一些大的品牌广泛采用,使用它们来为用户提供一个快速,干净和简单的而且​​美丽的网站. 下面是10个令人惊叹的单页 H​​ ...

  9. php中session同ip不同端口的多个网站session冲突的解决办法

    在局域网内使用IP加端口的访问方式搭了两个相同程序的站,结果发现用户在一个站下登录后,在另一个站也同时登录了,在一个退出后,另一个站也同时退出了.看了下程序发现两个站都是使用纯session方式记录登 ...

随机推荐

  1. Robot Framework初级

    一.robot framework环境搭建 二.robot 不同的测试库 三.创建项目 四.变量与常量 五.常用关键字介绍

  2. Flask - g变量

    传送门 http://flask.pocoo.org/docs/1.0/appcontext/#storing-data http://flask.pocoo.org/docs/1.0/appcont ...

  3. git warning: CRLF will be replaced by LF in resources/views/sessions/create.blade.php

    git config core.autocrlf false

  4. 思科室外AP无法注册到WLC

    思科的一些新的室外AP,在购买回来时,有时候会出现无法加入WLC的情况,现象基本是无法加入,或感觉加入了,立马又掉了. 例如: AIR-AP1562E-H-K9 AIR-AP1572EAC-H-K9 ...

  5. ANSYS-APDL施加扭转载荷CERIG命令

    目录 1. 要求 2. ANSYS有限元分析 2.1 APDL建模 2.2 APDL施加载荷 2.3 APDL查看结果 3. 举一反三 1. 要求 一块0.8m*0.4m*0.04m厚的钢板,在板的两 ...

  6. Chrome的一个问题

    报错:Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extensi ...

  7. 基于three.js实现特定Div容器的粒子特效封装

    本文基于three.js实现特定容器的粒子特效效果,支持用户传入特定的dom对象以及粒子颜色. 效果图 移入库 <script src="jquery-1.11.3.min.js&qu ...

  8. Asteroids!_poj2225

    这是一个立方体的空间的路径搜索问题,若可达输出步数,不可达输出“NO ROUTE” 一道……课后题 输入的话我是按字符输入这个空间的 然后普通的bfs,一个方向数组,一个空间数组(因为只用一次,懒的再 ...

  9. Git - 删除github上的提交历史

    参考 https://segmentfault.com/q/1010000002898735 https://stackoverflow.com/questions/1338728/delete-co ...

  10. Linux - 监控工具Conky

    主题Harmattan,https://www.jianshu.com/p/5c8d4a1f4c91,这个主题在deepin linux下有黑框背景,因为是伪透明,所以选择黑色背景的主题即可