Linux网络服务之DNS域名解析

1. DNS域名解析服务

1.1 DNS基本概述

DNS含义:域名解析服务器

DNS作用:将域名转化成IP地址

目的:因为IP地址太难记忆

1.1.1 DNS系统的作用

  • 正向解析:根据域名查找对应的IP地址

  • 反向解析:根据IP地址查找对应的域名

  • DNS系统的分布式数据结构

前面有 . 表示域名

1.1.2 DNS服务器类型

  • 缓存域名服务器

    • 只提供域名解析结果的缓存功能,目的在于提高查询速度和效率, 但没有自己控制的区域地址数据。
  • 主域名服务器

    • 管理和维护所负责解析的域内解析库的服务器
  • 从域名服务器

    • 从主服务器或从服务器"复制"(区域传输)解析库副本

      序列号:解析库版本号,主服务器解析库变化时,其序列递增

      刷新时间间隔:从服务器从主服务器请求同步解析的时间间隔

      重试时间间隔:从服务器请求同步失败时,再次尝试时间间隔

      过期时长:从服务器联系不到主服务器时,多久后停止服务

      通知机制:主服务器解析库发生变化时,会主动通知从服务器

1.2 DNS查询类型及原理

查询方式

  • 递归查询
    • 一般客户机和本地DNS服务器之间属于递归查询,即当客户机向DNS服务器发出请求后, 若DNS服务器本身不能解析,则会向另外的DNS服务器发出查询请求,得到最终的肯定或否定的结果后转交给客户机。此查询的源和目标保持不变,为了查询结果只需要发起一次查询。(不需要自己动手)
  • 迭代查询
    • 一般情况下(有例外)本地的DNS服务器向其它DNS服务器的查询属于迭代查询,如:若对方不能返回权威的结果,则它会向下一个DNS服务器 (参考前一个DNS服务器返回的结果 )再次发起进行查询,直到返回查询的结果为止。此查询的源不变,但查询的目标不断变化,为查询结果一般需要发起多次查询。(需要自己动手)

1.2.1 查询原理过程

  1. 本地host文件,有直接访问
  2. 没有的话,先去找dns缓存服务器,有直接告诉你,没有才会去问根域服务器
  3. 根域服务器管理的主机域名类型www. 、mail. 、bilibili. 不会直接告诉你,会让你去找管理.com的域名服务器
  4. 根据线索找到.com的域名服务器 他只能解析www.com. mail.com这样的域名,会让你去找.baidu的域名服务器
  5. 根据线索找到.baidu服务,这个主机刚好归我管辖,所以直接反馈结果,这个反馈结果的域名服务器权威递归

1.2.2 DNS软件bind

DNS软件BIND软件安装

  • BIND(Berkeley Internet Name Daemon)
    • BIND是应用最广泛的DNS服务程序
[root@localhost ~]#yum install bind* -y 
#自带网络解析功能  监听地址any  权限any

DNS服务器软件:bind、powerdns、dnsmasq、unbound、coredns

  • bind:服务器
  • bind-libs:相关库
  • bind-utils:客户端
  • bind-chroot:安全包,将dns相关文件放至/var/named/chroot/
主配置文件   /etc/named.conf

域名文件     /etc/named.rfc.1912.conf

数据库文件   /var/named/    kll.com.zone(在域名配置文件定义的)   手写 含义多

软件名  bind
程序名  named

2. 实际操作

正向解析

[root@localhost ~]#yum install bind* -y             #安装DNS服务程序bind包

[root@localhost ~]#systemctl stop firewalld.service   #关闭防火墙
[root@localhost ~]#setenforce 0                       #关闭selinux
[root@localhost ~]#systemctl start named              #开启服务

[root@localhost ~]#vim /etc/sysconfig/network-scripts/ifcfg-ens33
#进入网卡配置文件

#修改DNS地址

[root@localhost ~]#systemctl restart network    #重启网络
[root@localhost ~]#cat /etc/resolv.conf         #查看DNS号

[root@localhost ~]#rpm -qc bind   #查看配置文件包

[root@localhost ~]#vim /etc/named.conf   #修改配置文件


[root@localhost ~]#rndc reload   #重新加载

[root@localhost ~]#vim /etc/named.rfc1912.zones    #进入域名配置文件修改


[root@localhost ~]#cd /var/named/     #切换目录
[root@localhost named]#ls             #查看
[root@localhost named]#cp -p named.localhost ./lj.com.zone   #保留权限复制
[root@localhost named]#ls             #查看

[root@localhost named]#vim lj.com.zone     #进入配置文件修改

[root@localhost named]#systemctl restart named  #重新启动
[root@localhost named]#host mail.lj.com         #验证

主从复制

主服务器地址:192.168.8.100

从服务器地址:192.168.8.106

主服务器配置

[root@localhost ~]#yum install bind bind-utils.x86_64 -y
#安装bind软件

[root@localhost ~]#systemctl stop firewalld.service  #关闭防火墙
[root@localhost ~]#setenforce 0                      #关闭selinux
[root@localhost ~]#systemctl start named             #开启服务

[root@localhost named]#vim /etc/sysconfig/network-scripts/ifcfg-ens33   #进入网卡配置文件


[root@localhost named]#systemctl restart network  #重启网络

[root@localhost named]#vim /etc/named.conf #进入配置文件


[root@localhost named]#vim /etc/named.rfc1912.zones   #添加主服务器配置


[root@localhost ~]#cd /var/named   #切换目录
[root@localhost named]#ls          #查看
[root@localhost named]#cp -p named.localhost ./lj.com.zone   #保留权限复制文件
[root@localhost named]#ls          #查看

[root@localhost named]#vim lj.com.zone  #进入配置文件


[root@localhost named]#rndc reload        #重新加载DNS服务
server reload successful
[root@localhost named]#host www.lj.com    #host验证
www.lj.com has address 192.168.8.104

从服务器配置

[root@localhost ~]#yum install bind bind-utils.x86_64 -y
#安装bind软件

[root@localhost ~]#systemctl stop firewalld.service  #关闭防火墙
[root@localhost ~]#setenforce 0                      #关闭selinux
[root@localhost ~]#systemctl start named             #开启服务

[root@localhost ~]#vim /etc/named.conf   #进入配置文件


[root@localhost ~]#vim /etc/named.rfc1912.zones  #添加从服务器配置


[root@localhost ~]#rndc reload   #重新加载DNS服务

[root@localhost ~]#ls /var/named/slaves   #查看文件

[root@localhost ~]#dig www.lj.com @192.168.8.106  #dig验证

bond多网卡绑定

bond原理

网卡绑定就是把多张物理网卡通过软件虚拟成一个虚拟的网卡,配置完毕后,所有的物理网卡的ip和mac将会变成相同的。多网卡同时工作可以提高网络速度,还可以实现网卡的负载均衡、冗余。

实际操作

添加网络适配器



[root@localhost ~]#ifconfig   #查看网卡配置

[root@localhost ~]#cd /etc/sysconfig/network-scripts/  #切换目录
[root@localhost network-scripts]#ls   #查看网卡

[root@localhost network-scripts]#vim ifcfg-bond0   #建立虚拟网卡bond0


[root@localhost network-scripts]#vim ifcfg-ens33   #进入网卡ens33配置文件



[root@localhost network-scripts]#cp ifcfg-ens33 ifcfg-ens36   #将网卡ens33复制到ens36
[root@localhost network-scripts]#vim ifcfg-ens36    #进入ens36配置文件


[root@localhost network-scripts]#systemctl restart network   #重新启动网络

[root@localhost ~]#ping 192.168.8.22  #测试连通性

[root@localhost ~]#ssh 192.168.8.22   #远程连接

[root@localhost ~]#cat /proc/net/bonding/bond   #查看虚拟网卡

posted @ 2023-08-03 19:51  Candy独角兽  阅读(243)  评论(0)    收藏  举报