前言
访问目标地址有两种方式:
①使用目标IP地址访问。由于IP地址是一堆数字不方便记忆,于是有了域名这种字符型标识。
②使用域名访问。域名解析就是域名到IP地址的转换过程,域名的解析工作由DNS服务器完成。
比如说访问 baidu.com
1.如果是域名,首先将域名解析成ip
计算机首先查找本地的缓存和host文件,如果 有web服务器的ip地址,则直接访问,如果没有,
则查找本地所配置的dns,向dns服务器发送解析请求,服务器通过dns解析后,向客户机发送域名所对应的ip地址,客户机收到ip地址,解析结束。
2.使用IP, ARP, RARP, OSPF协议获取目标IP的MAC地址(唯一标示机器的地址),知道MAC地址后才能进行TCP连接。
3.得到了baidu.com对应的ip地址之后,客户端向web服务器发送tcp的三次握手,进行连接。
4.只有建立连接后,才能传输数据
建立了TCP连接后,如果使用HTTPS,则需要进行SSL握手,沟通加密,以及交换秘钥,握手完成后,报文会在发送给TCP之前在SSL层进行加密。
建立了TCP连接后就可以发送HTTP请求,HTTP请求通过TCP协议发到web服务端,服务端
从请求信息中获得客户机想访问的主机名,从请求信息中获取客户机要访问的web资源。(web资源,即各种文件,图片,视频,文本等)用读取到的web资源数据,创建一个HTTP响应,返回给客户端。
5.与目标主机断开tcp连接(四次挥手)。