当前位置: 首页 > Linux

500InternalPrivoxyError(连接ss服务报错)

时间:2023-04-06 05:06:56 Linux

找了很多都没有找到答案,最后通过重启ss所在的服务器解决了。过程如下查看服务器上ss服务的端口使用情况,发现有大量的tcp半连接状态(SYN_RECV),因为刚尝试连接网络失败百度了两种可能:1.一种是客户端没有收到[SYN,ACK]包尝试ping客户端ip,成功,排除这种可能。2、还有一种可能是对方收到了[SYN,ACK]包但是没有ACK。这种情况分为两种可能:1.对方根本无意ACK,通常是对方程序有意为之,如SYNFlood类型的DOS/DDOS攻击;(排除)2.一种可能是对方收到的[SYN,ACK]包是非法的,常见的是SYN包的目的地址(服务地址)与响应的源地址不同[SYN,ACK]数据包。这种情况在只配置DNAT而没有配置SNAT的业务网络环境中容易出现,主要是因为入站(SYN包)和出站([SYN,ACK]包)包经过不同的网关/防火墙/负载均衡所以,源[SYN,ACK]路由到Internet的地址(通常是防火墙的出口地址)与SYN包的目的地址(服务的虚拟IP)不同,客户端无法将SYN包与[SYN,ACK]]包关联在一起,这样已经发送的SYN包还没有得到应答,所以继续等待响应包。这样服务器端的连接就一直保持在SYN_RCVD状态(半开连接),直到超时。………………超出现有知识范围,干脆重启ss服务所在服务器实例启动ss服务,发现ip变了,重新配置ss客户端连接googlebingo!连接成功