PythonのソケットUDPベースのブロードキャスト

標準ライブラリモジュールソケットの実装。

最初に使用される名前を導入しました:

  • AF_INET:IPv4の
  • SOCK_DGRAM:UDP
  • SOL_SOCKET:ユニバーサルソケットオプション
  • SO_BROADCAST:广播

サーバー側:

import socket
import time
PORT = 6000
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
while True:
    time.sleep(1)
    s.sendto(b'Hello!', ('<broadcast>', PORT))

クライアント:

import socket
PORT = 6000
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.bind((socket.gethostname(), PORT))
while True:
    data, address = s.recvfrom(1024)
    print(data.decode())

説明:

サーバコードは、UDPブロードキャストによって、上記伝送実装Hello!情報をクライアントに。

従来のUDP輸送と比較して、主に放送サーバのブロードキャスト機能を開くためのコードを追加し、アドレス情報セットを送信します<broadcast>

リリース元の4件の記事 ウォンの賞賛0 ビュー25

おすすめ

転載: blog.csdn.net/m0_46396257/article/details/104641490