搭建DNS服务器实现地址解析

我们平时在windows或者linux上访问网页都是通过网址,也就是域名来访问的,但是数据包的传送是通过IP进行传输的,那么为什么我们能通过网址访问到某个网页呢? 这是因为在访问过程中DNS服务器通过域名解析,把网址解析成IP,我们才会访问到想要访问的网页

下面我们来学习DNS服务器的搭建

先要保证虚拟机可以上网:这里有详细步骤参考

[root@server Desktop]# ping 183.232.231.173   # ping百度的ip可以ping通

在这里插入图片描述

[root@server Desktop]# ping www.baidu.com    # 但是百度的域名ping 不通,是因为没有作域名解析

在这里插入图片描述

# DNS(提供域名解析功能)就派上用场了

[root@server Desktop]# vim /etc/hosts  # 本地解析文件,不用重启服务,即改即生效  
	6 183.232.231.173  www.baidu.com
[root@server Desktop]# ping www.baidu.com    # 此时就可以通过ping域名来ping通baidu

在这里插入图片描述

# 但是,每个网址的域名都需要自己告诉系统,这样太麻烦了,我们可以通过编写/etc/resolv.conf来通过搭建DNS服务器,让DNS服务器为我们实现域名解析

[root@server Desktop]# vim /etc/resolv.conf    # 指定dns做网络解析 
nameserver 114.114.114.114    # 114.114.114.114是电信的域名地址
[root@server Desktop]# ping www.taobao.com   #我们没有做本地解析,直接ping淘宝的域名就可以ping通

在这里插入图片描述

# 那么问题来了,/etc/hosts  和 /etc/resolv.conf这两个文件的优先级,哪一个更高呢?
默认/etc/hosts的优先级高,但是这个优先级可以更改

[root@server Desktop]# vim /etc/hosts 
172.25.254.254  www.baidu.com   # 自定义一个解析
[root@server Desktop]# ping www.baidu.com   # 读取的是/etc/hosts文件里的解析

在这里插入图片描述

[root@server Desktop]# vim /etc/nsswitch.conf  # 本地解析文件和dns读取的优先级调整 
39 hosts:      dns  files    # 修改优先级,files代表本地解析文件,dns代表dns服务器,哪个在前面哪个优先 	
[root@server Desktop]# ping www.baidu.com   # 这时先读取的就是/etc/resolv.conf文件

在这里插入图片描述

# 如何设定使/etc/resolv.conf文件的解析不会随着ip的改变而更改

[root@server network-scripts]# vim ifcfg-eth0   # 把ip改为动态 
  DEVICE=eth0  
  BOOTPROTO=dhcp  
  ONBOOT=yes  
  IPADDR0=192.168.0.242  
  NETMASK=255.255.255.0  
  GATEWAY0=192.168.0.142
[root@server network-scripts]# systemctl restart network
[root@server network-scripts]# cat /etc/resolv.conf 
# Generated by NetworkManagerdomain example.comsearch example.com
nameserver 172.25.254.254    # 之前文件中做的解析就会被替换	
[root@server network-scripts]# vim ifcfg-eth0   # 即使在文件中给定DNS也不会生效  
 DEVICE=eth0  
 BOOTPROTO=dhcp  
 ONBOOT=yes  
 IPADDR0=192.168.0.242  
 NETMASK=255.255.255.0  
 GATEWAY0=192.168.0.142  
 DNS1=114.114.114.114
[root@server network-scripts]# systemctl restart network
[root@server network-scripts]# cat /etc/resolv.conf  # 有两个解析,第一个是动态获取到的,先生效	

在这里插入图片描述

#那么如何解决这个问题呢?

[root@server network-scripts]# vim ifcfg-eth0 
 DEVICE=eth0  
 BOOTPROTO=dhcp  
 ONBOOT=yes  
 IPADDR0=192.168.0.242  
 NETMASK=255.255.255.0  
 GATEWAY0=192.168.0.142  
 PEERDNS=no
[root@server network-scripts]# systemctl restart network
[root@server network-scripts]# cat /etc/resolv.conf  # 不会消失,也不会被替换

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值