【发布时间】:2011-08-23 21:13:20
【问题描述】:
我有一个使用 WebRequest 访问 http 站点的程序。 如果我启动程序执行一些 webRequests 然后更改我机器的 Dns 设置,程序将不会更改 dns-servers
喜欢
WebRequest.Create("http://www.google.com");
....将我的网络接口的 Dns 设置更改为无效或捕获门户....
WebRequest.Create("http://www.google.com");
// Still uses original dns server for dns lookup (or cache)
ipconfig flushdns 没有区别
有什么方法可以强制 WebRequest 使用实际的 dns 服务器进行 dns 查找?
编辑:似乎重新启动 DnsClient 缓存的 Windows 服务可以解决问题。虽然很硬核
【问题讨论】:
-
如果使用 Dns.Resolve(hostname) 会发生什么?你得到旧值还是新值?
-
这令人惊讶。我期待 .NET 依赖操作系统来进行 DNS 解析/缓存。
-
@Philipp 那是我的下一步。在我的 webrequests 周围添加 dns 调试
标签: c# httpwebrequest dns