Linux的DHCP工作原理和dns服务器

发布时间:2024年01月15日

目录

一、DHCP原理

1.DHCP的好处

2.DHCP的分配方式

3.实验

二、dns服务器

1.什么是dns

2.dns域名解析

3、在内网搭建dns


一、DHCP原理

DCHP工作原理使用C/S架构?

(1)第一步,客户端广播发送一个discover报文寻找DHCP服务器。

(2)第二步,DHCP服务器收到discover报文后广播返回一个offer报文,里面包括可分配的ip、子网掩码、网关、广播形式等。

(3)第三步,计算机收到第一个DHCP服务器的offer报文后广播回复服务器一个request报文,告诉服务器请求分配的ip地址等。华为路由器此步骤为单播

(4)第四步,服务器以广播形式返回一个ACK确认报文并将可用ip地址和租约告诉客户端。

1.DHCP的好处

减少管理员的工作量

避免输入错误的可能

避免IP地址冲突
当更改IP地址段时,不需要重新配置每个用户的IP地址
提高了IP地址的利用率
方便客户端的配置

2.DHCP的分配方式

1.自动分配: 分配到一个IP地址后永久使用

2.手动分配:由DHCP服务器管理员专门指定IP地址

3.动态分配: 使用完后释放该IP,供其它客户机使用

3.实验

本地DHCP服务器搭建,需要在虚拟机中添加网络适配器

yum install dhcp -y ## 安装 dhcp 软件
cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
#复制 配置文件的模板
vim /etc/dhcp/dhcpd.conf 
复制粘贴 5yy p
subnet 192.168.91.0 netmask 255.255.255.0 {
 range 192.168.91.50 192.168.91.80;
 option routers 192.168.91.2;
 option domain-name-servers 114.114.114.114; 
}
systemctl start dhcpd #启动服务
验证 打开 
win 调整 获取地址 为 dhcp
打开 cmd 命令
ipconfig/release #释放ip地址配置
ipconfig/renew #重新获取地址
ipconfig/all #显示所有的网卡配置
linux机器 
vim /etc/sysconfig/netwprk-scripts/ifcfg-ens33
BOOTPROTO =dhcp
ip配置删除
systemctl restart networ

二、dns服务器

1.什么是dns

DNS域名解析服务:是将域名和ip地址相互映射的一个分布式数据库。

正向解析:将域名解析为对应的ip地址。

反向解析:通过ip地址解析对应的域名

举例:www.baidu.com

.? ? ?根域

.com? ?顶级域 一级域

.baidu? ? 二级域

www? ? ?主机名

一个 dns 服务器 只管 自己范围内的 解析

2.dns域名解析

一次dns 解析的过程:

我要访问 www.baidu.com 服务器

1.先看我本机的 /etc/hosts 文件,如果有直接访问, 如果没有就去找你设置的缓存dns服务器

2. 如果 缓存服务器有, 直接反馈结果(递归),如果没有就需要迭代查询, 直接去找 根域服务

?3.由于根域服务器 只能 解析根 无法解析 www.baidu.com 但是 根域服务器会让你去找 一级域服务器

4.一级域发现自己 也解析 不了, 让你去找二级域

?5.二级域发现这台服务器在自己的 管理范围内,直接反馈结果给 缓存服务器

6.缓存服务器 再交给 客户 权威dns服务器:只有他说了算,最后解析成功的服务器为权威服务器

3、在内网搭建dns

首先安装bind

# yum install bind

然后开始主配置文件

主配置文件修改:
vim /etc/named.conf
options {
listen-on port 53 {localhost;}  #监听localhost地址的UDP 53端口,localhost表示提供dns服务的ip,也可用any表示所有
listen-on-v6 port 53 {::1;}   #ipv6地址设置,若不适用可注释或删除
directory "/var/named";       #区域数据文件默认的存放位置
dump-file"/var/named/data/cache_dump.db";     #域名缓存数据库文件的位置
statistics-file "/var/named/data/named_stats.txt";    #状态统计文件的位置
memstatistics-file "/var/named/data/named_mem_stats.txt";    #内存统计文件的位置
allow-query { any; };  #允许使用本DNS解析服务的网段或ip地址,也可用any表示所有
}

区域配置文件修改:
vim /etc/named.rfc1912.zones
zone  "localhost"  IN {         #正向解析配置,localhost表示域名
type  master                    #类型为主DNS服务器
file “named.loopback”;         #指定区域数据文件为named.loopback
allow-update {none;};#表示若主dns故障切换到另一个指定的备用DNS服务器,none表示没有不指定
};
 
zone "1.0.0.127.in-addr.arpa" IN { #反向解析配置,1.0.0.127表示反向的ip,注意要反向写ip地址
type master;            #类型为主DNS服务器
file "named.loopback";  #指定区域数据文件为named.loopback
allow-update { none; }; #表示若主dns故障切换到另一个指定的备用DNS服务器,none表示没有不指定
};
制作区域数据配置文件lhj.com:
cd /var/named                 #进入区域数据配置文件模板文件目录
cp -p named.localhost lhj.com #名字为区域配置文件内写的名称lhj.com,注意拷贝时加 -p 保留权限,否则启动服务会报错不能识别
vim  /var/named/lhj.com       #修改复制好的区域数据配置文件
区域数据配置文件内容:
$TTL 1D    表示设置缓存解析结果的有效时间
?                  0    :serial  #更新序列号,一般是10以内的证书
 
?                  1D   :refresh #刷新时间,重新下载地址数据的间隔
 
?                  1H   :retry   #重试间隔,下载失败后的重试间隔
 
?                  1W   :expire  #失效时间,超过该时间仍然无法下载则放弃
 
@   IN SOA @  rename.invalid.   {   
#@为变量表示当前DNS域名注意必须从根域写起,IN表示使用INTERNET协议,SOA表示起始授权记录,rename.invalid. 表示邮箱
?         NS     @        #NS(nameserver)表示当前区域的DNS服务器的名称为@可修改
?         A     127.0.0.1 #A表示DNS服务器正向解析的地址为127.0.0.1 需要对应主配置文件内ip地址
?         AAAA  ;;1       #表示ipv6服务器地址,不用可删除
?         PTR             #表示DNS服务器反向解析,需要手动添加,默认没有
www  IN  A   127.0.0.2   #表示www服务的ip地址为127.0.0.2
mail  IN   A  127.0.0.3  #表示mail服务的ip地址为127.0.0.3
2  IN PTR  www.localhost. com    #表示dns服务器网段的2 ip对应为www域名
3  IN PTR  mail.localhost. com   #表示dns服务器网段的3 ip对应mail域名
}

systemctl restart named
重启服务

文章来源:https://blog.csdn.net/Miraitowa_xu/article/details/135587276
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。