shadowsocks / shadowsocks-windows

A C# port of shadowsocks
Other
58.29k stars 16.4k forks source link

System.Net.Sockets.SocketException (0x80004005): 提供了一个无效的参数。 #334

Closed a8181811 closed 8 years ago

a8181811 commented 8 years ago

[2015-09-24 16:26:18] Shadowsocks (XXX.XXX.XXX.XX:80) timed out [2015-09-24 16:26:18] System.Net.Sockets.SocketException (0x80004005): 提供了一个无效的参数。 在 System.Net.Sockets.Socket.DoBind(EndPoint endPointSnapshot, SocketAddress socketAddress) 在 System.Net.Sockets.Socket.InternalBind(EndPoint localEP) 在 System.Net.Sockets.Socket.BeginConnectEx(EndPoint remoteEP, Boolean flowContext, AsyncCallback callback, Object state) 在 System.Net.Sockets.Socket.BeginConnect(EndPoint remoteEP, AsyncCallback callback, Object state) 在 Shadowsocks.Controller.Handler.StartConnect() [2015-09-24 16:26:21] Shadowsocks (XXX.XXX.XXX.XX:80) timed out

chenshaoju commented 8 years ago

0x80004005 ,这个错误类似之前遇到的 https://github.com/shadowsocks/shadowsocks-windows/issues/294 ,据传可能和迅雷有关,你也可以先试一下这个: https://github.com/shadowsocks/shadowsocks-windows/issues/247#issuecomment-131392491

GangZhuo commented 8 years ago

如果只是偶尔出现的话,可以无视。我这也会有,每次出现都夹杂在一些 timeout 中间,估计可能是网络被干扰导致的,确定的原因未找到。

tea1111980 commented 8 years ago

我也经常出现这样的情况,只要一出现这种情况 ,访问就开始变慢甚至访问不了外面的网站。 至于 迅雷的影响,我已经关闭了相关的服务,之前有过这种情况 不能访问 ,关了就好了。 可是现在已经是关闭状态了,还是这样,这就有点搞不懂了。

chenshaoju commented 8 years ago

@tea1111980 迅雷应该在最新版本中修正了此问题: http://yangtai.xunlei.com/?p=10120

tea1111980 commented 8 years ago

@chenshaoju 谢谢! 我试试先。

yeszao commented 8 years ago

可以这样排除:

  1. 确保你的电脑可以 ping 通 shadowsocks 服务器。
  2. 在电脑“服务”里面,把“XLXLServicePlatform”这个迅雷服务设置为“禁用”。
  3. 查看服务器的防火墙,如果running,关掉(或者开放shadowsocks.json中指定的端口)。

99.9%可以解决!

tea1111980 commented 8 years ago

@yeszao 谢谢你的提议! 不过你以上说的这些问题我都检查过,经过以上的影响后,我重装了我本地电脑上面的系统,迅雷我没有安装。防火墙和ping 都检查过,没有问题。到底为什么要提示这个 提示。那我就不清楚了,呵呵。

最后, shadowsocks 可以正常使用,但 就是经常提示这些错误提示。

yeszao commented 8 years ago

@tea1111980 能上就是王道,不管那么多,哈哈

tea1111980 commented 8 years ago

现在出现了一个新问题,Shadowsocks在日志里 过一段时间 就一连接着提示几个 [时间] 服务器名称 (IP) timed out [时间] 服务器名称 (IP) timed out [时间] 服务器名称 (IP) timed out [时间] 服务器名称 (IP) timed out

类似于上面的格式。

yeszao commented 8 years ago

@tea1111980 有没有可能服务器开了 IPv6?如果开了,关掉试试。开IPv6偶尔会受到干扰,谷歌会要求输入验证码,很麻烦。至于Time out,我的之前也一直有,关了服务器防火墙之后,现在就没出现过了。《CentOS7使用firewalld打开关闭防火墙、端口》:http://www.awaimai.com/762.html#5 ,别的系统网上找教程即可。

tea1111980 commented 8 years ago

@yeszao 好的,我去试试,谢谢!

tea1111980 commented 8 years ago

我还发现一个规则 ,每当半夜23点 至 次日17点之间 总会有timed out 就是SS日志查看器里面的那个 timed out 不过 提示归 提示,用SS还是没有任何问题,我就是想搞清楚,在SS没有使用上的任何问题时,它为什么要这么提示。呵呵

tea1111980 commented 8 years ago

也许是我想多了,呵呵。只要能用,就行了。

GangZhuo commented 8 years ago

周期性的 timeout,一般是因为连接被周期性阻断。

tea1111980 commented 8 years ago

@GangZhuo 那你的意思是说 有可能是GFW 或者是其它的什么东西在干扰咯?

yeszao commented 8 years ago

@tea1111980 处女座 :laughing:

GangZhuo commented 8 years ago

应该是的,你可以调查看看。出国的流量即使不经过 ss 好像都会时断时连的,你可以调查看看,如果确实是 ss 有问题,可以再报过来。

tea1111980 commented 8 years ago

@GangZhuo @yeszao 朋友们,又是一个奇葩的问题,而且这一个问题,出现了两次,而这两次都是通过重装系统解决的。但是这一次,我想要看看到底是什么原因引起的这种问题。

就是SSH登陆不了了,相关端口是开放的 SSH服务也是运行中的,但,就是连接不上。

SSH端口是我自定义的数字 还有另一个程序也是我自定义的数字端口,但是另一个端口没出事,可以正常访问 ,就是这个SSH的自定义的 不行。上一次也是同样的情况。

防火墙是用的 firewall 系统自带 + iptables 系统自带,使用firewall添加端口时,跟iptables是同步的。 系统是 CentOS 7.x

请问有人知道的吗?

tea1111980 commented 8 years ago

在这期间,我没有改动任何东西 包括服务和程序。。唯一不同的是 这两次发生的时候,都是在VPS续费的前几天。

tea1111980 commented 8 years ago

@GangZhuo @yeszao 最后查明了,是VPS主机商的端口限制,可能限制了低于36000的端口,我现在把端口都设置在36000以上的数字中,目前运行了 快一个星期了,一切正常。 呵呵 谢谢大家的参与讨论。

h3idan commented 8 years ago

@tea1111980 你用的哪个vps主机商?

tea1111980 commented 8 years ago

@h3idan Vultr

h3idan commented 8 years ago

@tea1111980 有点慢呀。不太好用

tea1111980 commented 8 years ago

@h3idan 可以用PING 服务器IP的测延迟,如果PING的延迟比较低,就比较快。

medivh91 commented 6 years ago

我碰到这个问题,也是端口的原因

yucendulang commented 6 years ago

同遇到vultr端口设置问题 12345端口突然失效 一顿折腾之后 查看到这个issue尝试54321端口成功连上。

THUzhangga commented 5 years ago

服务器:Digital Ocean 问题:443端口挂了,445在多台windows上可用,但是某台win7一直不行。 解决方法:测试了多种方法,包括netsh,检查迅雷服务,检查本地端口占用,都没有效果。最后在服务器上加了54321端口,终于能上。