跳转至

UDP发送广播

学习目标

  • 知道广播的概念
  • 能够使用UDP群发广播消息

1. 什么是广播?

2. 使用UDP发送广播

4.1 实现步骤:

  1. 导入模块socket
  2. 创建socket套接字
  3. 设置允许发送广播
  4. 发送广播数据(注意广播地址)
  5. 关闭套接字

4.2 核心方法:

  • socket.setsockopt —— 设置允许发送广播
udp_socket.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, True)

5. 参考代码

import socket

if __name__ == '__main__':
    # 建立udp套接字
    udp_socket = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)

    # 发送消息
    send_content = "大家好,我是渣渣辉~"

    # 把文本转为二进制数据
    send_data = send_content.encode("utf-8")

    # 设置允许发送广播
    udp_socket.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, True)

    # 发送消息
    udp_socket.sendto(send_data, ("192.168.1.255", 9090))

    # 关闭套接字
    udp_socket.close()