已经和socks4代理服务器建立了连接,接下来我要通过此代理服务器到ftp服务器上下载文档。恳请朋友们指导一下如何实现利用ftp协议透过socks4代理服务器在ftp服务器上下载文档呢?

danxuezx 2009-01-17 11:33:17
如题,我已经设置好了socks4代理服务器,接下来我要通过此代理服务器到ftp服务器上下载文档。
可是我不知道怎样用VC++代码实现利用ftp协议透过此代理服务器访问ftp服务器,恳请朋友们指导。

我知道如果建立了http代理服务器接下来用GET 命令的相应格式就ok了,可是我现在是socks4代理服务器,
用的却是ftp协议,我有点转不过弯了。我查了资料,说socks4代理是支持ftp http等协议传输的,我是
刚接触的,不知道该如何实现,恳请朋友们帮忙。
...全文
171 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
danxuezx 2009-01-29
  • 打赏
  • 举报
回复
祝福大家新的一年里:
工作顺利,合家欢乐
身体健康,万事如意
野男孩 2009-01-17
  • 打赏
  • 举报
回复
re楼上。代理服务器就是帮你转发数据,仅此而已。跟ftp之间的协议跟sock4代理无关。
xsc2001 2009-01-17
  • 打赏
  • 举报
回复
其实他和http代理原理是一样的,只要你的程序已经连接上了代理服务器,然后再就是通过代理服务器连接目标ftp服务器,如果连接成功,则直接与代理服务器通信就行了,把所有ftp的命令只管发给代理服务器即可。也就是说只要你通过socket4代理与目标机器连接上以后,只需要代理服务器的socket通信就行了,将所有的数据包都发给代理服务器的socket,代理服务器自己会将你发送的ftp命令发送到目标服务器,并将结果反馈给你的程序。
danxuezx 2009-01-17
  • 打赏
  • 举报
回复
我去实验一下。
xsc2001 2009-01-17
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 danxuezx 的回复:]
比如说ftp有一个get命令,
我已经到了ftp服务器1.txt的目录下了,我如下这样做就可以吗?
char ftpcommandbuff[] = "get 1.TXT C:\1.TXT";
send(SOCKET,ftpcommandbuff,strlen(ftpcommandbuff),0);
[/Quote]

是的就是这样就行了,所有的ftp命令都这样发送就行了。代理服务器一旦和目标机器连接成功了,所有一些都是一个黑匣子,你只管把代理服务器当作你的目标机器就行了,直接与它对话,代理服务器会为你当转发器,在你的目标机器之间当信使。
Learn-anything 2009-01-17
  • 打赏
  • 举报
回复
lg
danxuezx 2009-01-17
  • 打赏
  • 举报
回复
比如说ftp有一个get命令,
我已经到了ftp服务器1.txt的目录下了,我如下这样做就可以吗?
char ftpcommandbuff[] = "get 1.TXT C:\1.TXT";
send(SOCKET,ftpcommandbuff,strlen(ftpcommandbuff),0);

18,356

社区成员

发帖
与我相关
我的任务
社区描述
VC/MFC 网络编程
c++c语言开发语言 技术论坛(原bbs)
社区管理员
  • 网络编程
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧