广播与组播基础和实现
一、广播和组播
单播,广播,组播
组网方式
广播应用场景
串口以太网服务器配置参数
DPU
组播应用场景
广播和广播IP地址划分
MAC地址
广播IP地址
全网广播地址
255.255.255.255
局域网广播地址
/*
网关地址:192.168.1.1
子网掩码:255.255.255.0
段内广播地址:192.168.1.255
*/
/*
网关地址:192.168.1.1
子网掩码:255.255.0.0
段内广播地址:192.168.255.255
*/
组播IP地址
IP组播地址用于标识一个IP组播组。IANA把D类地址空间分配给组播使用,范围从224.0.0.0到239.255.255.255。
广播和组播实现
注意 必须使能项
#if !defined LWIP_IGMP || defined __DOXYGEN__
#define LWIP_IGMP 1
#endif
广播实现
setsockopt参数
//SOL_SOCKET
#define SO_BROADCAST 0x0020 /* 广播许可 */
//val = int
组播实现
//IPPROTO_IP
#define IP_ADD_MEMBERSHIP 3 /*加入组播*/
#define IP_DROP_MEMBERSHIP 4 /*退出组播*/
#define IP_MULTICAST_IF 6 /*组播默认网卡选择*/
#define IP_MULTICAST_LOOP 7 /*组播默认回环*/
//val
typedef struct ip_mreq {
struct in_addr imr_multiaddr; /* IP multicast address of group */
struct in_addr imr_interface; /* local IP address of interface */
} ip_mreq;