【问题标题】:Connecting to an FTP server on IPv6 in python在 python 中连接到 IPv6 上的 FTP 服务器
【发布时间】:2013-06-20 08:46:15
【问题描述】:

这就是我以编程方式连接到 FTP 服务器的方式: Python代码

ftp = ftplib.FTP (settings.FTP_IP)
ftp.login (settings.FTP_LOGIN, settings.FTP_PASS)
# ...
# 这里我上传文件到服务器
# ...
ftp.quit()

但就像 IPv4 一样。但是如何通过 IPv6 连接到服务器呢? 我看了一些liby,试图将它们放入shell,连接,但是,它不起作用。

告诉我是否有人处理过这个问题。

【问题讨论】:

    标签: python ftp ipv6 ftplib


    【解决方案1】:

    看了ftplib.py的代码后,在我看来,该代码已经为IPv6做好了准备。

    图书馆知道EPSVEPRT 并在适当的时候使用它们。

    例如,

    def makepasv(self):
        if self.af == socket.AF_INET:
            host, port = parse227(self.sendcmd('PASV'))
        else:
            host, port = parse229(self.sendcmd('EPSV'), self.sock.getpeername())
        return host, port
    

    表明它会根据我们使用的 IP 版本发送PASVEPSV

    【讨论】:

      猜你喜欢
      • 2012-05-16
      • 1970-01-01
      • 1970-01-01
      • 2015-04-29
      • 1970-01-01
      • 1970-01-01
      • 2020-05-26
      • 1970-01-01
      • 2021-08-31
      相关资源
      最近更新 更多