在 Linux 系统下,可以使用 SO_BINDTODEVICE socket 选项绑定 UDP 套接字到指定的网络接口上。
代码示例:
import socket
# 创建 UDP 套接字
sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
# 绑定到指定网络接口
sock.setsockopt(socket.SOL_SOCKET, socket.SO_BINDTODEVICE, b'eth0')
# 绑定地址和端口
sock.bind(('192.168.1.100', 1234))