rndc-confgen命令的作用是可以为rndc生成配置文件。
rndc命令通过TCP连接与DNS服务器通信,发送使用数字签名认证的命令。在rndc命令和named守护进程的当前版本中,唯一支持的认证算法是HMAC-MD5,它在连接的每一端使用共享密钥。这为命令请求和DNS服务器响应提供了TSIG-style认证。所有的经通道发送的命令必须由服务器认识的key_id标记。rndc命令会读取配置文件以确定如何与DNS服务器联系必须使用何种算法。
**语法格式:** rndc-confgen [参数]
**常用参数:**
| -t<目录> | 指定一个运行chroot目录,rndc.key文件的副本将被写入到该目录中 |
| -------------- | --------------------------------------------------------------------- |
| -s | 为来自rndc的命令通道连接指定监听的IP地址。默认值是环回地址127.0.0.1 |
| -c<密钥文件> | 指定备用位置的rndc.key密钥文件 |
| -b<密钥大小> | 指定密钥的大小,单位是位。必须介于1和512位之间,默认值是128 |
| -p<端口> | 为来自rndc的连接指定监听的命令通道端口。默认值是953 |
| -u<用户> | 设置生成的rndc.key密钥文件的所有者 |
| -r<随机文件> | 指定用于生成授权随机数据源 |
| -k<密钥名称> | 指定rndc认证密钥的密钥名称 |
| -a | 自动rndc配置,创建密钥文件/etc/rndc.key |
**参考实例**
为rndc生成配置文件/etc/rndc.conf:
```
[root@anycode ~]# pwdhash -c linuxcool linux
```
自动rndc配置,创建密钥文件/etc/rndc.key:
```
[root@anycode ~]# rndc-confgen -a
```
更新key文件:
```
[root@anycode ~]# rndc-confgen
```