Universal IP address and CIDR validation utilities.

This module provides isValidAddress to check if a string is a valid plain IP address (IPv4 or IPv6), and isValidCidr to check if a string is valid CIDR notation.

For version-specific validators, see:

Examples

Universal validation

import { assert, assertEquals } from "@std/assert";
import { isValidCidr, isValidAddress } from "@hertzg/ip/validate";

assert(isValidAddress("192.168.1.1"));
assert(isValidAddress("::1"));
assertEquals(isValidAddress("10.0.0.0/8"), false);
assertEquals(isValidAddress("garbage"), false);

assert(isValidCidr("10.0.0.0/8"));
assert(isValidCidr("2001:db8::/32"));
assertEquals(isValidCidr("192.168.1.1"), false);

Functions

f
isValidAddress(address: string): boolean

Checks if a string is a valid plain IP address (IPv4 or IPv6).

f
isValidCidr(cidr: string): boolean

Checks if a string is valid IPv4 or IPv6 CIDR notation.