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

目录

一、DHCP分配

1. 动态分配

1.1 服务端服务安装

1.2 修改服务端dhcp配置 

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

2. 根据mac固定分配

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

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

二、时间同步

1. 手动同步

2. 自动同步

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

3.1 图示

3.2 环境搭建时间校准 

3.2.1 时间服务器配置 

3.2.2 内网设备配置  

3.2.3 重启服务关闭防火墙 

3.2.4 客户机模拟时间校准

三、DNS正向解析

1. DNS解析过程介绍

2. DNS服务器类型

3. DNS查询方式

4. 内网搭建dns服务器

4.1 安装bind相关软件

4.2 关闭防火墙,开启服务

4.3 配置bind服务

4.4 配置区域文件

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

4.6 修改网卡配置重启服务 

4.7 解析


一、DHCP分配

1. 动态分配

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

1.1 服务端服务安装

[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配置 

[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,重启查询网卡信息

[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服务配置

[root@localhost ~]# vim /etc/dhcp/dhcpd.conf

[root@localhost dhcp]# systemctl restart dhcpd.service
#重启dhcp服务

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

[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. 手动同步

[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. 自动同步

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

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

3.1 图示

3.2 环境搭建时间校准 

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

3.2.2 内网设备配置  
[root@localhost ~]# vim /etc/chrony.conf

3.2.3 重启服务关闭防火墙 
时间服务器:
[root@localhost ~]# systemctl restart chronyd
[root@localhost ~]# systemctl restart firewalld.service 
[root@localhost ~]# setenforce 0
内网设备客户机:
[root@localhost ~]# systemctl restart chronyd   #时间服务器,内网机均需要重启chronyd服务
3.2.4 客户机模拟时间校准
[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相关软件

[root@localhost ~]# yum install -y bind*

4.2 关闭防火墙,开启服务

[root@localhost ~]# systemctl stop firewalld.service 
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl start named

4.3 配置bind服务

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

4.4 配置区域文件

[root@localhost ~]# vim /etc/named.rfc1912.zone

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

[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 修改网卡配置重启服务 

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

4.7 解析

[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 中有新邮件

相关推荐

  1. Linux ubuntu 设置固定IP以及DNS

    2024-01-12 06:16:03       35 阅读
  2. RHCE: 主从DNS服务器配置 (实现正反解析

    2024-01-12 06:16:03       38 阅读

最近更新

  1. TCP协议是安全的吗?

    2024-01-12 06:16:03       18 阅读
  2. 阿里云服务器执行yum,一直下载docker-ce-stable失败

    2024-01-12 06:16:03       19 阅读
  3. 【Python教程】压缩PDF文件大小

    2024-01-12 06:16:03       19 阅读
  4. 通过文章id递归查询所有评论(xml)

    2024-01-12 06:16:03       20 阅读

热门阅读

  1. Spring MVC 文件上传

    2024-01-12 06:16:03       67 阅读
  2. 【Linux】Linux 系统编程——相对路径和绝对路径

    2024-01-12 06:16:03       39 阅读
  3. C++面试:对象生命周期 & 垃圾回收

    2024-01-12 06:16:03       31 阅读
  4. Android Debug Bridge(ADB)常用指令记录

    2024-01-12 06:16:03       37 阅读
  5. Springboot的redisTemplate究竟用的是哪个bean

    2024-01-12 06:16:03       34 阅读
  6. 数据结构-树(C++)

    2024-01-12 06:16:03       39 阅读
  7. Wargames与bash知识14

    2024-01-12 06:16:03       40 阅读
  8. Spark: 检查数据倾斜的方法以及解决方法总结

    2024-01-12 06:16:03       31 阅读