我已经使用InetAddressValidator函数来检查Java中的有效IP地址,但我正在寻找专门检查多播地址的东西。感谢
答案 0 :(得分:0)
InetAddress
类有两个子类Inet4Address
和Inet6Address
,分别用于IPv4和IPv6地址。
两个子类都定义了一个isMulticastAddress()
方法,如果地址是多播地址,则返回true。
答案 1 :(得分:0)
The open-source IPAddress Java library将对IPv4和IPv6进行多态处理,并处理包括CIDR格式在内的多种地址和子网格式。免责声明:我是该库的项目经理。
示例代码:
isMulticast("224.0.0.0/4");
isMulticast("ff00::/64");
isMulticast("224-239.0.0.1-5");
isMulticast("1.0.0.0/4");
isMulticast("fe::/64");
static void isMulticast(String addressStr) {
IPAddressString addrString = new IPAddressString(addressStr);
IPAddress addr = addrString.getAddress();
boolean result = addr.isMulticast();
System.out.println(addr + " is multicast " + result);
}
输出:
224.0.0.0/4 is multicast true
ff00::/64 is multicast true
224-239.0.0.1-5 is multicast true
1.0.0.0/4 is multicast false
fe::/64 is multicast false