作者dcboy (.......................)
看板Network
标题Re: [问答] FTP不定期无法连接
时间Sun Feb 20 19:13:12 2011
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 1.160.151.210
1F:→ dcboy:嗯 我测试的方式不是透过telnet,是用java去new一个socket 02/15 21:15
2F:→ dcboy:timeout的讯息则是java丢出的exception. 如果idle跟kick都与 02/15 21:16
3F:→ dcboy:account有关的话,我没有用account登入,不是应该不会受到此影 02/15 21:17
4F:→ dcboy:响(idle一段时间就被kick)吗? 好苦恼啊.... 02/15 21:18
5F:→ wst2080:会啊 所以你要透过account 来 login 02/15 21:22
6F:→ wst2080:并且设定FTP Service 设定该Account or Service 没有idle 02/15 21:23
7F:→ wst2080:而你的Java的部分 应该要固定时间下达 keepalive的讯息 02/15 21:23
8F:→ wst2080:这样应该就能维持连线 而达到你要的功能 02/15 21:23
9F:→ dcboy:嗯嗯 我再想一想,谢谢您的回答~~ 02/16 23:42
不好意思,我後来重看了server A上ftp的log
发现当测试程式显示connection timeout时,ftp的log中就
没有连线产生的记录
所以不是连上ftp後被kick掉,是连线timeout所以根本没有连上
我同时也用另一支程式去持续ping server A,当测试程式显示connection timeout时
还是持续ping的到server A,代表server A的网路没有中断
我查了会造成connection timeout的可能原因有以下几个:
(1)防火墙
(2)封包loss
(3)server A的loading太重
(这是我查到的,可能还有其他原因我有所遗漏...)
因为server A没开防火墙,且目前除了每10分钟会被测试ftp外,没有其他server会来连
所以在猜测是不是因为(2)...
请问如果在跑测试程式的server B上安装像wireshark的软体,有办法看到说当server B
尝试连server A的ftp时,封包有没有loss吗?或是有其他方式可以来观察呢?
谢谢~
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.42.185.130
10F:→ wst2080:可 只不过你的设备要有 mirror port的能力 02/20 19:15
11F:→ wst2080:去sniffer Server A 的封包 02/20 19:16
12F:→ wst2080:忘了说了 一般来说ftp还是需要帐号登入 02/20 19:16
13F:→ wst2080:没帐号登入 光只是telnet 是没用的 02/20 19:16
14F:→ dcboy:不好意思,可以请教一下没用的原因吗? 02/20 19:50
15F:→ wst2080:其实这也关系到FTP的服务模式 02/20 20:36
16F:→ wst2080:我猜想 这应该是 standalone / super daemon 有关 02/20 20:37
17F:→ dcboy:受教了 我查了资料,ftp应该通常是属於stand alone,所以启动 02/20 22:32
18F:→ dcboy:这个service之後应该就会一直持续着了. wst大的意思是指我的 02/20 22:34
19F:→ dcboy:ftp service可能是属於super daemon去启动的,所以才会变成 02/20 22:35
20F:→ dcboy:有时候去连它要等服务重新被载入所以connection timeout 是 02/20 22:36
21F:→ dcboy:这个意思吗? 02/20 22:37
22F:→ wst2080:恩 一点就通 XDDD 02/21 10:24
23F:→ dcboy:嗯 可是我是用IIS 7.0架ftp的,这应该是属於stand alone的 囧 02/21 23:10