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

目录

一、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
重启服务

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/237940.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

文字转语音在线合成系统源码 附带完整的安装部署教程

现如今,文字转语音(TTS)技术逐渐成为人们获取信息的重要手段之一。然而,市面上的TTS工具大多需要下载安装,且功能较为单一,无法满足用户多样化的需求。因此,开发一款功能强大、易于部署的文字转…

Matlab 分段函数(piecewise)

语法 pw piecewise(cond1,val1,cond2,val2,...) pw piecewise(cond1,val1,cond2,val2,...,otherwiseVal)描述 pw piecewise(cond1,val1,cond2,val2,...) 返回分段表达式或函数pw,当cond1为True时,其值为val1,当cond2为True时&#xff0…

全链路压力测试有哪些主要作用

全链路压力测试是在软件开发和维护过程中不可或缺的一环,尤其在复杂系统和高并发场景下显得尤为重要。下面将详细介绍全链路压力测试的主要作用。 一、全链路压力测试概述 全链路压力测试是指对软件系统的全部组件(包括前端、后端、数据库、网络、中间件等)在高负载…

策略模式-实践

俗话说:条条大路通罗马。在很多情况下,实现某个目标的途径不止一条,例如我们在外出 旅游时可以选择多种不同的出行方式,如骑自行车、坐汽车、坐火车或者坐飞机,可根据实 际情况(目的地、旅游预算、旅游时间…

力扣日记1.14-【二叉树篇】108. 将有序数组转换为二叉搜索树

力扣日记:【二叉树篇】108. 将有序数组转换为二叉搜索树 日期:2023.1.14 参考:代码随想录、力扣 108. 将有序数组转换为二叉搜索树 题目描述 难度:简单 给你一个整数数组 nums ,其中元素已经按 升序 排列,…

什么是信噪比

大家好,今天给大家介绍什么是信噪比,文章末尾附有分享大家一个资料包,差不多150多G。里面学习内容、面经、项目都比较新也比较全!可进群免费领取。 “信噪比”是电子技术中经常用到的一个词组,知道它的确切含义有一定意…

HMM算法(Hidden Markov Models)揭秘

序列数据 机器学习的数据通常有两类,最常见的是独立同分布数据,其次就是序列数据。对于前者,一般出现在各种分类/回归问题中,其最大似然估计是所有数据点的概率分布乘积。对于后者,一般出现在各种时间序列问题中&…

玩转 openEuler (一)-- 系统安装

简介 openEuler 是一款开源操作系统。当前 openEuler 内核源于Linux,支持鲲鹏及其它多种处理器,能够充分释放计算芯片的潜能,是由全球开源贡献者构建的高效、稳定、安全的开源操作系统,适用于数据库、大数据、云计算、人工智能等…

如何让ArcGIS Pro启动显示空白页面

刚接触ArcGIS Pro的你是否会觉得在操作上有那么一些不习惯,从一开始软件启动就发现和ArcGIS差距很大:丰富的欢迎页面,加上默认加载的地图让你眼花缭乱,这里教你如何去掉这些繁杂的内容,还你一个干净的启动页面。 跳过…

StarRocks Awards 2023 年度贡献人物

2023 年行将结束。这一年,StarRocks 继续全方位大步向前迈进,在 300 贡献者的辛勤建设下,社区先后发布了 50 版本,并完成了从全场景 OLAP 到云原生湖仓的进化。 贡献者们的每一行代码、每一场布道,推动着 StarRocks 社…

智慧园区数字孪生智能可视运营平台解决方案:PPT全文82页,附下载

关键词:智慧园区解决方案,数字孪生解决方案,数字孪生应用场景及典型案例,数字孪生可视化平台,数字孪生技术,数字孪生概念,智慧园区一体化管理平台 一、基于数字孪生的智慧园区建设目标 1、实现…

Scratch优秀作品飞翔小鸟

程序说明:在无尽的划痕堆中飞驰而过随着你越来越多地飞进迷宫般的街区,平台变得越来越难。 演示视频 scratch飞翔小鸟 其实这就是一个类似像素小鸟的程序,只不过水管角色就地取材,使用scratch里面的积木图片拼成了水管&#xff0…

java基础知识点系列——数据输入(五)

java基础知识点系列——数据输入(五) 数据输入概述 Scanner使用步骤 (1)导包 import java.util.Scanner(2)创建对象 Scanner sc new Scanner(System.in)(3)接收数据 int i sc…

电流检测方法

电路检测电路常用于:高压短路保护、电机控制、DC/DC换流器、系统功耗管理、二次电池的电流管理、蓄电池管理等电流检测等场景。 对于大部分应用,都是通过感测电阻两端的压降测量电流。 一般使用电流通过时的压降为数十mV~数百mV的电阻值&…

py连接sqlserver数据库报错问题处理。20009

报错 pymssql模块连接sqlserver出现如下错误: pymssql._pymssql.OperationalError) (20009, bDB-Lib error message 20009, severity 9:\nUnable to connect: Adaptive Server is unavailable or does not exist (passwordlocalhost)\n) 解决办法: 打…

基于SELinux三权分立配置方法

1.系统安装 系统安装完成后,系统当前的SELinux配置为: # cat /etc/selinux/config SELINUX=enforcing SELINUXTYPE=targeted 2.SELinux环境准备 # yum install setools policycoreutils.x86_64 selinux-policy-mls.noarch setroubleshoot.x86_64 setools-console -y 3.SELin…

Redis:原理速成+项目实战——Redis实战9(秒杀优化)

👨‍🎓作者简介:一位大四、研0学生,正在努力准备大四暑假的实习 🌌上期文章:Redis:原理速成项目实战——Redis实战8(基于Redis的分布式锁及优化) 📚订阅专栏&…

C# 静态代码织入AOP组件之肉夹馍

写在前面 关于肉夹馍组件的官方介绍说明: Rougamo是一个静态代码织入的AOP组件,同为AOP组件较为常用的有Castle、Autofac、AspectCore等,与这些组件不同的是,这些组件基本都是通过动态代理IoC的方式实现AOP,是运行时…

rime中州韵小狼毫 敏感词脱敏滤镜

快速录入,是任何一个输入法,以及输入人员(无论是否专业)的追求目标之一。现实中,由于各种输入法在录入文本时,都无法完全避免重码的问题,所以在输入过程中都或多或少的需要进行选字/选词操作。这…

【大厂秘籍】 - Java多线程面试题

Java多线程面试题 友情提示,看完此文,在Java多线程这块,基本上可以吊打面试官了 线程和进程的区别 进程是资源分配的最小单位,线程是CPU调度的最小单位 线程是进程的子集,一个进程可以有很多线程,每条线…