/** * Create ipv6 prefix from ipv6 address, by appending /128 mask * * @param ipv6AddressString the ip address, in string format * @return Ipv6Prefix with ipv6Address and /128 mask */ public static Ipv6Prefix iPv6PrefixFromIPv6Address(String ipv6AddressString) { return new Ipv6Prefix(ipv6AddressString + "/128"); }
public static Ipv6Prefix getDefaultInstance(String defaultValue) { return new Ipv6Prefix(defaultValue); }
public static Ipv6Prefix getDefaultInstance(String defaultValue) { return new Ipv6Prefix(defaultValue); }
public static IpPrefix getDefaultInstance(final String defaultValue) { final Matcher ipv4Matcher = IPV4_PATTERN.matcher(defaultValue); if (ipv4Matcher.matches()) { if (IPV6_PATTERN1.matcher(defaultValue).matches() && IPV6_PATTERN2.matcher(defaultValue).matches()) { throw new IllegalArgumentException( String.format("Cannot create IpPrefix from \"%s\", matches both %s and %s", defaultValue, Ipv4Address.class.getSimpleName(), Ipv6Address.class.getSimpleName())); } return new IpPrefix(new Ipv4Prefix(defaultValue)); } else if (IPV6_PATTERN1.matcher(defaultValue).matches() && IPV6_PATTERN2.matcher(defaultValue).matches()) { return new IpPrefix(new Ipv6Prefix(defaultValue)); } else { throw new IllegalArgumentException("Cannot create IpPrefix from " + defaultValue); } }
public static IpPrefix getDefaultInstance(final String defaultValue) { final Matcher ipv4Matcher = IPV4_PATTERN.matcher(defaultValue); if (ipv4Matcher.matches()) { if (IPV6_PATTERN1.matcher(defaultValue).matches() && IPV6_PATTERN2.matcher(defaultValue).matches()) { throw new IllegalArgumentException( String.format("Cannot create IpPrefix from \"%s\", matches both %s and %s", defaultValue, Ipv4Address.class.getSimpleName(), Ipv6Address.class.getSimpleName())); } return new IpPrefix(new Ipv4Prefix(defaultValue)); } else if (IPV6_PATTERN1.matcher(defaultValue).matches() && IPV6_PATTERN2.matcher(defaultValue).matches()) { return new IpPrefix(new Ipv6Prefix(defaultValue)); } else { throw new IllegalArgumentException("Cannot create IpPrefix from " + defaultValue); } }
/** * This implementation does not use nameservice lookups (e.g. no DNS). * * @param cidr - format must be valid for regex in {@link Ipv4Prefix} or {@link Ipv6Prefix} * @return the {@link IpPrefix} having the given cidr string representation * @throws IllegalArgumentException - if the argument is not a valid CIDR string */ public static IpPrefix createIpPrefix(String cidr) { checkArgument(!Strings.isNullOrEmpty(cidr), "Cannot be null or empty."); String[] ipAndPrefix = cidr.split("/"); checkArgument(ipAndPrefix.length == 2, "Bad format."); InetAddress ip = InetAddresses.forString(ipAndPrefix[0]); if (ip instanceof Inet4Address) { return new IpPrefix(new Ipv4Prefix(cidr)); } return new IpPrefix(new Ipv6Prefix(cidr)); }
private static Layer3Match setLayer3MatchAsIpv6( final Inet6Address inetSourceAddress, final Inet6Address inetDestAddress) { Ipv6MatchBuilder layer6MatchBuild = new Ipv6MatchBuilder(); if(inetSourceAddress != null) { String inetSrcAddressString = InetAddresses .toAddrString(inetSourceAddress); layer6MatchBuild.setIpv6Source(new Ipv6Prefix(inetSrcAddressString + "/128")); } if(inetDestAddress != null) { String inetDstAddressString = InetAddresses .toAddrString(inetDestAddress); layer6MatchBuild .setIpv6Destination(new Ipv6Prefix(inetDstAddressString + "/128")); } return layer6MatchBuild.build(); }
public static Address toInetAddress(final InetAddress address) { if (address instanceof Inet4Address) { return new Ipv4Builder() .setIpv4Address(new Ipv4Prefix(InetAddresses.toAddrString(address) + "/32")) .build(); } if (address instanceof Inet6Address) { return new Ipv6Builder() .setIpv6Address(new Ipv6Prefix(InetAddresses.toAddrString(address) + "/128")) .build(); } throw new IllegalArgumentException(String.format("Unhandled address class %s", address.getClass())); } }
@SuppressWarnings("unused") private static Address addressFromAction(InetAddress inetAddress) { String strInetAddresss = InetAddresses.toAddrString(inetAddress); if (inetAddress instanceof Inet4Address) { Ipv4Builder ipv4Builder = new Ipv4Builder(); ipv4Builder.setIpv4Address(new Ipv4Prefix(strInetAddresss)); return ipv4Builder.build(); } else if (inetAddress instanceof Inet6Address) { Ipv6Builder ipv6Builder = new Ipv6Builder(); ipv6Builder.setIpv6Address(new Ipv6Prefix(strInetAddresss)); return ipv6Builder.build(); } return null; }