我很難在Python中接收UDP廣播。通過以太網連接到PC的設備在特定地址和端口上廣播消息。我嘗試了很多在線發現的多播python示例,但我永遠不能收到數據。使用wireshark我可以看到UDP廣播正在到達PC。接收非標準的UDP廣播python
我試圖在OSX和Linux也不工作。我只能假定消息沒有被接收,因爲設備使用非標準的UDP結構,即沒有校驗和驗證等。
有關如何接收這些UDP廣播的任何想法?
謝謝!
編輯:最簡單的形式在當前的代碼是:
from socket import *
s=socket(AF_INET, SOCK_DGRAM)
s.bind(('239.255.60.60',4876))
m=s.recvfrom(1024)
print (m[0])
但是我已經試過如Multicast in Python的額外多播例子,我還沒有能夠得到了什麼!
請添加一個最小的,完整的和可驗證的例子。 http://stackoverflow.com/help/mcve – rfkortekaas
通常,您的操作系統網絡堆棧會爲您捕獲IP數據包;如果你想使用原始IP,你應該給我們更多的細節(什麼操作系統,什麼版本的Python,並請*顯示罰款代碼*)。 – wazoox
我在Ubuntu上使用Python3,我相信我將不得不使用原始套接字,並從頭開始... – user2818700