问题描述:
之前用360操作过网络,后来fiddler一直使用不来,报端口8888不能绑定,改成别的端口也不行。错误提示:
Fiddler is suddenly giving me an error "
Unable to
bind to port [
8888].
ErrorCode:
87.
System.Net.Sockets.SocketException (0x80004005).
The parameter is incorrect at System.Net.Sockets.Socket..ctor(AddressFamily addressFamily, SocketType socketType, ProtocolType protocolType)
at Fiddler.Proxy.Start(Int32 iPort, Boolean bAllowRemote)
Fiddler v.4.4.5.9 [.NET 4.0.30319.18052 on Microsoft Windows NT 6.1.7601 Service Pack 1]
使用 netstat -ano | findstr 8888 找不到端口使用情况。后来下载个同样的抓包工具Charles,安装后启动也是包端口不能绑定,错误代码也是:87。后来用Charles的错误提示搜索一下,网上有同样的问题。部分错误提示:
Unrecognized Windows Sockets error: 87: create
解决方案:
在cmd命令窗口中输入:“netsh winsock reset” 然后重启电脑(我win7 64位无需重启也有效)。Charles和fiddler都有效
命令介绍:
netsh winsock reset命令,作用是重置 Winsock 目录。如果一台机器上的Winsock协议配置有问题的话将会导致网络连接等问题,就需要用netsh winsock reset命令来重置Winsock目录借以恢复网络。这个命令可以重新初始化网络环境,以解决由于
软件冲突、病毒原因造成的参数错误问题。 netsh是一个能够通过命令行操作几乎所有网络相关设置的接口,比如设置IP,DNS,网卡,
无线网络等,Winsock是系统内部目录,Winsock是Windows网络编程接口,winsock工作在
应用层,它提供与底层
传输协议无关的高层数据传输编程接口,reset是对Winsock的重置操作。当执行完winsock的命令重启计算机后,需要重新配置IP。