目录
DNS
引入
hosts文件
域名
主域名
结构
www
公司/组织/个人名称
后缀
面试题
简单回答
部分https
细节
DNS
引入
域名介绍,url的介绍+原理+特殊字符的处理,网络行为,http协议请求/响应的格式+结构,状态码介绍,临时/永久重定向,http报头常见字段(长/短连接介绍,location),fiddler_url特殊字符处理-CSDN博客
DNS(Domain Name System,域名系统),域名解析服务
- 我们真正访问网站用的是ip地址和默认端口号,而不是域名
浏览器内置了DNS服务器的ip地址
- 当我们访问某网站时,会先进行域名解析,再拿着ip地址去访问
hosts文件
用于将主机名(例如网站地址)映射到 IP 地址
这个文件存在于操作系统中,每当计算机需要将一个主机名转换为 IP 地址时,系统会首先查看hosts文件,然后再查询 DNS 服务器
这样做可以帮助快速解析地址,或者在某些情况下屏蔽特定网站
域名
主域名
主域名是用来识别主机名称和主机所属的组织机构的一种分层结构的名称
结构
www.公司/组织/个人名称.后缀
www
习惯用法,可以省略
公司/组织/个人名称
二级域名
后缀
一级域名,表示公司性质
- 常见的"com",表示这是一个企业域名
- 同级的还有 "net"(网络提供商), "org"(非盈利组织) ,"edu"(教育相关组织)
除此之外,还有其他类型的后缀:
面试题
当我们输入一串url后,会发生些什么?
简单回答
http过程+域名解析
- 浏览器解析url(协议+域名+访问数据的路径)
- dns查询(本地缓存/dns服务器),将域名->ip地址
- 已知目标服务器的ip地址+默认端口号后,经过三次握手建立连接
- 构建http请求(填充请求行,报头,正文部分) -> 跨网络传输,到达目标主机 -> 构建应答(状态行,响应报头,正文) -> 返回给源主机
- 源主机接收到后,解析报文,提取正文 -> 经过浏览器渲染,让我们看到网页
部分https
现在大多数浏览器都默认使用https协议,所以,在tcp连接建立好后+构建请求前,需要先商议秘钥
- https协议介绍,证书,数字签名介绍 -- 如何对http协议进行加密(只使用对称/非对称加密,使用两组非对称,对称+非对称,对称+非对称+证书),每种加密方式存在的问题,MITM攻击_数字签名协议-CSDN博客
细节
将网络协议栈往下延伸:
- 传输层(tcp协议 -- 发送缓冲区,字节流,拥塞控制,流量控制,超时重传,确认应答)
- 网络层(ip协议 -- 路由表,分片和组装)
- 链路层(Mac帧)