使用源地址的正确方法是什么

2024-05-12 14:46:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我在Python3.5中遇到了一个角落。运行下面的代码时,出现错误并引发错误。在

import socket

print(socket.create_connection(('www.baidu.com', 80), source_address=('127.0.0.1', 8998)))

错误:

^{pr2}$

Tags: 代码importcomsourceaddresswww错误create
2条回答

不能使用源地址127.0.0.1。服务器无法通过此地址联系到您,它只是在您的计算机上的本地地址。这是您的本地环回地址。你必须使用你的公共IP地址。在

所以最好是让系统像另一个答案那样设置源地址。在

 socket.create_connection(('www.baidu.com', 80))

简短的回答是不要!在

在不知道BSD-TCP堆栈如何工作以及如何使用BSD套接字的情况下,不能玩低级Python套接字。在

source_address正如它明确指出的那样,是用于连接的源地址和端口。不能从环回接口地址连接到外部世界的地址。在

因此,invalid argument错误是正确的。在

您真的需要设置source_address?为什么不让它进入操作系统呢?在

相关问题 更多 >