IP | 您所在的位置:网站首页 › windows多拨工具 › IP |
IP_MREQ_SOURCE 结构 (ws2ipdef.h)
项目
08/28/2023
ip_mreq_source结构为 IPv4 地址提供多播组信息。 语法 typedef struct ip_mreq_source { IN_ADDR imr_multiaddr; IN_ADDR imr_sourceaddr; IN_ADDR imr_interface; } IP_MREQ_SOURCE, *PIP_MREQ_SOURCE; 成员imr_multiaddr IPv4 多播组的地址。 imr_sourceaddr IPv4 多播源的地址。 imr_interface 接口的本地 IPv4 地址或接口索引,多播组应加入、删除、阻止或取消阻止。 此值按网络字节顺序排列。 如果此成员指定 IPv4 地址 0.0.0.0,则使用默认 IPv4 多播接口。 使用接口索引 1 与 IP 地址 0.0.0.1 相同。 注解ip_mreq_source结构与 IPv4 地址一起使用。 ip_mreq_source 结构与 IP_ADD_SOURCE_MEMBERSHIP、IP_BLOCK_SOURCE、IP_DROP_SOURCE_MEMBERSHIP 和 IP_UNBLOCK_SOURCE 套接字选项一起使用。 用于 IPv4 多播编程 的ip_mreq_source 结构和相关结构基于 RFC 3768 第 4 节和第 8.1 节中的 IETF 建议。 有关详细信息,请参阅 http://www.ietf.org/rfc/rfc3678.txt。 在 Windows Vista 及更高版本上,一组套接字选项可用于支持 IPv6 和 IPv4 地址的多播编程。 这些套接字选项与 IP 无关,可以在 IPv6 和 IPv4 上使用。 这些 IP 不可知的选项使用 GROUP_REQ 和 GROUP_SOURCE_REQ 结构,是 Windows Vista 及更高版本上多播编程的首选套接字选项。 有关详细信息 ,请参阅多播编程 。 对于不太可配置的 IPv4 多播功能,请使用 ip_mreq 结构。 对于 IPv6,请使用 ipv6_mreq 结构。 imr_interface 成员可以是接口索引。 除 0.0.0.0.0 的 IP 地址外,) 0.x.x 块 (第一个八位字节(0.0.0.0 除外)中的任何 IP 地址都被视为接口索引。 接口索引是 24 位数字。 (此范围保留) ,则不使用 0.0.0.0/8 IPv4 地址块。 GetAdaptersAddresses 函数可用于获取要用于imr_interface成员的接口索引信息。 建议始终在 ip_mreq_source 结构的imr_interface 成员中指定本地 IPv4 地址或接口索引,而不是使用默认接口。 这在具有多个网络接口和多个公共 IPv4 地址的计算机上尤其重要。 用于 IPv4 多播的默认接口由 Windows 中的网络堆栈决定。 应用程序可以使用 GetIpForwardTable 函数来确定用于 IPv4 多播的默认接口,以检索 IPv4 路由表。 目标 IP 地址的路由指标值为 224.0.0.0 的网络接口是 IPv4 多播的默认接口。 还可以使用以下命令从命令提示符显示路由表: route print IP_MULTICAST_IF套接字选项可用于设置默认接口以发送 IPv4 多播数据包。 此套接字选项不会更改用于接收 IPv4 多播数据包的默认接口。 典型的 IPv4 多播应用程序将使用 具有 ip_mreq_source 结构的 IP_ADD_SOURCE_MEMBERSHIP 套接字选项来联接多播组并侦听特定接口上的多播数据包。 IP_MULTICAST_IF套接字选项将用于设置接口以将 IPv4 多播数据包发送到多播组。 最常见的方案是多播应用程序,该应用程序在多播组的同一接口上侦听和发送。 多播应用程序可以使用多个套接字,其中一个套接字用于侦听,一个或多个套接字用于发送。 在为 Windows Vista 及更高版本发布的 Microsoft Windows 软件开发工具包 (SDK) 上,头文件的组织已更改, ip_mreq_source 结构在 Ws2tcpip.h 头文件中自动包含在 Ws2tcpip.h 头文件中定义。 永远不应直接使用 Ws2ipdef.h 头文件。 注意IP_MREQ_SOURCE和PIP_MREQ_SOURCE派生结构仅在随 Windows Vista 及更高版本一起发布的 Windows SDK 上定义。 ip_mreq_source结构应在早期版本的 Windows SDK 上使用。 要求 最低受支持的客户端 Windows XP [仅限桌面应用] 最低受支持的服务器 Windows Server 2003 [仅限桌面应用] 标头 ws2ipdef.h (包括 Ws2tcpip.h) 另请参阅GROUP_REQ GROUP_SOURCE_REQ GetAdaptersAddresses GetIpForwardTable IPPROTO_IP套接字选项 多播编程 套接字选项 ip_mreq ip_msfilter ipv6_mreq |
CopyRight 2018-2019 实验室设备网 版权所有 |