1.浏览器解析url是否合法
2.浏览器向DNS服务器请求解析ip地址
3.dns将解析出来的ip地址返回给浏览器
4.三次握手,浏览器与服务器进行tcp连接
5.浏览器向服务器请求html文件
6.服务器返回html文件给浏览器
7.四次挥手,浏览器与服务器断开tcp请求
8.浏览器执行html文件,渲染页面
1. 客户端首先查看浏览器缓存,看有没有该域名对应的IP地址,没有就到本地host文件里面去查找;
2. 本地host文件里没有,就向本地域名服务器进行递归查询,本地域名服务器也是先查看自己的缓存;
3. 本地DNS服务器没有的话就向根域名服务器进行迭代查询,根域名服务器通常是把自己知道的顶级域名服务器的ip地址告诉本地域名服务器;
4. 本地域名服务器再向顶级域名服务器查询,顶级域名服务器要么给出所要查询的IP地址,要么告诉本地服务器下一步应该向哪一个权限域名服务器进行查询;
5. 地域名服务器向权限域名服务器进行查询,然后得到了所要解析的IP地址;
6. 本地域名服务器将该域名和对应的IP地址写入自身缓存,然后将解析的IP地址返回给客户端
- 客户机首先查看自己浏览器的缓存,如果没有对应的dns解析,就查看自己机器中的host文件。
- 如果都没有向本地dns服务器查询,本地dns服务器也是先查看自己的缓存,如果有直接返回,如果没有,询问运营商。
- 运营商,查询缓存,查询数据区,有返回,没有访问根域名服务器。
- 根域名服务器查询.com的域名服务器位置,返回给运营商,运营商访问.com服务器,.com服务器返回baidu.com服务器ip给运营商。
- 运营商访问baidu.com服务器,baidu.com服务器返回www.baidu.com的ip给运营商。
运营商返回给本地服务器,本地服务器返回给客户机。
智能dns就是将用户发起的查询进行判断出师哪个运营商的用户查询,然后将请求转发给相应的运营商ip处理,减少跨运营商访问的时间,提高访问速度。
A机器ping B机器的过程 (ping命令在网络层)
1、 A机器会拿着B机器的IP地址和自己的子网掩码进行与运算得到一个网段号;
2、 然后到A机器自己的路由表里去查询是否有合适的路由条目进行转发,如果有就进行转发,如果没有就会通知网络不可达;
3、 因为我们配置了默认路由,所以A机器就会把数据转发到默认的网关中,数据链路层会进行帧的封装,源mac是自己的,目的mac是网关的,因为交换机看不到IP地址,只是根据mac地址进行转发;
4、 网关收到数据包后,也是查看目标IP地址,然后到路由表里查询哪条路由可以到达,然后就路由,如果没有就直接丢弃数据包;
5、 在发包的过程中是双向的 当B机器接受到数据包后,它也会返回一个数据
包,这样才能进行通信。