function isValidCidrv6
isValidCidrv6(cidr: string): boolean

Checks if a string is valid IPv6 CIDR notation.

Accepts exactly what parseCidrv6 accepts: an address, an optional %zoneId, then / and a prefix length of 0 to 128 or a colon-hexadecimal mask.

Examples

Valid CIDR

import { assert } from "@std/assert";
import { isValidCidrv6 } from "@hertzg/ip";

assert(isValidCidrv6("::/0"));
assert(isValidCidrv6("2001:db8::/32"));
assert(isValidCidrv6("::1/128"));
assert(isValidCidrv6("fe80::/ffff:ffff::"));
assert(isValidCidrv6("fe80::%ether1/64"));

Invalid CIDR

import { assertEquals } from "@std/assert";
import { isValidCidrv6 } from "@hertzg/ip";

assertEquals(isValidCidrv6(""), false);
assertEquals(isValidCidrv6("2001:db8::1"), false);
assertEquals(isValidCidrv6("2001:db8::/129"), false);
assertEquals(isValidCidrv6("192.168.1.0/24"), false);
assertEquals(isValidCidrv6("fe80::/255.0.0.0"), false);
assertEquals(isValidCidrv6("fe80::/64%ether1"), false);

Parameters

cidr: string

The CIDR string to validate

Return Type

boolean

true if the string is valid IPv6 CIDR notation

Usage

import { isValidCidrv6 } from "validatev6.ts";