2
有時我必須發送消息到特定的IP,有時我必須將消息廣播到我的網絡中的所有IP。另一方面,我必須區分廣播和普通廣播,但recvfrom()
只是返回消息來自的地址; 他們之間沒有區別。任何人都可以幫我區分它們嗎?如何識別廣播的消息?
UDP是協議。
有時我必須發送消息到特定的IP,有時我必須將消息廣播到我的網絡中的所有IP。另一方面,我必須區分廣播和普通廣播,但recvfrom()
只是返回消息來自的地址; 他們之間沒有區別。任何人都可以幫我區分它們嗎?如何識別廣播的消息?
UDP是協議。
我不認爲Python的socket
模塊是可能的。 UDP是一種非常簡約的協議,區分廣播和非廣播UDP數據包的唯一方法是查看目標地址。但是,您無法使用BSD套接字API檢查包的這部分(如果我沒有記錯的話),並且socket
模塊僅公開BSD套接字API。您最好的選擇可能是使用消息的第一個字節來表示它是廣播消息還是單播消息。