大家日常上网的时候,浏览网页的本质就是你从目标服务器上获取到了一个html网页文件而已,然后浏览器进行渲染。访问网站的域名,首先浏览器是进行了域名解析(pythonav.cn --> 123.206.16.61),浏览器直接访问pythonav.cn,其实是被解析成了123.206.16.61:80/index.html
浏览网页的原理就是 1、通过互联网找到对方的机器 2、然后从对方的机器中,找出对应的文件,下载到本地来 3、通过浏览器进行渲染这样的数据
域名和ip的关系
我们使用电话簿,将电话号码转化成了名字,因为名字更容易记住,电话不容易记住。域名是更容易被人们记住的字符串 ip地址比较隐晦,难以记住,因此,出现了各大互联网公司,企业,定制了dns服务器,在一个linux服务器上,安装了dns的服务端软件,提供了一个超大的电话簿,key-value类型的数据库,记录了域名与ip地址的对应关系
比如说 阿里 223.5.5.5 223.6.6.6 腾讯 119.29.29.29 114 114.114.114.114 谷歌 8.8.8.8 分别都提供了dns服务器地址,如上的dns服务器地址,存放了大量的域名的解析记录 通过nslookup命令查看域名的解析关系,也可以直接使用ping命令查看关系 比如你电脑上网特别慢,使用某个网络优化工具,自动选择最优dns
通过nslookup命令查看域名的解析关系
1、该命令需要单独安装 需要单独安装dns的套件软件包 yum install bind-utils -y
2、使用nslookup命令(name server look up,域名服务器查找) 非交互式:nslookup www.baidu.com 交互式:nslookup,再输入想要查询的网站 指定dns服务器地址:nslookup www.baidu.com 223.5.5.5
linux的dns配置文件
1、linux的本地dns解析文件,/etc/hosts文件中,这个文件是运维人员自由定义域名和ip强制解析关系的 vim /etc/hosts 写入如下数据 127.0.0.1 www.pythonav.cn ping www.pythonav.cn 解析到了127.0.0.1,因此可以证明hosts文件的解析优先级是高于dns客户端配置文件
2、/etc/resolv.conf,该文件填入的是互联网dns服务器的地址 里面有两个dns服务器地址,一个主服务器,一个备用的服务器。如果注释掉,就无法进行域名解析了 文件中定义了域名服务器地址,填入公网的dns服务器地址即可 nameserver 114.114.114.114 nameserver 223.5.5.5
/etc/hosts文件 --> 自己本地的电话簿 /etc/resolv.conf --> 填写dns服务器地址的配置文件 --> 指定一个专门做电话号码收集的公司(比如阿里云的dns服务器,收集了世界上所有的域名与ip的对应关系)
为什么qq能进行聊天,但是浏览器无法上网? qq进行聊天不需要进行dns解析,域名解析的过程,只要电脑可以正常上网即可,但是dns服务器有问题,就无法进行解析域名,就无法上网
网友评论