![]() |
|
Q:如何正确的设定我的IP位址? |
|
![]() |
正确设定主机IP是相当重要的一见事 你可用以下快速方式解决设定的难题
您应视您系统的环境来决定符合您需求的叁数组合。 合法IP的意思是说该IP为网际网路上的真实IP,且任何人都能经由这个位址和您建立连结 内部IP的意思是说该IP仅在区域网路的范围内才是有效的,只有同一区域网路内的使用者能经由这个位址建立连结。 固定IP的意思是指您的IP始终是同一个,而不是由DHCP伺服器指派的。 注意:以下的设定在FTPD的*.ftpd档案之中,「伺服器IP」是以SERVER_IP表示、「自动选择IP」以AUTO_CHOOSE_IP表示、「额外的IP」以XTRA_IPS表示、「排除的IP」以XCLU_IPS表示,「自动从多组伺服器IP中轮流使用不同IP来给DATA连线使用」是以PASV_IP_ROLLING表示。 组合一:单一合法IP(固定IP) 伺服器IP:填入您的合法IP (切勿填入Domain Name) 自动选择IP: On 或 Off均可 (但您必须确定在伺服器IP中所填入的IP是正确的) 额外的IP :(不要更动它) 排除的IP : (不要更动它) 自动从多组伺服器IP中轮流使用不同IP来给data连线使用:Off 组合二:单一合法IP (浮动IP) 伺服器IP:(保持空白) 自动选择IP:On 额外的IP:(不要更动它) 排除的IP:(不要更动它) 自动从多组伺服器IP中轮流使用不同IP来给data连线使用:On 组合三 : 一个合法IP (固定 IP) + 一个内部 IP 伺服器IP:填入您的合法IP (切勿填入Domain Name) 自动选择IP: Off 额外的IP:(不要更动它) 排除的IP:(不要更动它) 自动从多组伺服器IP中轮流使用不同IP来给data连线使用: Off 组合四 : 一个合法IP (浮动 IP) + 一个内部IP (需2.1 build 935版本以上才支援) 伺服器IP:(保持空白) 自动选择IP:On 额外的IP:(不要更动它) 排除的IP:您的内部IP (可设定多组,例如 xxxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy) 自动从多组伺服器IP中轮流使用不同IP来给data连线使用:On 组合五 : 多个IP (固定 IP) 伺服器IP:设为其中一个IP 自动选择IP: Off 额外的IP:将所有的IP加入额外的IP(包括伺服器IP),例如:xxx.xxx.xxx.xxx,yyy.yyy.yyy.yyy,zzz.zzz.zzz.zzz 排除的IP:(不要更动它) 自动从多组伺服器IP中轮流使用不同IP来给data连线使用:On 组合六:多个合法IP(固定IP)+ 一个内部IP 伺服器IP:设为其中一个IP 自动选择IP:Off 额外的IP:除了内部IP以外的所有合法IP都填入 排除的IP:您的内部IP 自动从多组伺服器IP中轮流使用不同IP来给data连线使用: On 组合七:伺服器有可对应浮动IP的网址(当IP有更动时会随之更新) 伺服器IP:(保持空白) 自动选择IP:Off 额外的IP: (保持空白) 排除的IP:(保持空白) 自动从多组伺服器IP中轮流使用不同IP来给data连线使用:Off DYN_IP_HOST : 设为您的Domain Name ,例如:DYN_IP_HOST=xxxx.dynadns.org 组合八:一个内部 IP 您的环境无法服务网际网路的使用者。 好,现在您已经正确的完成了IP的设定,但为什么客户端还是不能做LIST/RETR/STOR/FXP? 可能一:您的站位於防火墙後方,而这个防火墙可能被设定为仅仅开放某个区段的连接埠,您可以洽询本地端的防火墙管理员来取得相关资料,再将伺服器的DATA PORT RANGE(资料连接埠区段)配合防火墙做出设定。 可能二:客户端位於防火墙後方(通常您可经由伺服器纪录档内的PORT指令失败来得知),您可要求使用者的FTP客户端使用PASV(被动)模式,否则无法有效运作。 可能三:客户端位於NAT(网路位址转换)後方,通常您可经由伺服器纪录档内的PORT指令失败来得知,不过PORT指令要求伺服器连上去的通常不是客户端的真实IP,因此您应要求该使用者的FTP客户端使用PASV(被动)模式,否则无法有效运作。 可能四:当使用者要和将「AntiBounce Attack」功能开启的FTP伺服器做FXP时(例如微软的IIS,或SERV-U),除非您将DATA PORT RANGE(资料连接埠区段)设定至port 1024以上的区段(例如1050-2000),否则它们和您之间的FXP并无法正常运作。 可能五:客户端所使用的软体设计欠佳,没错,很多的FTP客户端软体并没有遵守游戏规则,一般来说FTP客户端应该先与伺服器建立好DATA连结之後,再下进一步的指令,例如LIST、RETR,不过某些客户端下了PORT/PASV指令之後,并不先等连结建立好,就直接再下LIST/RETR指令,雷电FTPD并不打算去支援这样的做法。请要求您的使用者更换或升级他的客户端软体。这种情形通常您可以藉由伺服器端的纪录档中有「LIST W/O DATA connection」的错误讯息来得知。 可能六:客户端使用不相容的软体,目前不相容的客户端软体包括了StarFTP、LeapFTP 2.6x(更新的版本则相容)、LapLink v1、旧版的FlashGET(新版则可运作。) 可能七:您在伺服器的设定表单中启动了检查DATA连线IP范围,请关掉它,若不关掉,也可以将许可主机的IP加入允许的IP列表中,不然您的伺服器不会接受来自其他伺服器的DATA连线。 如果到现在还无法解决问题,那您就得知道更多相关的知识。 Q01. 好,我有个疑问,我想设计一个100%无漏洞的防火墙,如果我要雷电FTPD使用某个连接埠范围,假设是1400-1500好了,在做xfers的时候就使用这些连接埠,可是当使用着登入并下LIST指令时,竟然使用的是port 90-???┅ A01. 嗯┅您并无法100%强制所使用的连接埠范围,指定连接埠范围只有当客户端使用PASV而非PORT模式时才有用。当客户端决定使用PORT指令时,他同时也可以决定连接埠的范围;当客户端使用PASV时,则由伺服器端取得连接埠范围的决定权。在FTP客户端软体中应该要有一个选项是可以强制它自己使用某个范围的连接埠,不过当然不是每个客户端软体都会有。由於这个部分是让客户端自行决定的,因此您的问题无法归咎於雷电FTPD。 Q02. 为什么当有人和我的雷电FTPD伺服器做FXP时,我看到以下的讯息? (CLIENT) PASV (RAIDEN) 227 Entering Passive Mode (140,89,228,21,0,214) (RAIDEN) PORT 140,89,228,21,0,214 (OTHER?) 500 Illegal PORT range rejected. A02. 嗯┅这是因为该伺服器启动了「AntiBounce Attack」的功能,由於那不是你的机器,您当然无法把这个功能取消掉,如果您真的非跟对方做FXP不可,您必须使用特定范围的DATA PORT RANGE(资料连接埠区段),而因您使用目的的不同,我们会建议使用不同的连接埠范围。如果您的站台是要让人从网页下载的,您可以试试port 26-79,如果您要做一个可以跟别人做FXP的站,试试port 1400-1500。这里我无法给您一个放诸四海皆准的答案,因为事实就是有些客户端u伺服器端就是会认为,他们对解决封锁某些连接埠之後所产生的问题游刃有馀。而由於要不要封锁某些IP区段是他方的伺服器决定的,您的问题无法片面的从雷电FTPD上得到完全的解决。 Q03. 「PASV accept failed, no one connects to me」是什么意思?它是由伺服器还是客户端产生的?我的意思是说它究竟是由雷电FTPD产生的,还是连接过来的使用者所产生的? A03. 嗯┅这个讯息是由雷电FTPD产生的,这个是说当雷电FTPD从ftp的客户端接受了PASV的指令之後,它先去伺服器IP+PORT的其中一组等待(listen),并将这组IP+PORT的号码回传到客户端,只是过了十五秒钟後,仍然没有ftp的客户端连接到这组IP+PORT,於是伺服器便向您回报这个错误。很多的原因都会导致这样的结果,并且可能是客户端、伺服器端中的任何一方或双方的问题。所以您需要检查一下客户端的指令纪录视窗,先寻找PASV字串,您就会发现类似以下的东西: (CLIENT) PASV (RAIDEN) 227 Entering Passive Mode (140,89,228,21,0,214) 现在这里是关键了,看看这个140,89,228,21是不是你的伺服器IP?还有0*256 + 214是不是你的等待(listen)的PORT?如果140,89,228,21不是你的伺服器IP,或者它是个从外部无法连接的内部IP,就表示你的IP设定出问题了,您可以对照一下本文前段,找出最适合的组合来重新设定。如果IP的部分没问题,就再看看PORT的部分,如果您的环境有防火墙,而这里的PORT并非位於开放的PORT区段时,则人家当然连不上来,因为所有的连线都被拒绝了。因此你必须问问您本地端的网管者哪些PORT是开放的,然後将它设定到DATA PORT RANGES(资料连接埠区段)里面,否则就无法正常运作。有没有再简单一点的办法呢?恐怕没有罗!因为没有人会知道你的网管者会设定开放或是拒绝,也没人知道你的内部IP及外部外部IP,所以您得自己搞定罗! Q04. 我有一个合法的浮动IP和一个内部的固定IP,我可否架单一站台(也就是使用同一个*.ftpd档案)来同时服务内部与外部的使用者? A04. 不行,因为您的合法IP是浮动的,您必须架两个站台(使用两个不同的*.ftpd档),一个让内部用,另一个外部用。 Q05. 我无法和G6 ftp server 2.0做FXP,问题出在哪呢? A05. 好,如果我们不说明,大家还以为不能和G6 2.0 Final做FXP是我们的问题。在G6 2.0 Final,无论指令是否真的成功,它都会回报「200 PORT command successful」。我们怎么知道的呢?很简单,我们只是把自己的PASV模式关掉来测试(这就意味着事实上雷电FTPD并没有在等待(listen),只不过是回传「正确进入被动模式」的字串给对方而已),雷电FTPD没有在等待(listen),G6 2.0 Final当然不可能建立连线。这是G6程式的臭虫,以下节录一小段的纪录档: (flashfxp ->RaidenFTPD) PASV (RaidenFTPD) 227 Entering Passive Mode (MY_IP,0,201) <- 我们其实并没有真正的listen (flashfxp ->G6) PORT MY_IP,0,201 (G6) 200 Port command successful. <- G6 回传了错误的字串讯息 (flashfxp ->G6) STOR f-xxxxxx.zip <- flashfxp 被骗到了 (G6) 150 Opening data connection for f-xxxxxx.zip. (flashfxp ->RaidenFTPD) RETR f-xxxxxx.zip 150 Sending /OOOOOO/f-xxxxxx.zip (2555741 bytes). Mode STREAM Type BINARY (RaidenFTPD) 426 Connection closed , transfer aborted (transfer failed).(exception) 就这么简单罗!G6回传了错误的状态,而flashfxp就被拐了,因此很明显是谁该做出修正。而这并非雷电FTPD的问题,因为是G6回传了错误的状态给FlashFXP,我们并不清楚这个问题在新版中解决了没有,如果遇到了这样的问题,我们只能说错误并非出在我们身上。 Q06. 为什么雷电FTPD不能和微软的IIS做FXP? A06. 当然可以,不过你必须将DATA PORT RANGE设定在1400-1500,我们并不知道是否还有其他的连接埠区段可以正常运作,不过这绝对可以,如果你不这样设,就无法跟微软的IIS做FXP。雷电FTPD在这里并没有设计上的缺陷,ftp无法强制伺服器非得使用哪个port来做资料传输不可,决定该用哪个port是站台管理员的责任。 Q07. 为什么我在伺服器的纪录档里面会看到「port connect failed(123.123.123.123 1234)」这样的讯息? A07. 是的,这有可能是您的问题,不过通常还是客户端出问题的情形居多,您可以很轻易的从那个IP
123.123.123.123看出来问题是出在你还是对方身上。在伺服器监控器(Server Monitor)中,点一下客户端的图示,你就可以看到客户端的来源了,假设它是140.123.123.123好了,如果你看到「port
connect failed(123.123.123.123 1234)」,很显然的,两个IP 140.123.123.123和123.123.123.123是不一样的,因此可以断定这是客户端的问题,问题可能出在它位於NAT的後方,而它的ftp客户端软体无法自行判断出它的IP其实是个虚拟IP!而如果两个IP是相同的,则问题可能就是出在您这边了,您必须检查一下以下两个地方,第一个是确认一下客户端所要求的PORT(也就是这里的1234)是否在您的防火墙的规则中有将它打开,先确定没有把它关上;第二个比较技术性一点,您可能有多个NIC的介面,确定一下你没有把内部NIC的IP设为额外的IP,你甚至应该将它加到排除的IP里面,想要从内部的NIC和ftp客户端建立连线是不可能的。最後还有一个可能性,就是客户端并非从同一来源做下载的动作,并尝试做FXP,我想,如果确定你的IP都设定正确而问题还是发生了,就应该不会是你的问题了。 |
Copyright
REVISION 2.4 , 2002/10/20