Your IP : 216.73.216.196
B
� f� � @ s^ d Z dZdZdZdZddlZddlZddlZddlZdd� Z d d
� Z
dd� Zed
krZe � dS )z�
Send/receive UDP multicast packets.
Requires that your OS kernel supports IP multicast.
Usage:
mcast -s (sender, IPv4)
mcast -s -6 (sender, IPv6)
mcast (receivers, IPv4)
mcast -6 (receivers, IPv6)
i� z225.0.0.250z'ff15:7079:7468:6f6e:6465:6d6f:6d63:6173� � Nc C sB dt jdd � krtnt} dt jdd � kr6t| � nt| � d S )Nz-6r z-s)�sys�argv� MYGROUP_6� MYGROUP_4�sender�receiver)�group� r
�5/opt/alt/python37/lib64/python3.7/Tools/demo/mcast.py�main s
r c C s� t �| d �d }t � |d t j�}t�dt�}|d t jkrP|�t jt j |� n|�t j
t j|� x<tt
�
� ��d�d }|�||d d tf� t
�d� qdW d S )Nr z@izutf-8� � r )�socket�getaddrinfo�
SOCK_DGRAM�struct�pack�MYTTL�AF_INET�
setsockopt�
IPPROTO_IPZIP_MULTICAST_TTL�IPPROTO_IPV6ZIPV6_MULTICAST_HOPS�repr�time�encodeZsendto�MYPORTZsleep)r �addrinfo�sZttl_bin�datar
r
r r ! s r c C s t �| d �d }t � |d t j�}|�t jt jd� |�dtf� t �|d |d d �}|d t j kr�|t
�dt j� }|�t j
t j|� n"|t
�dd� }|�t jt j|� xL|�d�\}}x |dd � d kr�|d d� }q�W tt|�d
t|� � q�W d S )Nr r � r z=Iz@Ii� ���� z )r r r r Z
SOL_SOCKETZSO_REUSEADDRZbindr Z inet_ptonr r r Z
INADDR_ANYr ZIP_ADD_MEMBERSHIPr ZIPV6_JOIN_GROUPZrecvfrom�print�strr )r r r Z group_binZmreqr r r
r
r r 3 s r �__main__)
�__doc__r r r r r r r r r r r �__name__r
r
r
r �<module> s