在python

时间:2016-05-12 15:39:55

标签: python udp

我正在阅读“Black Hat Python”这本书,并且在端口80上遇到与127.0.0.1的UDP连接问题。我对这些东西很新,所以我不能简单地坐下来快速有效地排除故障,所以我希望有人能够指出错误或者可能只是我的设置。我正在使用VMware Fusion在Kali VM中对此进行测试。套接字保持打开状态并等待响应,但从未收到响应。

import socket

target_host = "127.0.0.1"
taget_port = 80

client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
client.sendto("AAABBBCCC", (target_host, taget_port))

data, addr = client.recvfrom(4096)

print data

1 个答案:

答案 0 :(得分:2)

在同一个线程中存在客户端和服务器的架构非常不寻常。我不推荐它。

然而,如果.bind()套接字到目标地址,您的程序将按照您想要的方式工作:

import socket

target_host = "127.0.0.1"
target_port = 8000

client = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
client.bind((target_host, target_port))
client.sendto("AAABBBCCC", (target_host, target_port))

data, addr = client.recvfrom(4096)

print data