本文主要想通过动手实际分析一下是如何通过DNS服务器来解析域名获取对应IP地址的,毕竟,纸上得来终觉浅,绝知此事要躬行。
域名与IP地址
当在浏览器上敲下“www.baidu.com”时,一键回车,很快,浏览器上就会刷新出熟悉的百度搜索页面。以前刚接触网络时,总以为这个过程是通过域名www.baidu.com来访问远程服务器,其实不然,本质上,还是通过IP去远程访问服务器获取资源。
这时,聪明的小伙伴就会出现一个疑问,为啥不直接通过域名去寻找到相应的服务器主机呢?
其实,若要实现通过域名的方式去寻找服务器主机,也不是不行,但没这个必要。
先来对比一下域名方式与IP地址方式两者的最关键差异在哪里,就知道为啥没这个必要了。
我们日常工作接触的IPv4地址一般都是以十进制的方式表示,例如,192.168.200.111,但在计算机当中,它其实是以二进制形式存在,192.168.200.111的二进制为1100 0000 1010 1000 1100 1000 0110 1111,总共32位,也就是32比特。众所周知,1个字节占了8比特,那么就意味着,一个32比特的IP地址长度也就4个字节。
在网络传输过程中,4个字节的长度,可以说,微不足道,但,若换成域名呢?
目前,域名最大长度可达:63个字符,每个char字符就占了2字节,63字符占了126字节,可见,若要用域名当成传输的地址,是多么耗性能,但若用IP地址就不一样了,32位也就只占4