gpt4 book ai didi

python - 如何将套接字绑定(bind)到 python 中的接口(interface)(缺少 socket.SO_BINDTODEVICE)

转载 作者:太空狗 更新时间:2023-10-30 02:13:37 29 4
gpt4 key购买 nike

这大概是一件很简单的事情。我是 python 的新手,所以不要把我钉在十字架上。

s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.setsockopt(socket.SOL_SOCKET, IN.SO_BINDTODEVICE, "eth1"+'\0')

上面的命令给我:

NameError: name 'IN' is not defined

我唯一的导入是

import socket

最佳答案

如果您不理解该错误消息,则意味着您引用的名称 IN 此时不可用。您的代码片段可能缺少 import声明。

出于可移植性原因,套接字模块可能不提供 SO_BINDTODEVICE。如果您完全确定您在支持它的 Linux 上运行,请尝试将其替换为它的数值,即 25:

s.setsockopt(socket.SOL_SOCKET, 25, "eth1"+'\0')

或者对于 python 3:

s.setsockopt(socket.SOL_SOCKET, 25, str("eth1" + '\0').encode('utf-8'))

关于python - 如何将套接字绑定(bind)到 python 中的接口(interface)(缺少 socket.SO_BINDTODEVICE),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7221577/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com