驯服你的Windows XP防火墙
确定并打开端口
如果将程序加入到例外列表之后还是不能够正常运行,或者是在选定例外程序时无法确定程序名称,你可以手工打开端口。在手工打开端口之前,必须先确定程序使用了哪些端口。确定程序使用端口的可靠方法当然是联系程序开发或支持厂商以获得所需的信息。但这种方法多数情况下不是那么方便,而且有时程序所用端口的列表不可提供时,你可以使用 Netstat.exe 来确定这些端口。
用 Netstat.exe 来确定端口
要使用 Netstate.exe 来确定程序所使用的端口,按照以下步骤:
运行这个出问题的程序,并试图使用其网络功能。如对于媒体播放程序,打开一个音频流;对于Web服务器,启动Web服务;
点击开始,运行,输入 cmd ,确定;
获取监听端口列表 - 在命令提示行中输入以下命令并回车:
netstat Cano > etstat.txt
获取进程标识符来确定正在运行的进程 - 在命令提示行中输入以下命令并回车:
tasklist > tasklist.txt
注意 如果问题程序是作为服务运行的,需要在输入的命令中加入 /svc 开关来得到每个进程中加载的服务:
tasklist /svc > tasklist.txt
打开 Tasklist.txt,定位到需要诊断的那个问题程序,记下这个进程的进程标识符;
打开 Netstat.txt,记下关联到那个进程标识符的的所有入口,同时记下所使用的通信协议(TCP或UDP);
这个进程所使用的端口号将影响到如何解决这个问题:
如果进程使用大于1024的端口,这些端口号可能不能改变;
如果端口号小于1024,这个程序可能使用的是一个端口范围。因此,仅仅打开某些单独的端口可能没法解决这个问题;
用 Windows Firewall 手工打开端口
要确定确切的端口号可以联系程序开发或支持厂商以获得所需的信息或者查看用户文档。确定端口需要打开的端口后,按以下步骤:
单击开始,运行,输入 wscui.cpl ,确定;
选择 Windows Firewall;
选择例外选项卡,单击添加端口;
在添加端口对话框中,在端口号栏中输入需要打开的端口号,并选择 TCP 或 UDP 类别;
输入端口名称,然后确定,例如输入 GamePort;
要显示或设定这个端口例外的范围,点击改变范围,然后确定;
在例外选项卡中,注意到新的服务已经列出,要打开这个端口,选中这个服务前面的选择框,然后确定;
需要手工打开端口的程序列表见下页列表。