更改resolv.conf时未更新dnspython

更改resolv.conf时未更新dnspython,python,dns,dnspython,Python,Dns,Dnspython,这段代码非常好用 import dns import dns.resolver default = dns.resolver.get_default_resolver() nameserver = default.nameservers[0] 除了如果我手动更改/etc/resolv.conf并再次调用get\u default\u解析器函数,它不会为我带来更新的地址。我需要重新启动python控制台以查看更改效果 我错过了什么?我是否应该使用相同的库更改resolv.conf 提前感谢,如

这段代码非常好用

import dns
import dns.resolver

default = dns.resolver.get_default_resolver()
nameserver = default.nameservers[0]
除了如果我手动更改/etc/resolv.conf并再次调用get\u default\u解析器函数,它不会为我带来更新的地址。我需要重新启动python控制台以查看更改效果

我错过了什么?我是否应该使用相同的库更改resolv.conf


提前感谢,

如果您使用的是基于非Debian的Linux并使用glibc,那么您必须知道glibc缓存resolv.conf,除非明确告知,否则不会再次查看它。从本质上讲,如果resolv.conf已更改,并且需要通过调用
\uu res\u init
重新加载,则由应用程序来告诉glibc。有关详细信息,请参阅和。

如果您使用的是基于非Debian的Linux并使用glibc,那么您必须知道glibc缓存resolv.conf,除非明确告知,否则不会再次查看它。从本质上讲,如果resolv.conf已更改,并且需要通过调用
\uu res\u init
重新加载,则由应用程序来告诉glibc。有关详细信息,请参阅和