在OpenBSD 5.6上运行Nsd和未绑定

在本文中,您将了解在您自己的OpenBSD Vultr实例上本地运行解析缓存的DNS服务器(未绑定)以及权威/主DNS服务器(nsd)是多么容易和快捷。

要安装OpenBSD,请参阅以下文章:安装OpenBSD 5.5 64位。只要确保使用更新的5.6 ISO映像即可。

尽管nsd在以前的版本中也可用,但unbound已链接到5.6版本的版本。从5.7版本开始,BIND将从基本系统中完全删除(并可通过端口使用)。

未绑定

为了解决DNS,人们通常使用其分发/提供商提供的默认设置或Google(公共DNS)和OpenDNS提供的服务。尽管这些通常都很好,但是运行自己的可以给您更多的控制权,更好的性能(一旦您填写了自己的缓存),更好的隐私权等。在OpenBSD上轻松地自己解析DNS设置非常容易。

  1. 启用服务:

    sudo rcctl enable unbound
    
  2. 启动服务:

    sudo rcctl start unbound
    
  3. 要使其处于活动状态,请输入以下内容/etc/resolv.conf(并删除其他所有nameserver条目):

    nameserver 127.0.0.1
    

您现在可以尝试一下:

dig google.com

我们正在寻找以下两行:

;; Query time: 35 msec
;; SERVER: 127.0.0.1#53(127.0.0.1)

使用的服务器是localhost,这是我们想要的。冷启动时查询时间为35秒。让我们再尝试dig一次相同的命令:

;; Query time: 1 msec

至此,缓存正在运行,我们可以继续使用权威的nsd服务器。

nsd

nsd与unbound不同,它是一个权威的DNS服务器,用于为您自己的区域提供服务。一台服务器通常是不够的,因此您可以在另一个位置启动另一个Vultr实例作为辅助服务器,以实现冗余。

由于设置主要/辅助服务(虽然并不困难)有点超出本文的范围,所以我们将展示如何为单个域区域提供服务。

  1. 首先让我们编辑/var/nsd/etc/nsd.conf文件。这是一个完整的示例:

    server:
        hide-version: yes
        ip-address: 108.xx.xxx.xx
    
    remote-control:
        control-enable: yes
    
    zone:
        name: "example.com"
        zonefile: "example.com.zone"
    

    注意:用108.xx.xxx.xx您实例的IP地址和example.com您自己的域替换。

  2. 区域文件进入/var/nsd/zones目录。这是一个短/var/nsd/zones/example.com.zone区域文件:

    $ORIGIN example.com.
    $TTL 86400
    
    @       3600    SOA     a.ns.example.com. hostmaster.example.com. (
                            2014110502      ; serial
                            1800            ; refresh
                            7200            ; retry
                            1209600         ; expire
                            3600 )          ; negative
    
                    NS      a.ns.example.com.
                    NS      b.ns.example.com.
    
                    MX      0 mail.example.com.
    
    a.ns            A       108.xx.xxx.xx
    b.ns            A       108.xx.xxx.xx
    mail            A       108.xx.xxx.xx
    
  3. 现在,我们可以启用并启动该服务:

    sudo rcctl enable nsd
    sudo rcctl start nsd
    

现在,您应该拥有自己的缓存/解析DNS服务器以及权威服务器。

BIND区域语法和有关运行自己的master的详细信息超出了本简短指南的范围,仅供读者练习。享受OpenBSD!

留下評論

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg

在Arch Linux上使用Makepkg可以避免系统污染,确保仅安装必要的依赖关系。

如何在Ubuntu 16.04上安装OpenSIPS控制面板

如何在Ubuntu 16.04上安装OpenSIPS控制面板

快速学习如何在Ubuntu 16.04上安装OpenSIPS控制面板,为VoIP提供商提供支持的功能。

在Fedora 28上安装Akaunting

在Fedora 28上安装Akaunting

学习如何在Fedora 28上安装Akaunting,一款适合小型企业和自由职业者的开源会计软件。

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

如何在CentOS 7上安装Mailtrain新闻通讯应用程序

使用其他系统?Mailtrain是一个基于Node.js和MySQL / MariaDB构建的开源自托管新闻通讯应用程序。

诊断Minecraft服务器延迟和低TPS

诊断Minecraft服务器延迟和低TPS

了解導致Minecraft延遲的原因和解決方案,包括優化伺服器性能和減少滯後的步驟。

AI 能否應對越來越多的勒索軟件攻擊?

AI 能否應對越來越多的勒索軟件攻擊?

勒索軟件攻擊呈上升趨勢,但人工智能能否幫助應對最新的計算機病毒?AI 是答案嗎?在這裡閱讀知道是 AI 布恩還是禍根

ReactOS:這是 Windows 的未來嗎?

ReactOS:這是 Windows 的未來嗎?

ReactOS,一個開源和免費的操作系統,這裡有最新版本。它能否滿足現代 Windows 用戶的需求並打倒微軟?讓我們更多地了解這種老式但更新的操作系統體驗。

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

通過 WhatsApp 桌面應用程序 24*7 保持聯繫

Whatsapp 終於為 Mac 和 Windows 用戶推出了桌面應用程序。現在您可以輕鬆地從 Windows 或 Mac 訪問 Whatsapp。適用於 Windows 8+ 和 Mac OS 10.9+

人工智能如何將流程自動化提升到新的水平?

人工智能如何將流程自動化提升到新的水平?

閱讀本文以了解人工智能如何在小型公司中變得流行,以及它如何增加使它們成長並為競爭對手提供優勢的可能性。

macOS Catalina 10.15.4 補充更新引發的問題多於解決

macOS Catalina 10.15.4 補充更新引發的問題多於解決

最近,Apple 發布了 macOS Catalina 10.15.4 補充更新以修復問題,但似乎該更新引起了更多問題,導致 mac 機器變磚。閱讀這篇文章以了解更多信息