C 程序更新BIND9 DNS
C++ Program to update Bind9 DNS
刚刚更新了我的帖子,以澄清我使用bind9/命名dns。我找到了库,但大多数都实现了自己的DNS,因此我无法使用它们。我想执行C 程序(在Linux/Debian上运行(,以使用bind9和新记录更新本地DNS,然后传播信息,以便其他节点可以更新其本地DNS。实际上,我有一个解决方案,但我想知道是否有一种更正确的方法(例如,有些libs(,然后创建新的记录,而不仅仅是NAPTR。
我有带有各种信息(服务/域(的消息,并且我已经在使用这些信息来创建NAPTR记录,但是该方法非常丑陋。我写入txt文件中的所有nsupdate命令,例如:
std::ofstream nsupdateCommand("/tmp/nsupdate.txt", std::ofstream::out | std::ofstream::trunc);
nsupdateCommand << "update add" << enumName << "." << zone << ". "<< ttl << " NAPTR ";
[...]
nsupdateCommand << "send";
nsupdateCommand.close();
system("nsupdate -l -v /tmp/nsupdate.txt")
我想知道是否有更好的方法来更新C 中的DN,也许使用插座或库?
任何帮助将不胜感激。
ldd `which nsupdate` |grep dns
libdns.so.81 => /usr/lib64/libdns.so.81 (0x000000348b000000)
rpm -qf /usr/lib64/libdns.so.81
bind-libs-9.8.2-0.62.rc1.el6_9.5.x86_64
在CentOS上,您需要安装bind-devel
以获取bind-libs
的标头文件。其他发行版可能以略有不同的名称包装。
相关文章:
- libcurl 和 DNS ttl 中的内部连接管理
- DNS 查询格式标头结构中的小字节序问题
- 如何为DNS查找反向IPv6地址-C++
- 使用并行中的主 DNS 服务器和辅助 DNS 服务器进行名称解析
- C 程序更新BIND9 DNS
- 在多线程环境中使用 libcurl 会导致与 DNS 查找相关的性能非常慢
- 是否可以在C 中以编程方式查询不同的DNS名称服务器,从而忽略系统设置
- 如何在Qt中获取主DNS服务器和辅助DNS服务器
- C++中的静态 DNS 解析器
- 对"_imp___Z*杂项*谷歌DNS*"的未定义引用
- 如何使用C 在Windows上检索ISP的DNS IP
- curl apis 在 DNS 启动和关闭时不会更改值,但 curl 命令提供成功/失败输出
- 查找 DNS 服务器和网关的 IP 和 MAC 地址
- C++ - getaddrinfo() - 使用动态 DNS 获取自己的外部 IP 失败
- 在 DNS 缓存中找不到 Libcurl 主机名
- 在具有 DNS 名称时创建套接字
- C++反向 DNS 查找(在本地网络上)
- 根据RFC 1035在c++中实现DNS查询
- 如何使用 DnsQuery 指定要查询的特定 DNS 服务器
- 使用Asio进行DNS反向查找