Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Sockets Linux套接字&;IP\添加\源\成员资格_Sockets_Udp_Multicast - Fatal编程技术网

Sockets Linux套接字&;IP\添加\源\成员资格

Sockets Linux套接字&;IP\添加\源\成员资格,sockets,udp,multicast,Sockets,Udp,Multicast,情景: 进程1创建套接字并使用IP_ADD_SOURCE_MEMBERSHIP选项[group:224.0.0.30 SOURCE:192.168.0.1 Device:eth0]订阅多播组。将套接字绑定到224.0.0.30:5555 进程2创建一个套接字并使用IP_ADD_成员资格选项[group:224.0.0.30 Device:eth0]订阅多播组。将套接字绑定到224.0.0.30:5555 两个进程同时在同一个机器上运行 IP为172.10.1.1的源发送具有多播目的地224.0.

情景:

进程1创建套接字并使用IP_ADD_SOURCE_MEMBERSHIP选项[group:224.0.0.30 SOURCE:192.168.0.1 Device:eth0]订阅多播组。将套接字绑定到224.0.0.30:5555

进程2创建一个套接字并使用IP_ADD_成员资格选项[group:224.0.0.30 Device:eth0]订阅多播组。将套接字绑定到224.0.0.30:5555

两个进程同时在同一个机器上运行

IP为172.10.1.1的源发送具有多播目的地224.0.0.30:5555的数据包

进程1将接收多播数据包吗?还是会被内核过滤掉

谢谢。

发件人:

IP_添加_源代码_成员资格(自Linux 2.4.22/2.5.68起)
加入多播组并仅允许从多播组接收数据
指定的源。

这意味着您的第一个进程将不会接收从源
172.10.1.1
发送的数据包。 但进一步阅读:

。。。此选项可多次使用,以允许从多个源接收数据

,这可能对您有用