0

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

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

但就像 IPv4 一样。但是如何通过 IPv6 连接到服务器呢?我看了一些 liby,试图把它们放在 shell 中,连接,但是,它没有用。

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

4

1 回答 1

0

在查看了 的代码后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

显示它发送一个PASV或一个EPSV取决于我们使用的 IP 版本。

于 2013-06-20T09:02:21.323 回答