客户端访问百度的时候,不会直接发送到到百度服务器,而是先将域名发送到dns服务器,DNS会进行域名解析,解析之后会给一个ip地址,浏览器会在给这个ip地址服务器发请求。
DNS是有缓存的,缓存的地方有:
1,自己电脑
2,浏览器,
3,自己家的路由器
4,公司路由器
5,运营商,移动,电信,联通等
一般来说不会真正的访问到dns服务器,全世界只有13台dns服务器,但是一台都没有在中国。
80%的dns查询在运营商就结束了。
dns缓存拿到的地址不是百度的服务器,而是cdn地址,浏览器拿到cdn地址,访问cdn服务器,
cdn的作用:
1,防止ddos攻击,会阻止暴力请求,
2,防止xxs攻击。
2,内容分发,将请求分发到距离你最近的服务器,例如百度在中国地区有多个服务器,cdn会将你的请求发送到最近的一个服务器,能加快你的请求速度。
3,如果广东的服务器坏了,cdn会切断,交给别的地区的服务器处理。也就是cdn能够处理服务器损坏的情况。