加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

WPAD查询从ASP.NET调用webservice

发布时间:2020-12-15 19:58:24 所属栏目:asp.Net 来源:网络整理
导读:我们有一个ASP.NET网站,它调用web服务.如果ASP.NET网站没有启用模拟,那么对Web服务的调用很慢 – 使用WireShark我们看到它正在进行WPAD查询. 如果模拟开启并且模仿管理员用户,则对Web服务的调用很快 – 使用WireShark我们不会进行WPAD查询. 谁看过这个吗?我
我们有一个ASP.NET网站,它调用web服务.如果ASP.NET网站没有启用模拟,那么对Web服务的调用很慢 – 使用WireShark我们看到它正在进行WPAD查询.

如果模拟开启并且模仿管理员用户,则对Web服务的调用很快 – 使用WireShark我们不会进行WPAD查询.

谁看过这个吗?我们如何阻止NetworkService,默认情况下是ASP.NET网站使用的,不会进行WPAD查询.

为什么冒充管理员用户不会导致WPAD查询?

这是我们在WireShark中看到的条目:

NBNS名称查询NB WPAD< 00>

解决方法

我有同样的问题.

WPAD代表Web代理自动发现.

有关协议的详细信息,请访问维基百科.

当您在Internet Explorer中检查“自动检测设置” – >工具 – >互联网选项 – >连接 – >局域网设置时,机器将始终使用WPAD协议在网络之前查询自动检测代理建立任何网络连接.

即使设置在IE中,它也适用于整个机器,因此适用于任何尝试从该机器连接到Web服务的客户端.它也是IE中的默认设置.

打开WPAD后,在进行任何Web连接时,客户端计算机将查询您的DNS和WINS服务器以查找自动代理,并且还将生成一系列要求自动代理的广播.

在收到响应或某个超时期限之前,连接将不会通过(据我所知,超时是任意的 – 也许是某个WPAD精明的人可以提供答案?)过去了.

您在Wireshark中看到的“NBNS Name Query NB WPAD”消息是客户端查询WINS服务器以获取自动代理.如果您没有看到服务器回复那些正在发送的数据包,那么您的网络设置就会出现问题.服务器应回复没有自动代理或自动代理服务器的详细信息.

我们遇到的问题是Windows Server 2008 DNS服务器默认配置为忽略WPAD请求(即它们根本不回答) – 这就是我们作为DNS / WINS服务器运行的.我们没有运行自动代理,因此Windows Server 2008 DNS服务器应该回复“否”.由于它没有,我们的客户在放弃并进行初始连接之前会徒劳地查询最多30秒左右.

好消息是这个问题有三种解决方案:

1)在用作Web服务客户端的任何计算机上关闭IE中的“自动检测设置”

2)编辑Web服务客户端应用程序的machine.config或app.config以绕过本地代理设置.您可以在此处找到有关如何执行此操作的信息:

http://support.microsoft.com/kb/968699

3)确保您的网络DNS服务器配置为正确响应WPAD请求.

最后,这里是一个关于WPAD的一些信息的链接,我发现自己在调试此问题时非常有帮助:

http://www.isaserver.org/articles/ISA2004_ClientAutoConfig.html

希望这可以帮助!

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读