Linux DDNS配置

简介:

                    Linux DDNS配置

        DDNS(动态域名服务器)是将用户的动态 IP地址映射到一个固定的域名解析服务上,用户每次连接网络的时候客户端程序就会通过信息传递把该主机的动态IP地址传送给位于服务商主机上的服务器程序,服务器程序提供DNS服务并实现动态域名解析.
实验:
设备:
   DDNS服务器主机:Redhat 5.4 IP 192.168.1.107
   linux测试机     : redhat5.4
   windows测试机 :  windows 2003
  条件: dns,dhcp已经配置成功
拓扑图

1 . DNS的配置
   1>为DDNS创建密钥,并得到DDNS的密钥字符串
      [root@localhost chroot]# dnssec-keygen -a HMAC-MD5 -b 128 -n USER code
     Kcode.+157+42071
    [root@localhost chroot]# ll
    总计 20
    d rwxr-x--- 2 root named 4096 10-27 16:32 dev
    drwxr-x--- 2 root named 4096 10-27 16:34 etc
    -rw------- 1 root root    46 10-27 16:35 Kcode.+157+42071.key
    -rw------- 1 root root    81 10-27 16:35 Kcode.+157+42071.private
    drwxr-x--- 6 root named 4096 10-27 16:32 var
    [root@localhost chroot]# cat Kcode.+157+42071.key 
    code. IN KEY 0 3 157  MTD9Hq1FL3t7T30yiHYUsg==
    2> 配置DNS的全局配置文件,加入下面的内容,指定DDNS服务器使用的加密算法及   密钥字符串
   key code {
    algorithm hmac-md5;
    secret MTD9Hq1FL3t7T30yiHYUsg==; 
  };
    3> 在主配置文件中创建abc.com的正反作用域
    加入如下内容
zone "abc.com" IN {
        type master;
        file "abc.com.zone";
        allow-update { key code; };
};
 
zone "1.168.192.in-addr.arpa" IN {
        type master;
        file "1.168.192.zone";
        allow-update { key code; };
};
 
allow-update{ key code; };指定使用code定义的密钥作为客户端提交ddns请求的密钥.
       4> 分别创建正反向区域文件
          正向文件内容
          $TTL    86400
@               IN SOA  ns.abc.com. root (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
@               IN NS           ns.abc.com.
ns              IN A            192.168.1.107
www             IN A            10.10.10.10
ftp             IN A            20.20.20.20
        反向文件内容
        $TTL    86400
@               IN SOA  ns.abc.com. root (
                                        42              ; serial (d. adams)
                                        3H              ; refresh
                                        15M             ; retry
                                        1W              ; expiry
                                        1D )            ; minimum
@               IN NS           ns.abc.com.
107             IN PTR          ns.abc.com.  //这名是本机DNS与IP地址反射解析内容,如果不写,会出现一定的错误.
254             IN PTR          www.baidu.com.
253             IN PTR          www.sina.com.cn.
  5> 启动DNS服务器
      [root@localhost named]# service named start
启动 named:                                               [确定]
2 . DHCP配置
  1> 配置DHCP的主文件:dhcpd.conf
   修改成如下内容
ddns-update-style interim;
ignore client-updates;
 
key code {
    algorithm hmac-md5;
    secret MTD9Hq1FL3t7T30yiHYUsg==;    //DDNS密钥段
}           // 后面都没有分号;
zone abc.com. {
   primary 192.168.1.107;
   key code;
}
zone 1.168.192.in-addr-arpa. {
   primary 192.168.1.107;
   key code;
}
subnet 192.168.1.0 netmask 255.255.255.0 {
 
        option routers                  192.168.1.1;
        option subnet-mask              255.255.255.0;
        option domain-name              "abc.com";   //DNS域名
        option domain-name-servers      192.168.1.107;  //DNS IP地址
        option time-offset              -18000; # Eastern Standard Time
        range dynamic-bootp 192.168.1.128 192.168.1.200;
        default-lease-time 21600;
        max-lease-time 43200;
}
    2> 启动DHCP服务器
     [root@localhost etc]# service dhcpd start
     启动 dhcpd:                                               [确定]
3 . 测试
     1>在windows 2003上开始测试
    首先windows 2003 上配置自动获取ip地址和自动获取dns
     使用nslookup进行测试

   2> 在linux客户端下测试
       首先应该在/etc/下面建立一个文件: dhclient.conf,并且加入如下内容
       send fqdn.fqdn "client";
       send fqdn.encoded on;
       send fqdn.server-update off;
再通过执行命令来重新启动进行DNS注册
  dhclient -r    //释放IP
   Dhclient     //获得IP
进行测试

   3> 测试ddns配置成功
    在ddns服务器上可以看到windows与linux相关的租凭情况,在文件:/var/lig/dhcpd/dhcpd.leases
    [root@ns ~]# vi /var/lib/dhcpd/dhcpd.leases
     lease 192.168.1.200 {
  starts 6 2012/10/27 09:16:47;
  ends 6 2012/10/27 15:16:47;
  binding state active;
  next binding state free;
  hardware ethernet 08:00:27:62:9e:74;
  uid "\001\010\000'b\236t";
  client-hostname "code";
}
lease 192.168.1.199 {
  starts 6 2012/10/27 09:27:00;
  ends 6 2012/10/27 15:27:00;
  binding state active;
  next binding state free;
  hardware ethernet 08:00:27:1d:b5:a7;
}
   测试成功,可是我看许多的教材上都说还会在/var/named/chroot/var/named中生成两个.jnl结尾的文件,为什么我的这个没有生成,可是却是可以使用.不知有哪位高人指点一下.









本文转自 guodong810 51CTO博客,原文链接:http://blog.51cto.com/guodong810/1039833,如需转载请自行联系原作者
目录
相关文章
|
12天前
|
Ubuntu Linux Shell
github用存在的私钥在Linux上配置免密登录
在Linux上配置GitHub免密登录,使用已有的私钥。系统环境为Ubuntu 22.04.3 LTS。步骤包括:1) 将名为`github`的私钥文件上传至`~/.ssh/github`;2) 设置正确权限`chmod 600 ~/.ssh/github`和`chmod 700 ~/.ssh`;3) 启动SSH代理并添加私钥`ssh-agent -s`和`ssh-add ~/.ssh/github`。完成上述步骤后,可以无缝使用GitHub。
19 0
|
1月前
|
消息中间件 安全 Linux
服务器(Linux)在线下载activeMQ以及配置打开
服务器(Linux)在线下载activeMQ以及配置打开
32 3
|
1月前
|
Ubuntu Linux 编译器
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
【Linux】详解动静态库的制作和使用&&动静态库在系统中的配置步骤
|
2天前
|
Linux 数据处理 数据库
探索Linux的`infocmp`命令:终端配置的得力助手
`infocmp`是Linux下用于查看和比较`terminfo`数据库中终端类型描述的命令。它显示终端的控制序列、按键映射等信息,并能找出不同终端的配置差异。通过参数如`-c`(以termcap格式输出)、`-d`(比较差异)和`-1`(单列显示)等可定制输出。例如,`infocmp $TERM`显示当前终端配置,`infocmp xterm vt100`比较两者差异。了解终端类型和选择合适输出格式是有效使用的关键。
|
11天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch,帮助你快速搭建起这个强大的工具
【6月更文挑战第7天】本文档详细介绍了如何在Rocky Linux 8上安装和配置Elasticsearch,首先通过添加Elasticsearch仓库并使用yum安装。接着,配置Elasticsearch,包括修改`elasticsearch.yml`、设置内存和文件描述符,以及可选的安全设置。启动Elasticsearch后,通过验证日志和测试连接确保其正常运行。文章还列举了常见问题及解决方法,如启动失败、内存不足和网络问题。按照这些步骤,用户可以在Rocky Linux 8上成功部署Elasticsearch,为数据管理与分析提供强大支持。
31 5
|
12天前
|
Linux Shell
Linux配置uwsgi环境
Linux配置uwsgi环境
|
12天前
|
监控 Linux
探索 Linux 中的 Chronyc:一个用于配置和管理 Chrony 的实用工具
Chronyc 是一款用于配置和管理 Linux 系统中 Chrony 时间同步工具的命令行实用程序。Chrony 结合了 ntpd 和 ntpdate 的优点,提供高精度和灵活性。要安装 Chrony,可使用包管理器(如 `apt` 或 `yum/dnf`)。常用 `chronyc` 命令包括:查看时间源状态(`sources`)、跟踪信息(`tracking`)、添加或删除服务器、手动同步时间(`makestep`)以及查看其他信息和帮助。`chronyc` 提供了便捷的方式来监控和调整系统时间同步。
|
12天前
|
Linux Shell 开发者
深入了解 Linux 命令 `autoscan`:为自动配置脚本做准备
`autoscan` 是 Linux 和 Unix-like 系统中用于软件配置的工具,它扫描源代码并生成 `configure.scan` 文件,为 `autoconf` 创建初始模板。开发者通常将 `configure.scan` 重命名为 `configure.ac` 并进行编辑,然后用 `autoconf` 转换为可执行的 `configure` 脚本。在使用前,记得备份项目,确保权限,并安装 `autoconf`。`configure` 脚本能适应多种系统,检查环境并生成 `Makefile`。
|
13天前
|
Ubuntu Linux
ubuntu linux配置bond 网卡绑定 多个bond配置多网关
ubuntu linux配置bond 网卡绑定 多个bond配置多网关
|
15天前
|
Shell Linux 网络安全
27. 【Linux教程】配置环境变量
27. 【Linux教程】配置环境变量
14 0