套接字设置源端口号

时间:2010-04-22 20:25:25

标签: python sockets port

我想发送一个特定的UDP广播数据包..不幸的是,我需要从一个非常特定的端口发送udp数据包我发送的所有数据包。

假设我通过UDP“BLABLAH”进行广播,服务器只会在我的传入数据包源端口为1444时进行应答,否则将丢弃数据包。

我的广播套接字设置如下所示:

s = socket(AF_INET,SOCK_DGRAM)

s.setsockopt(SOL_SOCKET, SO_BROADCAST, 1)

我如何在python中设置(设置源端口)?

谢谢!

2 个答案:

答案 0 :(得分:14)

您需要bind套接字到您要发送的特定端口。尽管您可以使用通配符地址,但bind方法采用地址元组,与connect非常相似。例如:

s.bind(('0.0.0.0', 1444))

答案 1 :(得分:8)

使用s.bind(('', port))