0
对于在struct sockaddr_in6
数据类型中表示的给定IPv6地址,我想知道该地址是否在多播address range中。过滤掉IPv6多播地址范围
举例来说,我希望有一个功能is_ipv6_multicast()
的作品如下
struct sockaddr_in6* sa6;
...
if (is_ipv6_multicast(sa6)) {
// do one thing
} else {
// do another
}
谁能帮助我?
正如@dbush指出的那样,它很容易确定它是否是多播地址。更难的部分是根据标志和范围确定什么样的组播。一些多播地址是无效的,这取决于如何设置标志(例如,如果设置了R标志,则必须设置P和T标志,并且如果其中一个或两个都未设置,则它是无效的多播地址) 。 –