访问(以前的工作)个人颠覆版本库的问题。 卡巴斯基怀疑

我有一个个人的Subversion服务器,在我的家庭计算机(Windows Vista Pro系统)的默认端口上运行svn(而不是Apache)。 (由于防火墙限制工作,设置比这更复杂,但是从检查我的路由器日志,我确信请求正被转发到服务器机器上的正确端口)。 这个仓库以前一直在工作,但最近停止了工作 – 对它的请求超时:

svn: Can't connect to host 'howlett.selfip.net': A connection attempt failed because the connected party did not properly respond after a period of time, or established connection failed because connected host has failed to respond. 

我能想到的原因有很多,但没有一个是令人满意的。 首先,我们最近移动了,并且从服务器和路由器之间的无线设置变为有线设置。 不过,我认为它已经工作了很短的时间,并且(如上所述)路由器日志表明请求正在转发。

其次,我最近安装了卡巴斯基反病毒2011.这似乎是一个更可信的罪魁祸首 – 我认为回购停止工作时间接近,我发现在卡巴斯基6有问题的人在线结果。但是,我有尝试添加svn和svnserve到卡巴斯基的例外列表,甚至禁用卡巴斯基,并重新启动它设置为不启动,回购仍然没有回应。

有没有人有任何明智的想法可能会出错? 否则,谁能告诉我如何从Subversion(客户端和/或服务器)和卡巴斯基?

编辑:更多信息 – 我可以通过服务器上的127.0.0.1访问版本库(但不能通过路由器的IP从服务器上)。

编辑2:networking监听显示数据包到达期望IP地址的svn端口; 和svnserve肯定是听这个地址(而不是本地主机)。

编辑3:使用netcat确认数据包没有被侦听服务拾取。 我也发现卡巴斯基的日志,并找不到任何被阻止的stream量的参考。

(对于认识我的每个人,如果你知道这些话,就一起唱歌)

嗅探进入Subversion服务器的stream量(使用Wireshark或您最喜欢的对等设备),并确保来自Internet的连接尝试真正将其传送到Subversion服务器。 如果stream量没有显示在那里,那么你的路由器/防火墙设备在将stream量转发到Subversion服务器时遇到了问题。

如果你在Subversion服务器上看到stream量,那么你需要开始调查为什么它没有响应(假设它不是)。

编辑:

我猜你已经有一个防火墙应用程序阻止连接,然后。 它看起来像svnserve的 – --foreground选项实际上并没有产生任何有用的debugging输出,所以我不能build议你这样做。 您可以停止svnserve并以监听模式运行netcat( nc -l -p 3690 ),并尝试连接并查看netcat是否显示任何输出。 如果没有,那么防火墙应用程序很可能会出现问题。 (如果一个Subversion客户端连接到一个正在监听的netcat,它将不会发送任何数据,因为它正在等待来自svnserve一条标语消息,如果在客户端连接之后在netcat提示符下input一些乱码,Subversion客户端应该会popup,至less告诉你,连接使它通过。)

编辑:

禁用/停止库存Windows Vista防火墙服务会导致应用非常严格的防火墙策略。 您可以阅读有关Microsoft的文章以获取更多详细信息,但其行为的要点是,在启动期间,这种限制性策略适用于防火墙服务启动并运行(以便在启动期间保护计算机)。 如果您停止防火墙服务,则会应用启动时防火墙策略,并且最终会locking入站stream量策略。

从你的解释中,只有两件事情可以想起:svnserve只在本地主机上运行,​​或者防火墙阻止访问外部ip地址。 例如,您可以使用“Process Explorer”(来自SysInternals)来检查svnserve进程正在侦听的地址。

您可以看到svnserve是否绑定到本地主机或您的外部networking接口与netstat -a | find "LISTEN" netstat -a | find "LISTEN"

如果它没有在0.0.0.0(或者你的接口的IP)上进行监听,那么你需要改变绑定参数,这样它实际上允许外面的人连接到它。

我已经解决了这个问题

指出我不妨得到另一组日志,我打开了以前closures的Windows防火墙(完成与svnserve例外)。 这样做连接到Subversion服务器工作。

为什么增加一层安全性和一个潜在的阻塞点使一切正常,我不知道 – 任何人有任何想法?