WPAD是Web Proxy Auto Discovery的缩写意思是代理服务器自动发现,目的是让通过代理上网环境中的客户机通过WPAD服务自动寻找网络中的代理服务器,并自动配置自己的客户端浏览器,这样一来对用户而言便可轻松联入互联网。而上面计算机自动所作的一切对用户来说是透明的,用户完全不必知道代理服务器的所在及浏览器的配置。
WPAD工作原理是客户机向DNS发起WPAD+X的查询,DNS返回提供WPAD主机IP地址,客户机通过该IP的80端口去WPAD主机下载WPAD.DAT(浏览器配置用文件)和WSPAD.DAT(防火墙配置用文件)两个文件以实现自动配置。
客户机向DNS发起的WPAD查询的后缀是根据WPAD主机所处的环境决定的,如果客户机是在一个域环境下时,他发起的查询便是一个 "WPAD.所在域的域名" 的标准域名查询,这种情况下配合DNS里添加WPAD主机的A或别名记录便可轻松在域环境中对WPAD主机的定位。
但是如果在工作组环境下时,客户机发起的查询可能是一个标准的域名查询(如果计算机名有加域名后缀)也可能只是个没有后缀的WPAD查询,这时就要通过创建DNS私有根域查询或是通过创建单标签域的方式进行WPAD主机查询。
但是通过抓包分析可得知在向DNS查询未果后客户机又通过NETBIOS广播进行WPAD主机查询这样我们是不是可以通过创建WINS服务器来实现WPAD主机的查询呢,就让我们来试一下吧
00
 
实验环境:
 
绘图1
 
 
ISA设置
 
首先我们在防火墙端开启自动发现功能,注意这里的端口一定要用默认的80端口,因为最终客户机还是要通过ip来访问WPAD主机的,他们默认是通过HTTP的80端口来访问的,改成其他的话会出现无法下载配置文件的情况。
05
 
同时开启代理功能
03 
04
 
 
 
在客户端测试下WPAD主机是不是开启了自动发现功能
test
WPAD主机能正常提供配置文件下载,开启成功!
 
 
 
 
WINS服务器搭建及设置
 
在Istanbul上添加WINDOWS网络服务WINS服务器组件
add
 
启动WINS管理程序在里面添加WPAD主机映射信息
adda
01
02
 
 
 
客户机设置
 
设置客户机WINS配置
 
 
打开客户机的自动代理检测
client
 
下面我们通过防火墙客户端方式访问互联网,看能不能自动发现代理。在防火墙客户端开启自动检测
10
发现了代理服务器BEIJING
 
是不是通过WINS服务器发现WPAD主机的呢,让我们抓包来看看
11
果然不出所料,客户机就是通过WINS服务器发现的WPAD主机,至此WPAD的WINS部署顺利完成。
 
通过WINS服务器这样的方式部署WPAD实现相对简单,尤其是应付工作组这种逻辑上不太严谨的网络环境,WINS服务器工作在应用层,对网络层实现透明的访问,因此可以实现跨网段对客户机服务,但是这种方式并不太适合较大型的复杂网络,所以对于大型网络来讲我们还是推荐用域环境+DNS解析来实现对WPAD的部署。
 
在此感谢岳老师的指导!