Linux动态分配IP与正向解析DNS

目录

一、DHCP分配

[1. 动态分配](#1. 动态分配)

[1.1 服务端服务安装](#1.1 服务端服务安装)

[1.2 修改服务端dhcp配置](#1.2 修改服务端dhcp配置)

[1.3 修改客户端dhcp,重启查询网卡信息](#1.3 修改客户端dhcp,重启查询网卡信息)

[2. 根据mac固定分配](#2. 根据mac固定分配)

[2.1 修改服务器端dhcp服务配置](#2.1 修改服务器端dhcp服务配置)

[2.2 客户端自动获取,查看网卡信息](#2.2 客户端自动获取,查看网卡信息)

二、时间同步

[1. 手动同步](#1. 手动同步)

[2. 自动同步](#2. 自动同步)

[3. 搭建本地时间同步服务器](#3. 搭建本地时间同步服务器)

[3.1 图示](#3.1 图示)

[3.2 环境搭建时间校准](#3.2 环境搭建时间校准)

[3.2.1 时间服务器配置](#3.2.1 时间服务器配置)

[3.2.2 内网设备配置](#3.2.2 内网设备配置)

[3.2.3 重启服务关闭防火墙](#3.2.3 重启服务关闭防火墙)

[3.2.4 客户机模拟时间校准](#3.2.4 客户机模拟时间校准)

三、DNS正向解析

[1. DNS解析过程介绍](#1. DNS解析过程介绍)

[2. DNS服务器类型](#2. DNS服务器类型)

[3. DNS查询方式](#3. DNS查询方式)

[4. 内网搭建dns服务器](#4. 内网搭建dns服务器)

[4.1 安装bind相关软件](#4.1 安装bind相关软件)

[4.2 关闭防火墙,开启服务](#4.2 关闭防火墙,开启服务)

[4.3 配置bind服务](#4.3 配置bind服务)

[4.4 配置区域文件](#4.4 配置区域文件)

[4.5 编辑数据库文件,解析记录对应关系](#4.5 编辑数据库文件,解析记录对应关系)

[4.6 修改网卡配置重启服务](#4.6 修改网卡配置重启服务)

[4.7 解析](#4.7 解析)


一、DHCP分配

1. 动态分配

DHCP服务避免了因手动设置IP地址所产生的错误。客户机可以获得DHCP服务器分配下来的IP信息:包括IP地址、DNS等,从而带来方便安全的的体验。

1.1 服务端服务安装

bash 复制代码
[root@localhost ~]# yum install -y dhcp    #安装dhcp服务
[root@localhost ~]# rpm -qc dhcp           #查看配置文件
/etc/dhcp/dhcpd.conf
/etc/dhcp/dhcpd6.conf
/etc/openldap/schema/dhcp.schema
/etc/sysconfig/dhcpd
/var/lib/dhcpd/dhcpd.leases
/var/lib/dhcpd/dhcpd6.leases
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf 
#空的
#
# DHCP Server Configuration file.
#   see /usr/share/doc/dhcp*/dhcpd.conf.example
#       在此目录下有配置模板
#   see dhcpd.conf(5) man page
[root@localhost ~]# cp /usr/share/doc/dhcp-4.2.5/dhcpd.conf.example /etc/dhcp/dhcpd.conf 
cp:是否覆盖"/etc/dhcp/dhcpd.conf"? y
#将文件拷贝过来覆盖
[root@localhost dhcp]# cd /etc/dhcp/
[root@localhost dhcp]# vim dhcpd.conf

1.2 修改服务端dhcp配置

bash 复制代码
[root@localhost ~]# systemctl start dhcpd.service
[root@localhost ~]# systemctl status dhcpd.service
● dhcpd.service - DHCPv4 Server Daemon
   Loaded: loaded (/usr/lib/systemd/system/dhcpd.service; disabled; vendor preset: disabled)
   Active: active (running) since 三 2024-01-10 22:07:03 CST; 18s ago

1.3 修改客户端dhcp,重启查询网卡信息

bash 复制代码
[root@localhost ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.190.10  netmask 255.255.255.0  broadcast 192.168.190.255
[root@localhost ~]# cat /etc/resolv.conf       #查看当前系统使用的DNS服务器列表
# Generated by NetworkManager
search example.org
nameserver 114.114.114.114                     #局部配置优先 

由dns信息可见,dhcp服务局部配置优先级高于全局配置。

2. 根据mac固定分配

在特殊环境中,需要为某台设备单独配置固定的IP信息,为了避免手动配置过程中将同一个IP分配给多台设备,可以根据mac地址指定设备IP。

2.1 修改服务器端dhcp服务配置

bash 复制代码
[root@localhost ~]# vim /etc/dhcp/dhcpd.conf
bash 复制代码
[root@localhost dhcp]# systemctl restart dhcpd.service
#重启dhcp服务

2.2 客户端自动获取,查看网卡信息

bash 复制代码
[root@localhost ~]# ifconfig ens33
ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 192.168.190.66  netmask 255.255.255.0  broadcast 192.168.190.255
        inet6 fe80::634f:e6f9:d634:c6b3  prefixlen 64  scopeid 0x20<link>
        ether 00:0c:29:62:c7:6d  txqueuelen 1000  (Ethernet)

二、时间同步

1. 手动同步

bash 复制代码
[root@localhost ~]# date
2024年 01月 10日 星期三 22:58:47 CST
[root@localhost ~]# date -s '1 year'             #一年后
2025年 01月 10日 星期五 22:59:05 CST
[root@localhost ~]# ntpdate ntp.aliyun.com       #同阿里云时间服务器校准(立马校准)
10 Jan 22:59:19 ntpdate[1751]: step time server 203.107.6.88 offset -31622399.968146 sec

2. 自动同步

bash 复制代码
[root@localhost ~]# yum install chrony.x86_64 -y
#chrony软件:一点点的快速同步时间,避免立马校准丢失部分时段日志;确定了计算机增减时间的比率,并对此进行平滑调整。

3. 搭建本地时间同步服务器

3.1 图示

3.2 环境搭建时间校准

3.2.1 时间服务器配置
bash 复制代码
[root@localhost ~]# vim /etc/chrony.conf  #编辑时间同步服务配置

3.2.2 内网设备配置
bash 复制代码
[root@localhost ~]# vim /etc/chrony.conf
3.2.3 重启服务关闭防火墙
bash 复制代码
时间服务器:
[root@localhost ~]# systemctl restart chronyd
[root@localhost ~]# systemctl restart firewalld.service 
[root@localhost ~]# setenforce 0
内网设备客户机:
[root@localhost ~]# systemctl restart chronyd   #时间服务器,内网机均需要重启chronyd服务
3.2.4 客户机模拟时间校准
bash 复制代码
[root@localhost ~]# date -s '1 year'      #模拟修改时间,一年后
2025年 01月 11日 星期六 19:51:54 CST
[root@localhost ~]# chronyc sources -v    #查看当前系统的时间同步源信息
210 Number of sources = 1                 #当前系统一共连接了1个NTP服务器

  .-- Source mode  '^' = server, '=' = peer, '#' = local clock.
 / .- Source state '*' = current synced, '+' = combined , '-' = not combined,
| /   '?' = unreachable, 'x' = time may be in error, '~' = time too variable.
||                                                 .- xxxx [ yyyy ] +/- zzzz
||      Reachability register (octal) -.           |  xxxx = adjusted offset,
||      Log2(Polling interval) --.      |          |  yyyy = measured offset,
||                                \     |          |  zzzz = estimated error.
||                                 |    |           \
MS Name/IP address         Stratum Poll Reach LastRx Last sample               
===============================================================================
^? 192.168.190.100               0   6     0     -     +0ns[   +0ns] +/-    0ns

[root@localhost ~]# ntpdate 192.168.190.100  #时间跨度长手动同步
11 Jan 19:55:52 ntpdate[2117]: step time server 192.168.190.100 offset -31622401.090556 sec
[root@localhost ~]# date
2024年 01月 11日 星期四 19:55:55 CST

服务器源状态:

  • ^表示服务器,=表示对等方,#表示本地连接的参考时钟
  • *:表示chronyd当前同步到的源
  • +:表示可接受的信号源,与选定的信号源组合在一起
  • -:表示被合并算法排除的可接受源
  • ?:指示已失去连接性或其数据包未通过所有测试的源。它也显示在启动时,直到从中至少收集了3个样本为止(校准成功后变为*)
  • x:表示chronyd认为是虚假行情的时钟(即,其时间与大多数其他来源不一致)
  • 〜:表示时间似乎具有太多可变性的来源

三、DNS正向解析

1. DNS解析过程介绍

访问 www.baidu.com服务器

  1. 先看我本机的hosts文件,如果有直接访问,如果没有就去找你设置缓存dns
  2. 如果缓存服务器有,直接反馈结果 (递归),如果没有就需要迭代查询直接去找根域服务
  3. 由于根域服务器 只能解析根无法解析 www.baidu.com 但是根域服务器让你去找级域服务器
  4. 一级域发现自己 也解析 不了,让你去找二级域
  5. 二级域发现这台服务在自己的 管理范围内,直接反馈结果给 缓存服务器
  6. 缓存服务器 再交给 客户
  7. 其中正向解析是根据域名查找对应的IP地址

2. DNS服务器类型

  • 缓存域名服务器:只提供域名解析结果的缓存功能,目的在于提高查询速度和效率,但是没有自己控制的区域地址数据。构建缓存域名服务器,必须设置根域或指定其他DNS服务器作为解析来源。
  • 主域名服务器:管理和维护所负责解析的域内解析库的服务器
  • 从域名服务器:从主服务器或从服务器"复制"(区域传输)解析库副本

3. DNS查询方式

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

4. 内网搭建dns服务器

目的:在内网使用域名访问,为了方便访问内网,供内部使用

4.1 安装bind相关软件

bash 复制代码
[root@localhost ~]# yum install -y bind*

4.2 关闭防火墙,开启服务

bash 复制代码
[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start named

4.3 配置bind服务

bash 复制代码
[root@localhost ~]# vim /etc/named.conf
[root@localhost ~]# rndc reload           #重新加载DNS服务
server reload successful

4.4 配置区域文件

bash 复制代码
[root@localhost ~]# vim /etc/named.rfc1912.zone

4.5 编辑数据库文件,解析记录对应关系

bash 复制代码
[root@localhost ~]# cd /var/named/         #切换目录
[root@localhost named]# ls
chroot  chroot_sdb  data  dynamic  dyndb-ldap  named.ca  named.empty  named.localhost  named.loopback  slaves
[root@localhost named]# cp -a named.localhost fql.com.zone   #保留权限复制模板
[root@localhost named]# vim fql.com.zone 

4.6 修改网卡配置重启服务

bash 复制代码
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
[root@localhost ~]# systemctl restart network
[root@localhost ~]# systemctl restart named       #重启bind服务

4.7 解析

bash 复制代码
[root@localhost ~]# host www.fql.com
www.fql.com has address 192.168.190.102
[root@localhost ~]# host wwwwww.fql.com
wwwwww.fql.com has address 192.168.190.100
[root@localhost ~]# host ftp.fql.com
ftp.fql.com has address 192.168.190.103
[root@localhost ~]# host abc.fql.com
abc.fql.com is an alias for www.fql.com.
www.fql.com has address 192.168.190.102
[root@localhost ~]# host fql.com
fql.com has address 192.168.190.100
您在 /var/spool/mail/root 中有新邮件
相关推荐
北京华人开创公司13 天前
GPS北斗卫星授时服务器功能是什么?应用是什么?
运维·服务器·卫星时钟服务器·时间同步·北斗授时服务·卫星授时
迷茫的蜉蝣1 个月前
linux之时间服务器
linux·服务器·时间同步·ntp同步
橘色的喵2 个月前
GNSS和PTP时间同步的基础原理介绍
gnss·phy·ptp·时间同步·gptp
橘色的喵2 个月前
使用Python实现系统时间跳变检测与日志记录
python·时间同步·timestamp·时间跳变·时间回退·jump·time jump
DeanLeung2 个月前
CentOS 7.9 局域网配置指定同步时间服务器
centos·时间同步·ntp
极客先躯3 个月前
高级java每日一道面试题-2024年9月26日-运维篇[分布式篇]-如何保证每个服务器的时间都是同步的?
linux·运维·分布式·面试·时间同步·网络时间协议(ntp)·精密时间协议(ptp)
安徽京准3 个月前
京准电钟:NTP授时服务器(卫星授时)助力云计算
运维·服务器·云计算·时间同步·卫星授时服务·网络授时服务·ntp时钟同步
橘色的喵5 个月前
PTPD 在 QNX 系统上的授时精度验证与误差排查
ptp·时间同步·时钟同步·qnx·ptpd·so_timestamp
安徽京准6 个月前
京准电钟 NTP时间同步服务器助力水库水坝水利自动化建设
卫星时钟服务器·ntp授时服务器·时间同步·时钟同步·ntp时间服务器·时钟服务器·时间服务器
头上插花萌萌哒10 个月前
Centos系统(Linux)配置ntp服务端和客户端及常见问题汇总
linux·运维·centos·时间同步·ntpdate·ntpd