CentOS 7实现DNS+DHCP动态更新详解
windows域里有一个功能,dhcp把新分发的ip数据发给DNS服务器,这样只要知道一个人的电脑名字就可以很方便的远程。
linux当然也能很好的实现类似的功能。man 5 dhcpd.conf 有详细描述。
昨天运维帮组织线下的沙龙,又拍云的运维总监邵海杨先生分享了一句“千金难买早知道”。是啊,就在实现动态更新的功能上,在网上找了不少博客,照着做又遇到各种问题,最后不不知道到底什么原理实现的。早知道认真看一下man,问题早解决了,对实现的原理也理解得深些。所以,在这个信息爆炸的时代,很多时候真的互联网没有让人更聪明,反而大量的信息经常把人淹没了。技术,还是需要静下心来去钻研的。
dhcp和dns的基本配置资料比较完善,此处不再赘述。有心的朋友认真看一下man 5 dhcpd.conf,瞧一眼下面配置中标红的部分,相信就能搞定了。
另外分享一个dns chroot的流程,先安装 bind,调通named,然后再安装bind-chroot
执行/usr/libexec/setup-named-chroot.sh /var/named/chroot on
停用named,启用named-chroot即可
systemctl disabled named ; systemctl stop named
systemctl enable named-chroot;systemctl start named-chroot
[root@pxe ~]# cat /etc/dhcp/dhcpd.conf
ddns-update-style interim;
ddns-updates on;
do-forward-updates on;
allow client-updates;
allow bootp;
allow booting;
#allow client-updates;
option space Cisco_LWAPP_AP;
option Cisco_LWAPP_AP.server-address code 241 = array of ip-address;
option space pxelinux;
option pxelinux.magic code 208 = string;
option pxelinux.configfile code 209 = text;
option pxelinux.pathprefix code 210 = text;
option pxelinux.reboottime code 211 = unsigned integer 32;
option architecture-type code 93 = unsigned integer 16;
subnet 192.168.1.0 netmask 255.255.255.0 {
authoritative;
option routers 192.168.1.1;
option subnet-mask 255.255.255.0;
option broadcast-address 192.168.1.255;
option domain-name "it.lab";
option domain-name-servers 192.168.1.200;
range dynamic-bootp 192.168.1.100 192.168.1.199;
key SEC_DDNS {
algorithm hmac-md5;
secret 7ObhTIhKeDFMR2SbbS5s8A==;
};
ddns-domainname "it.lab";
zone it.lab.{
primary 192.168.1.200;
key SEC_DDNS;
}
zone 1.168.192.in-addr.arpa.{
primary 192.168.1.200;
key SEC_DDNS;
}
default-lease-time 600;
max-lease-time 7200;
class "pxeclients" {
match if substring (option vendor-class-identifier, 0, 9) = "PXEClient";
next-server 192.168.1.200;
if option architecture-type = 00:07 {
filename "uefi/syslinux.efi"; }
else {
filename "bios/pxelinux.0"; }
#filename "pxelinux.0"; }
}
}
[root@pxe ~]# cat /etc/named.conf
//
// named.conf
//
// Provided by Red Hat bind package to configure the ISC BIND named(8) DNS
// server as a caching only nameserver (as a localhost DNS resolver only).
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
options {
listen-on port 53 { 127.0.0.1;192.168.1.200; };
listen-on-v6 port 53 { ::1; };
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;};
/*
- If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
- If you are building a RECURSIVE (caching) DNS server, you need to enable
recursion.
- If your recursive DNS server has a public IP address, you MUST enable access
control to limit queries to your legitimate users. Failing to do so will
cause your server to become part of large scale DNS amplification
attacks. Implementing BCP38 within your network would greatly
reduce such attack surface
*/
recursion no;
dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;
/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
pid-file "/run/named/named.pid";
session-keyfile "/run/named/session.key";
};
logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};
zone "." IN {
type hint;
file "named.ca";
};
include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
key SEC_DDNS {
algorithm hmac-md5;
secret 7ObhTIhKeDFMR2SbbS5s8A==;
};
zone "it.lab" IN {
type master;
file "it.lab.forward";
allow-update { key SEC_DDNS ; };
};
zone "1.168.192.in-addr.arpa" IN {
type master;
file "1.168.192.reverse";
allow-update { key SEC_DDNS ; };
};
小米8无法处理指纹 小米8无法处理指纹怎么办
小米8无法处理指纹,小米8无法处理指纹的解决方法:1、使用小米8录入指纹的时候提示无法处理指纹,请重试的话,可以退出后关机重启一下,然后再打开重新录入指纹试试,一般就可以解决问题了。2、若多次尝(0)人阅读时间:2023-09-04小米体重秤校准归零 小米体重秤校准归零怎么调
小米体重秤校准归零,小米体重秤校准归零的五种方法:1、放平体重秤秤角。电子体重秤是比较敏感的,所以先确认四个秤脚是否摆放平稳、是否有悬空、是否有杂物,另外选择坚实的地面;2、移动后数据稳定再(0)人阅读时间:2023-09-04门禁卡消磁了怎么恢复 一招恢复门禁卡失灵
门禁卡消磁了怎么恢复,门禁卡如果已经消磁了,想要恢复起来还是非常困难的。一般情况之下,很多用户都会直接到物业公司,让物业公司重新更换一个新的门禁卡,然后授权一下就可以了。(0)人阅读时间:2023-09-04腾达路由器怎么用手机设置 腾达路由器怎么用手机设置无线桥接
腾达路由器怎么用手机设置,腾达路由器用手机设置的方法如下:1、首先在手机的浏览器中打开腾达路由器的登录页面;2、其次输入登录密码,进入到管理页面;3、最后找到无线设置,就可以重新设置了。(0)人阅读时间:2023-09-04小米8无法处理指纹 小米8无法处理指纹怎么办
小米8无法处理指纹,小米8无法处理指纹的解决方法:1、使用小米8录入指纹的时候提示无法处理指纹,请重试的话,可以退出后关机重启一下,然后再打开重新录入指纹试试,一般就可以解决问题了。2、若多次尝..2023-09-04小米体重秤校准归零 小米体重秤校准归零怎么调
小米体重秤校准归零,小米体重秤校准归零的五种方法:1、放平体重秤秤角。电子体重秤是比较敏感的,所以先确认四个秤脚是否摆放平稳、是否有悬空、是否有杂物,另外选择坚实的地面;2、移动后数据稳定再..2023-09-04门禁卡消磁了怎么恢复 一招恢复门禁卡失灵
门禁卡消磁了怎么恢复,门禁卡如果已经消磁了,想要恢复起来还是非常困难的。一般情况之下,很多用户都会直接到物业公司,让物业公司重新更换一个新的门禁卡,然后授权一下就可以了。..2023-09-04腾达路由器怎么用手机设置 腾达路由器怎么用手机设置无线桥接
腾达路由器怎么用手机设置,腾达路由器用手机设置的方法如下:1、首先在手机的浏览器中打开腾达路由器的登录页面;2、其次输入登录密码,进入到管理页面;3、最后找到无线设置,就可以重新设置了。..2023-09-04