from __future__ import print_function import socket from contextlib import closing def main(): local_address = '192.168.0.2' # 受信側のPCのIPアドレス multicast_group = '239.255.0.1' # マルチキャストアドレス port = 4000 bufsize = 4096 with closing(socket.socket(socket.AF_INET, socket.SOCK_DGRAM)) as sock: sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1) sock.bind(('', port)) sock.setsockopt(socket.IPPROTO_IP, socket.IP_ADD_MEMBERSHIP, socket.inet_aton(multicast_group) + socket.inet_aton(local_address)) while True: print(sock.recv(bufsize)) return if __name__ == '__main__': main()