DNS就是域名解析
我们上网的方式通常都由ip地址组成,但是为了有个规范,而且我们也不可能去记住那么多一串Ip数字,首先域名就会比ip好记很多,其次固定性,一旦服务器换了,只要重新绑定域名对应关系就好,最后规范性,例如www.baidu.com/www.zhihu.com,一下子就能知道对应的企业网站。
Q1:为什么要配置DNS
不管访问的是什么,最后实际访问的都会指向ip地址,但光访问域名,服务器并不知道对饮的ip是什么,这个时候就要用到DNS(域名解析服务器)
Q2:什么情况下需要配置DNS
用ADSL和路由器上网是不需要设置DNS的,网络提供商会指定一个DNS服务器地址用于域名解析,如果上不了网就需要检查下DNS配置
ADSL:虚拟拨号接入,指的是通过账号认证的方式接入互联网,比如家里用的猫,就是通过拨号方式接入的。
除了上面两种上网方式不需要在服务器中设置DNS,其他方式不出意外都要手动设置。
Q3:怎么设置DNS
配置分为两种:
Linux下:
此系统分为很多,unix、redhat、centos等等,配置方式大同小异,都是通过修改网络配置文件。
首先,最简单直接确定需不需要配置DNS的方式就是ping一下域名,如果域名不通但是公网地址能ping通,就需要配置了
/opt # ping www.baidu.com
ping: www.baidu.com: Temporary failure in name resolution
/opt # ping www.zhihu.com
ping: www.zhihu.com: Temporary failure in name resolution
/opt #
但这个时候如果我必须需要访问某个域名的话,有两种方式,1 配置DNS服务器解析 ,2 告诉服务器访问某个域名时对应的ip地址
(个人建议方式2,毕竟考虑网络复杂情况和安全问题的话,不要轻易去动网络)
方式1:
ping 域名时,提示 Temporary failure in name resolution
是因为服务器的dns服务还没有配置。
在etc下修改resolv.conf 文件(DNS域名服务器IP配置),有时候不确定是不是域名解析服务的问题,如果114.114.114.114的不行,可以换8.8.8.8的试下,我就是1144的不行,换成84的就可以了
/etc/network # cat /etc/resolv.conf
#nameserver 114.114.114.114
nameserver 8.8.8.8
/etc/network #
不需要重启,修改完此文件是立即生效的
如果还是不通,可以用nslookup命令看下域名解析是否正常,具体用法可以百度
/etc/network # nslookup www.baidu.com
;; connection timed out; no servers could be reached
/etc/network #
我只尝试到了这里,这篇博客写了其他方法,我没有尝试,可以参考:https://blog.csdn.net/Ivan804638781/article/details/122610580
方式2:
修改etc下面的hosts文件(主机名查询静态表)
这个文件的作用就是服务器上负责ip地址和域名快速解析的问题,在没有域名解析服务器的情况下,系统上都会通过查询此文件来找ip域名对应关系
先在有域名解析服务器的电脑上ping目标域名,得到对应ip
/etc/network # cat /etc/hosts
127.0.0.1 localhost
127.0.1.1 aichip
47.93.160.18 srp.megvii.com
36.152.44.95 www.baidu.com
/etc/network #
这样再去ping 百度的时候,就成功了
/etc/network # ping www.baidu.com
PING www.baidu.com (36.152.44.95) 56(84) bytes of data.
64 bytes from www.baidu.com (36.152.44.95): icmp_seq=1 ttl=44 time=54.8 ms
64 bytes from www.baidu.com (36.152.44.95): icmp_seq=2 ttl=44 time=54.8 ms
64 bytes from www.baidu.com (36.152.44.95): icmp_seq=3 ttl=44 time=55.0 ms
64 bytes from www.baidu.com (36.152.44.95): icmp_seq=4 ttl=44 time=54.4 ms
64 bytes from www.baidu.com (36.152.44.95): icmp_seq=5 ttl=44 time=54.1 ms
64 bytes from www.baidu.com (36.152.44.95): icmp_seq=6 ttl=44 time=53.6 ms
^C
--- www.baidu.com ping statistics ---
6 packets transmitted, 6 received, 0% packet loss, time 7ms
rtt min/avg/max/mdev = 53.636/54.451/55.001/0.553 ms
/etc/network #
Windows下:
这个很简单,都是界面化的,只要对网络设置有点了解基本上找到对应修改界面就知道怎么配置了,我这里截了个我本地的界面,本地是用路由器上网的,DNS在路由器上设置,我本地是通过网关-路由器-外网的方式,非常常见的一种上网方式,如果是企业专网,有网络隔离或者防火墙等限制,则需要配置DNS上网方式。