VPC下访问FTP的问题

        最近用VPC一直用的很爽,用来调试安装包,实在太好用了。但是,最近却遇到一个问题,FTP总是无法正常工作,经过漫长而痛苦的跟踪定位,找到原因:

40:47.587状态:与主机通讯时出现了错误
200 Type set to I.
500 Invalid PORT Command.
500 'LPRT 6,16,0,0,0,0,0,0,0,0,120,79,22,0,60,0,0,0,2,4,14': command not understood

在vpc的命令行下用了一下ftp,果然:

C:\Documents and Settings\Administrator>ftp
ftp> open www.slwater.gov.cn
Connected to www.slwater.gov.cn.
220 Microsoft FTP Service
User (www.slwater.gov.cn:(none)): ***
331 Password required for sladmin.
Password:
230-欢迎使用本FTP系统,本FTP系统为数据接口设置,无关数据请
230 User sladmin logged in.
ftp> ls
500 Invalid PORT Command.
150 Opening ASCII mode data connection for file list.


看来原因在于我的联网方式,找了这个资料:

1. 【虚拟机可用网络类型】
根据VPC虚拟机网络参数配置,可以使用以下几类网络:
a. 内部网络
b. 因特网和其他外部网络
c. 仅由虚拟机组成的本地网络
d. 由虚拟机和物理主机组成的本地网络

2. 【虚拟机可配置网络参数】
每个VPC虚拟机可以同时具有4个网络,每个网络均配置1块网卡,总共可以配置4块网卡。其中只有第一个网络的可以配置成使用共享网络方式。每个网络可以以下几种配置参数:
a. 无网络连接方式 Not Connected
b. 本地方式 Local Only
c. 共享网络方式 Shared Networking(NAT)
d. 主机的物理网卡/微软的软网卡(Microsoft Loopback Adapter)

VPC2004SP1网络配置参数画面如下: 
 

配置为无网络连接方式 Not Connected

虚拟机将不可以使用网络,物理主机没在网络上或者不想通过虚拟机上网,则可以选择此项屏蔽虚拟机的网络,加快虚拟机内应用软件检查网络可用性的速度。

配置为本地方式 Local only

只能虚拟机之间相互访问,虚拟机将被不允许访问物理主机上的任何网络资源。

配置为 共享网络方式 Shared Networking(NAT)

注意:只能是第一个网络适配卡位置才能设置为共享网络方式。

在本方式下,虚拟机等同于连接在由Virtual PC构建的私有网络,这个私有网络包含一个DHCP服务器和一个NAT服务器。这两个服务器角色由VPC扮演。这种方式允许虚拟机访问绝大部分的物理主机能访问的网络资源。此时,每个虚拟机不需要设置网络参数,但必须把虚拟机网卡配置自动获取方式,否则会导致无法访问网络。给每个虚拟机配置的IP地址范围为192.168.131.xxx !xxx 为从1到253之间。

注意:本方式下,物理主机的网络IP地址不允许被配置成192.168.131.xxx范围。

配置成共享网络方式,虚拟机就像一台计算机躲在NAT路由器之后,不支持端口映射,不支持外部主机访问虚拟机构成任何服务器和端口。在该方式下非管理员级别的用户不能在物理主机上使用ping或者基于ICMP协议的功能。对于拨号上网的物理主机,不管是PPOE还是MODEM拨号,虚拟机要访问Internet资源必须设置成共享网络方式。配置为 主机的物理网卡/微软的软网卡(Microsoft Loopback Adapter)

这种方式的虚拟机可以在网络上做为一台“真实”的主机。相当与物理主机的在网络出现的形式。注意:此时使用的物理网卡,不是微软的软网卡。此时的虚拟机也可以作为域的成员计算机,只要域控制服务器添加该虚拟机就可以了。在这种情况虚拟机的计算机名不允许与网络上的主机重名,不管是虚拟的还是物理的主机。

这种方式的虚拟机要上因特网,使用ADSL拨号上网,或者使用内部网络的代理服务器上因特网。看实际网络情况。

当主机没有物理网卡或者没插网线,还可以使用微软的软网卡来实现单机局域网。

3. 【网络配置与网络形式】
当虚拟机网络适配卡设置成本地方式Local only,所有的虚拟机构成了前面所说的c类网络;

当虚拟机网络适配卡设置成微软软网卡Microsoft Loopback Adapter,所有虚拟机和物理主机构成d类网络;

当虚拟机网络适配卡设置成物理网卡,虚拟机可以构成内部网络或者因特网以及其他外部网络。

再次找到设置物理网卡的方法:

打开本地物理网卡的属性,查看Virtual Machine Network Services状态是否正常(方法:右键网上邻居----属性----右键物理网卡----属性)

如下图红色框中所示(因为我用的是英文版的XP,显示可能有点不同):

VPC下访问FTP的问题

如果上图中的Virtual Machine Network Services 没有被勾选,则勾选后,VPC可以识别到物理网卡

如果上图没有Virtual Machine Network Services 服务,请点击第二个红色框安装Virtual Machine Network Services 服务

具体步骤点击 安装 ---- 服务 ----- 添加 ---- 从磁盘安装 --- 浏览 ---- D:\Program Files\Microsoft Virtual PC\Utility\VMNetSrv\VMNetSrv.inf 其中红色部分为你VPC的安装文件夹

安装Virtual Machine Network Services后,VPC可以识别物理网卡

因为以前用的是绿色版的vpc,所以没有这项功能,下载了一个全的需要安装的,就自动有这个服务了。这时在vpc的设置里可以看到物理网卡,启动后,用的是静态的ip地址,FTP正常。

你可能感兴趣的:(ftp)