解决防火墙后的Windows Vista客户端使用Windows Update的问题。
在大型企业环境中使用Windows Vista客户端,往往需要通过ISA防火墙(或者其他防火墙)进行网络访问。在这种情况下,客户往往会遇到Windows服务或软件不能正常访问网络的情况,包括但不限于以下情况:
- Windows Update无法下载更新。
- Windows Defender无法下载Definitions。
- Windows Vista和Office中的在线帮助和支持无法正常工作。
- Windows Vista中的一些需要直接网络连接的Gadgets无法正常工作。
例如,在使用Windows Update时,可以查看到更新列表,但是无法下载任何更新。检查%windir%\Windowsupdate.log文件后,发现以下提示:
Warning: SendRequest failed with hr = 80072efd. Proxy List used : <(null)> Bypass List used : <(null)> Auth Schemes used : <>
说明Windows Update并没有使用任何代理服务器设置,而试图直接和服务器进行连接,由于防火墙的存在,将导致升级失败。
通常,客户端在进行HTTP访问时,需要在IE浏览器的Internet选项或者控制面板当中进行代理服务器的设置。但是,在Windows中(包括Windows XP或者Windows Vista)该选项是作为每用户的设置存在,因此不会影响到所有的Windows服务。此时需要对代理服务器进行全局设置。
在Windows XP中可以通过Porxycfg命令设置代理服务器的选项。但是在Windows Vista中我们需要通过Netsh winhttp命令来进行相应的设置。使用的方法如下:
- 右键点击“开始/附件/命令提示符”,选择“以管理员身份运行”。
- 在弹出的UAC窗口中选择“继续”。
- 在“命令提示符”窗口中,输入“Netsh winhttp”命令,该命令格式如下:netsh winhttp set proxy proxy-server:port bypass-list
示例:
netsh winhttp set proxy fareast:8080 local
使用local表示代理服务器设置将跳过所有本地地址;
netsh winhttp set proxy import source=ie
表示从IE设置中导入代理服务器设置;
此时将可以正常使用Windows Update下载更新以及其他服务。