由于项目需要,最近在CentOS 6系统中配置了一个DDNS(Dynamic DNS)服务器,

从而实现了动态对域名的添加删除等操作,记录一下步骤,备忘。

第一步 安装BIND

BIND全称是Berkeley Internet Name Daemon,是现今互联网上最常用的DNS服务

器软件,现在由互联网系统协会(Internet Systems Consortium)负责开发与维护。

在CentOS上安装BIND非常的简单,只需要使用root权限执行:

yum install bind bind-utils

就可以安装好BIND以及DNS相关的一些工具,包括dig以及nsupdate等,需要注意的是,在CentOS上,BIND实际的服务名是named,因此需要使用:

service named start|stop|restart

来对BIND进行操作。

第二步 配置静态DNS

在配置动态DNS之前,首先配置一个静态的DNS,来测试一下BIND能否正常工作。

打开/etc/named.conf文件:

vim /etc/named.conf

在文件的末尾,加上:

zone “mytest.com” IN {

type master;

file “mytest.com”;

allow-update { none; };

};

这里,声明了一个新的zone:”mytest.com”,并且指明了zone文件为”mytest.com”,根据文件上方指定的目录,默认的zone文件存放在/var/named目录下。

因此,我们需要在这个目录下,新建一个”mytest.com”文件,用来存放zone描述。

vim /var/named/mytest.com

在文件中输入以下内容:

$TTL 1D ;声明了TTL时间为1天

@ IN SOA @ mytest.com. (

0 ; serial

1D ; refresh

1H ; retry

1W ; expire

3H ) ; minimum

$ORIGIN mytest.com. ;表示接下来的配置都已mytest.com.为根

;如果不写这一行,就需要写全整个域名

;如test1.mytest.com.而不是下面的test1

NS @ ;NS记录,指向根

@ A 127.0.0.1 ;根,指向127.0.0.1

test1 A 1.1.1.1 ;A记录test1,指向1.1.1.1

test2 A 2.2.2.2 ;A记录test2,指向2.2.2.2

保存文件,需要注意的是,named运行时是以named组的named用户来执行的,因此必须给named这个用户访问/var/named/mytest.com这个文件的权限,我们直接把这个文件的所有者设置为named。

chown named:named /var/named/mytest.com

好了,设置完成,启动named。

service named start

启动完成之后,来测试一下:

dig test1.mytest.com @127.0.0.1

看一下结果:

...

;; ANSWER SECTION:

test1.mytest.com. 86400 IN A 1.1.1.1

...

指向了1.1.1.1,说明静态DNS配置成功。

第三步 配置动态DNS

首先,我们需要生成一个Key,用于更新记录的授权。这里使用了HMAC-MD5算法来生成Key。运行:

dnssec-keygen -r /dev/urandom -a HMAC-MD5 -b 512 -n HOST mytest.com

会得到2个文件,分别以.key和.private结尾:

Kmytest.com.+157+54894.key Kmytest.com.+157+54894.private

我们需要的是.private Key的内容:

Private-key-format: v1.3

Algorithm: 157 (HMAC_MD5)

Key: Tf2lJsSSrSMcu2RvfnLWqwno9drVpQFLk8XkR7BIYWuQF17q/miYa6HfDhDaUCH2x4Bc3ea/Q6Bntod9/sLGdg==

Bits: AAA=

Created: 20141206031434

Publish: 20141206031434

Activate: 20141206031434;

在/etc/named.conf中,zone “mytest.com”之前加上:

key “mytestcom” {

algorithm hmac-md5;

secret “Tf2lJsSSrSMcu2RvfnLWqwno9drVpQFLk8XkR7BIYWuQF17q/miYa6HfDhDaUCH2x4Bc3ea/Q6Bntod9/sLGdg==”;

};

其中key的名字随便起,secret就是刚刚生成的Key那个字段。

然后继续修改文件末尾zone的定义:

zone “mytest.com” IN {

type master;

file “mytest.com”;

allow-update { key mytestcom; };

允许mytestcom的key对zone进行更新。

同时,由于动态更新需要在/var/named写入jnl文件。所以需要将/var/named的所有者更改为named:

chown named:named /var/named

同时,selinux也有可能限制named写入文件,需要关闭:

设置完成后。重启named:

第四步 动态更新DNS

使用nsupdate命令对DNS进行更新:

完成后使用dig测试一下:

dig test3.mytest.com @127.0.0.1

结果:

;; ANSWER SECTION:

test3.mytest.com. 600 IN A 3.3.3.3

成功!

linux一键搭建ddns,在CentOS下配置DDNS并实现动态更新相关推荐

  1. linux vnc服务重启,CentOS下配置VNCServer,重启服务仍然生效

    CentOS下配置VNC Server,重启服务,配置仍然生效的方法: 本文前提:系统已安装好gnome桌面,如果没有请执行下面的命令安装即可. yum groupinstall "Desk ...

  2. centos oracle 服务自动启动,CentOS下配置Oracle 11gR2为系统服务自动启动

    CentOS下配置Oracle 11gR2为系统服务自动启动 CentOS下配置Oracle 11gR2为系统服务自动启动 为什么80%的码农都做不了架构师?>>> PS:在Wind ...

  3. centos下配置java环境,CentOS下配置Java环境变量的操作方法

    AJAX开发,小编有自己的一些心得体会,也请AJAXer多多指教-那接下来先附上这篇CentOS下配置Java环境变量的操作方法,与君共勉,一起学习. rhel 和 centos linux 使用yu ...

  4. CentOS下配置VNCServer,重启服务仍然生效

    CentOS下配置VNC Server,重启服务,配置仍然生效的方法: 本文前提:系统已安装好gnome桌面,如果没有请执行下面的命令安装即可. yum groupinstall "Desk ...

  5. wsl2设置挂载_Windows下的Linux子系统安装,WSL 2下配置docker

    Windows下的Linux子系统安装,WSL 2下配置docker 前提条件: 安装WSL 2需要Windows 10版本是Build 18917或更高,首先先确认系统版本已升级. 在"启 ...

  6. centos下配置wifi连接

    centos下配置wifi连接 因为自己的centos系统没有带GUI界面,所以配置wifi账号密码,每次都要自己从网上搜命令,碰到了问题还要再去百度,这次就写下文章把用到的命令全部记录下来. 下载i ...

  7. linux防火墙添加udp 123,centos下的ntp的安装和配置 (注意 防火牆的udp 123要打開,不然會不能用)...

    centos下的ntp的安装和配置安装 yum install ntp 配置文件 /etc/ntp.conf restrict default kod nomodify notrap nopeer n ...

  8. CentOS下配置多个Tomcat同时运行 本篇文章来源于 Linux公社网站(www.linuxidc.com)

    原文地址:http://blog.csdn.net/tjcyjd/article/details/46553361 版权声明:本文为博主原创文章,未经博主允许不得转载. 同一服务器部署多个tomcat ...

  9. linux 双网卡主备,CentOS下双网卡主备模式配置

    CentOS下双网卡主备模式配置 1简述 通过双网卡设置主备模式,实现当一块网卡宕掉时,另外一块网卡可以自动顶替宕掉的网卡工作,保障网络正常访问. 2实现 2.1.查看网卡信息 执行ifconfig ...

最新文章

  1. 来啦!机器学习画图神器来啦!
  2. 008_多配置文件的引入
  3. DC-5 vulnhub靶机实战
  4. 减少模型方差的方法借鉴
  5. 鸿蒙十系统更新机型,高歌猛进,鸿蒙系统升级机型再次确认,花粉:终等到!...
  6. android 解决华为 SlidingMenu出现白屏
  7. vb.net 判断是否为ip 正则_什么是个人IP科学定位?标准答案来了|ip|直播|科学|ip魔方...
  8. Linux tshark发送抓取的数据到kafka
  9. html流星雨代码_HTML制作流星雨特效
  10. azure备份存储层分类_如何配置Azure SQL数据库长期保留(LTR)备份
  11. Notepad++官网下载
  12. 微信指数:微信关键词搜索热度情况分析!
  13. c语言感叹号和逗号标红,感叹号不够用?试试感叹逗号
  14. 曾辉机器人_真棒!全球青少年人工智能大赛高中组冠、亚、季军都是安康娃!...
  15. 已解决【Watch检查软件更新失败,因为你尚未接入互联网。】
  16. 离散数学-集合论-关系的概念、表示和运算(7)
  17. ICC/ICC2 or INN 一点不成熟的浅见
  18. 25岁,想转行到 IT,应怎样入门?
  19. 超清西瓜视频真实视频地址获取方法
  20. 目标定位(Object localization)

热门文章

  1. centos系统安装pycrypto失败
  2. 麻省理工大学线性代数:二十克默拉法则、逆矩阵、体积
  3. Taotao Picks Apples HDU - 6406
  4. 普通路由器改4g路由器_5G无线路由器外壳和普通路由器外壳是一种材料吗?
  5. 中柏平板计算机价格,有什么便宜又好用的平板电脑?中柏EZpad i7看下
  6. 为什么现在是做跨境电商亚马逊店群的最佳时期?
  7. 邓千荧——奔走于车水马龙中的逐梦之声
  8. 我的世界java8崩溃_《我的世界》崩溃 游戏崩溃等常见问题大解析
  9. 桌面计算机使用技巧,Windows的基本操作方法和技巧
  10. instagram私信关注评论协议现状