在BIND上,我有一个指向旧服务器和IP的域的条目。 这台机器已经不存在了。 当我将更改指向新服务器时,nslookup仍然显示以前服务器的旧值。 我上个星期四(这是下周二星期二)更改了www条目,并且条目还没有被caching/传播,仍然显示旧条目。 我已经重build了域,删除了前一个,但我仍然看到NSLOOKUP上显示的旧条目。 我愿意等一会让它caching通过。 还有另外一种方法可以指出适当的工作地址,而不是指向旧的?
您不应该等待DNScaching刷新,而应该直接从授权服务器上进行查询。
dig它是这样做的:
dig @ns1.example.com oldentry.example.com
用nslookup就是这样做的:
nslookup oldentry.example.com ns1.example.com
至于试图解决你的问题,我们只能做出疯狂的猜测,因为你给我们的只是“我改变了,但没有改变”。
如果您将实际的configuration添加到问题中,我们可能有机会。 如果你不能这样做,绑定喜欢logging错误,并继续并尝试加载其余的区域文件或条目。 例如,从区域文件中删除ns2行会导致logging:
Feb 18 18:47:34 dns01 named[22465]: zone example.com/IN: NS 'ns2.example.com' has no address records (A or AAAA) Feb 18 18:47:34 dns01 named[22465]: zone example.com/IN: not loaded due to errors.
但绑定仍然会启动并加载所有其他区域文件。 我不确定它在不良语法上的performance如何,是否忽略该条目或整个区域文件。 查看你的日志(这是在daemon.log )与named相关的任何事情。)
其他一些猜测:
原来提交者的问题似乎在这一点上消失了,但是为了同样情况下的其他人的利益,他们可能会偶然发现这个问题。
(注意:下面的列表不包括启用dynamic更新的区域,如果您需要冻结和解冻步骤是手动编辑区域主文件,而不是使用nsupdate进行更改)