function isValidCidrv4
isValidCidrv4(cidr: string): boolean

Checks if a string is valid IPv4 CIDR notation.

Accepts exactly what parseCidrv4 accepts: an address, an optional %zoneId, then / and a prefix length of 0 to 32 or a dotted decimal mask.

Examples

Valid CIDR

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

assert(isValidCidrv4("0.0.0.0/0"));
assert(isValidCidrv4("192.168.1.0/24"));
assert(isValidCidrv4("10.0.0.1/32"));
assert(isValidCidrv4("10.0.0.0/255.0.0.0"));
assert(isValidCidrv4("10.0.0.0%ether1/8"));

Invalid CIDR

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

assertEquals(isValidCidrv4(""), false);
assertEquals(isValidCidrv4("192.168.1.0"), false);
assertEquals(isValidCidrv4("192.168.1.0/33"), false);
assertEquals(isValidCidrv4("192.168.1.0/-1"), false);
assertEquals(isValidCidrv4("2001:db8::/32"), false);
assertEquals(isValidCidrv4("10.0.0.0/ffff:ff00::"), false);
assertEquals(isValidCidrv4("10.0.0.0/8%ether1"), false);

Parameters

cidr: string

The CIDR string to validate

Return Type

boolean

true if the string is valid IPv4 CIDR notation

Usage

import { isValidCidrv4 } from "mod.ts";