我终于得到了我自己的DYNDNS工作,但我正在寻找一些优化它的build议。
编辑:Basiclly我有一个域名在注册商,我指向我自己的名字服务器,我保留自己的logging。 我正在使用nsupdate来更新logging。 我希望用户能够注册,获得一个子域,他们可以指向一个具有dynamicIP的设备,从而使其“静态”。
dynamic更新的示例http://ip.seveas.net/dnsgraph/png/client1.epnddns.com/?skip_.=on&show_A=Show
基本上我想要达到最快的决心,如果我可以这样称呼它。 意味着用户在更新其子域之前必须等待的最less时间,直到他们实际上可以使用它或解决它。 没有推动服务器停下来,想想+1000用户。 如果这是有道理的?
所以我想知道SOA的TTL值,我的域名服务器以及为用户可能更新频率而dynamic创build的子域名。
另一个问题是,在关于client1的例子中。 它似乎解决了在其他设备或其他用户罚款,但从我家的IP,我也用来更新logging罚款,似乎是相当随机的,如果它连接与否。 这可能是我的设置中的东西,或者它可以做什么,我更新我的家庭IP的logging?
我的第一个名称服务器值
$ORIGIN . $TTL 38400 ; 10 hours 40 minutes mydomain.com IN SOA ns3.mydomain.com. admin.mydomain.com. ( 2880848856 ; serial 28800 ; refresh (8 hours) 3600 ; retry (1 hour) 604800 ; expire (1 week) 38400 ; minimum (10 hours 40 minutes) ) NS ns3.mydomain.com. NS ns4.mydomain.com. A 66.33.xx $ORIGIN mydomain.com. $TTL 10 ; 10 seconds client1 A 75.119.xx $TTL 38400 ; 10 hours 40 minutes ns3 A 64.111.xx ns4 A 67.205.xx www A 66.33.xx
我的第二名服务器值
$ORIGIN . $TTL 38400 ; 10 hours 40 minutes mydomain.com IN SOA ns4.mydomain.com. admin.mydomain.com. ( 2006071806 ; serial 28800 ; refresh (8 hours) 3600 ; retry (1 hour) 604800 ; expire (1 week) 38400 ; minimum (10 hours 40 minutes) ) NS ns3.mydomain.com. NS ns4.mydomain.com. A 66.33.xx $ORIGIN mydomain.com. $TTL 10 ; 10 seconds client1 A 75.119.xx $TTL 38400 ; 10 hours 40 minutes ns3 A 64.111.xx ns4 A 67.205.xx www A 66.33.xx
除此之外,还有其他的方法来优化它吗?
预先感谢您提供的任何见解或build议!
你写了:
我想知道是否有人在那里可以给我一些优化它的指针,以获得最快的解决scheme,而不会推动服务太多。
你可以通过调整你的TTL值来清楚你想要达到的目标吗?
正如我所知,TTL控件(或者应该控制 – 不是每个名称服务器都能正确地授予它)多久您的资源logging可以保留在非权威名称服务器的caching中。
如果能够从本地recursionparsing器的caching中获得答案,那么试图parsing查询logging的客户端(“可能”可能是更好的解决方法)可以得到更快的解决scheme。 因此,从这个意义上说,更长的TTL允许其他名称服务器将您的RR数据caching更长时间,从而使得客户端查询可以使其查询满足caching的可能性更高。 从这个意义上说,高TTL倾向于提高客户端查询的parsing速度。
但是,您需要权衡服务器caching不正确数据的问题。 当数据发生变化时(例如,因为您已经移动到不同的IP地址,或者更改了logging的目标),则其他名称服务器可以将旧数据caching高达TTL秒。 因此,如果您经常更改数据(例如,经常移动到新的IP地址,或更改您的区域的内容),您将希望降低您的TTL。
按照目前的规定,你的问题并没有真正提供数据变化速度的任何指导,所以不可能更具体地告诉你什么TTL值是合适的。 他们将非常依赖你的使用模式。
我希望这是一个相对较低的情况下。 需要大量可靠DNS查找的服务器属于静态IP地址。 如果是这样,调整TTL应该不是那么重要。
部分信息很难给出好的build议。 以下回应已经为我工作。 由于我只有有限的信息,答案可能不适合你的情况。
在为这种情况selectTTL时,我会查看IP地址来源的TTL。 如果您使用租约一两分钟以上的DHCP,则10秒的TTL可能是极端的。
如果您为DHCP客户端提供内部DYNDNS服务,则为TTL租用时间的一半或四分之一。 对于面向外部的服务,您的TTLdynamic获取其地址,您可能需要更短的TTL。
要考虑的因素是数据将被caching的位置,地址变化发生的频率以及服务不中断的重要性。 你也应该考虑错误的连接可能落在何处。 在组织内部或死亡的地址可能不像一个你无法控制的互联网上的服务器。
编辑::任何TTL你指定一些DNS服务器将忽略它为自己的TTLcaching。 我相信这种情况更可能发生在较短的TTL上。 几年前,有一些使用快速通量DNS的僵尸networking试图避免检测。 我曾经看到报告忽略了短暂的TTL和更长时间的caching是用来处理这些服务器的一种方法。
您还需要处理负面caching。 绑定9使用最小的TTL作为负caching时间段。 (在你的情况下,这似乎是10小时40分,这比你积极的TTL长得多。)对于一个dynamic的服务,你可能希望他们一样。
我希望你的客户分成三类(可能有不同的需求):
确定哪些types的用户可以完成我的监控查询和更新到您的DNS。 确定这种数据需要时间。 确定TTL的重要性在于确定在最后一次查询之后多久发生更新。 随着时间的推移检查这个值可能有助于确定一个合理的TTL。 检查查询频率和源IP分布与更新频率也可能有所帮助。 这是您可以用来随时间调整您的TTL值的数据。