请教如何能自己建立一个私有的 DNS 服务器

请教如何能自己建立一个私有的 DNS 服务器,第1张

以win7如何搭建邮件服务器为例:

1、先做DNS的配置因为要用到DNS对邮件服务器作域名解析,所以要创建一个DNS,

2、DNS的安装:开始菜单->管理工具->管理报务器;在弹出的界面上点击安装DNS服务器就行了

3、DNS的打开:开始菜单->管理工具->DNS;点击就能打开

4、DNS的配置:在配置界面上->正向查找区域->右键菜单-〉新建区域;要先创建一个区域来对邮件服务器的IP进行解析!创建完成之后在创建的区域内新建一个IP为17121631的mail主机;同时也要新建两个指向主机的别名POP3和SMTP(邮件服务器用到的两个最重要的协议)

5、配置IIS

IIS的安装:开始菜单->控制面板->添加或删除程序->添加删除windows组件->应用程序服务器->详细信息->IIS->详细信息->全选-〉确定-〉下一步-〉完成,

IIS的打开:开始菜单->管理工具->IIS

IISR 配置:选择“默认SMTP虚拟服务”右键->属性->传递标签->高级->在虚拟域和完全域里填上在DNS里创建的区域名!这样做的目的就是为了能够在收件那里显示发件人的信息,

6、安装并配置POP3服务

POP3的安装:开始菜单->控制面板->添加或删除程序->添加/删除windows组件-〉电子邮件服务-〉详细信息->全钩->确定->下一步->完成,

POP3打开:开始菜单->管理工具->POP3服务

POP3的配置:新建一个域名(要和DNS的区域名一样)再在新建的域里创建两个用户用作测试!用户1:tx1 密码:123 用户2:tx2 密码:123

7、完成即可

耐思智慧

DNS 缓存是一个临时数据库,用于存储有关以前的 DNS 查找的信息。换句话说,每当你访问网站时,你的操作系统和网络浏览器都会保留该域和相应 IP 地址的记录。这消除了对远程 DNS 服务器重复查询的需要,并允许你的 OS 或浏览器快速解析网站的 URL。

但是在某些情况下,例如:对网络问题进行故障排除,或者在更改 DNS 解析器之后,你将需要刷新 DNS 缓存。这将清除缓存的 DNS 条目,并根据新配置的 DNS 设置执行后续查找以解析域。

本指南提供有关如何在不同的操作系统和 Web 浏览器上刷新 DNS 缓存的说明。

在 Windows 上清除/刷新 DNS 缓存

对于所有 Windows 版本,清除 DNS 缓存的过程都是相同的。你需要使用管理员权限打开命令提示符并运行 ipconfig /flushdns。

Windows 10 和 Windows 8

要在 Windows 10 和 Windows 8 中清除 DNS 缓存,请执行以下步骤:

在 Windows 搜索栏中键入 cmd 。

右键单击 “命令提示符”,然后右击 “以管理员身份运行”。这将打开 “命令提示符” 窗口。

在命令行上,键入以下行,然后按回车:

ipconfig /flushdns

成功后,系统将返回以下消息:

Windows IP Configuration

Successfully flushed the DNS Resolver Cache

Windows 7

要在 Windows 7 中清除 DNS 缓存,请执行以下步骤:

单击开始按钮。

在开始菜单搜索文本框中键入 cmd。

右键单击 “命令提示符”,然后单击 “以管理员身份运行”。这将打开 “命令提示符” 窗口。

在命令行上,键入以下行,然后按回车:

ipconfig /flushdns

成功后,系统将返回以下消息:

Windows IP Configuration

Successfully flushed the DNS Resolver Cache

在 Linux 上清除/刷新 DNS 缓存

在 Linux 上,除非已安装并运行诸如 Systemd-Resolved,DNSMasq 或 Nscd 之类的缓存服务,否则没有操作系统级 DNS 缓存。根据 Linux 发行版和所使用的缓存服务,清除 DNS 缓存的过程有所不同。

系统化解决

大多数现代 Linux 发行版,例如 Ubuntu 1804,都使用 systemd 解析的服务来缓存 DNS 条目。

要查找服务是否正在运行,请运行:

$ sudo systemctl is-active systemd-resolvedservice

如果该服务正在运行,则将打印命令 active,否则将看到 inactive。

要清除系统解析的 DNS 缓存,你需要键入以下命令。

$ sudo systemd-resolve --flush-caches

成功后,该命令不会返回任何消息。

Dnsmasq

Dnsmasq 是轻量级的 DHCP 和 DNS 缓存名称服务器。

如果你的系统使用 DNSMasq 作为缓存服务器,则要清除 DNS 缓存,需要重新启动 Dnsmasq 服务:

$ sudo systemctl restart dnsmasqservice

也可以使用以下命令

$ sudo service dnsmasq restart

NSCD

NSCD 是一个缓存守护程序,它是大多数基于 RedHat 的发行版的首选 DNS 缓存系统。

如果系统使用 NSCD 来清除 DNS 缓存,则需要重新启动 NSCD 服务:

$ sudo systemctl restart nscdservice

或者

$ sudo service nscd restart

在 MacOS 上清除/刷新 DNS 缓存

根据你所运行的版本,在 MacOS 中刷新缓存的命令略有不同。该命令必须以具有系统管理员特权的用户(sudo 用户)身份运行。

要清除 MacOS 中的 DNS 缓存,请执行以下步骤:

打开查找器。

转到应用程序>实用程序>终端。这将打开终端窗口。

在命令行中,输入以下行,然后按回车:

$ sudo killall -HUP mDNSResponder

输入你的 sudo 密码,然后再次按回车。成功后,系统不会返回任何消息。

对于早期版本的 MacOS,刷新缓存的命令不同。

MacOS 版本 1011 和 109

$ sudo dscacheutil -flushcache

$ sudo killall -HUP mDNSResponder

MacOS 版本 1010

$ sudo discoveryutil mdnsf

从 Kubernetes 16 开始,可以通过为 kube-dns 提供 ConfigMap 来实现对存根域以及上游名称服务器的自定义指定。例如,下面的配置插入了一个单独的私有根 DNS 服务器和两个上游 DNS 服务器。

使用上述特定配置,查询请求首先会被发送到 kube-dns 的 DNS 缓存层 (Dnsmasq 服务器)。Dnsmasq 服务器会先检查请求的后缀,带有集群后缀(例如:”clusterlocal”)的请求会被发往 kube-dns,拥有存根域后缀的名称(例如:”acmelocal”)将会被发送到配置的私有 DNS 服务器 [“1234”]。最后,不满足任何这些后缀的请求将会被发送到上游 DNS [“8888”, “8844”] 里。

bind不用特别设置。

它的做法跟dnsmasq不大一样,是基于RTT自动选择。

最终效果跟dnsmasq差不多,还不用发那么多的查询包。

印象中bind的做法是这样的,你可以抓包验证下:

最开始给所有的候选对象弄一个低RTT,然后每次都在RTT

<

x

ms的候选对象中随机选一个(优先选RTT较小的)。

每个对象查完一次就更新它对应的RTT(查的慢的RTT就比较大)。

印象中下一次选对象的时候,还会乘一个平滑参数(跟上一次的RTT值相关),SRTT平滑。

DABAN RP主题是一个优秀的主题,极致后台体验,无插件,集成会员系统
网站模板库 » 请教如何能自己建立一个私有的 DNS 服务器

0条评论

发表评论

提供最优质的资源集合

立即查看 了解详情