function addressv4ToArpa
addressv4ToArpa(address: number): string

Builds the reverse DNS pointer name of an IPv4 address.

The four octets are written in reverse order under in-addr.arpa, as RFC 1035 §3.5 specifies.

The name is relative — it carries no trailing dot. Append "." if a resolver requires an absolute name.

Examples

Building the name

import { assertEquals } from "@std/assert";
import { addressv4ToArpa } from "@hertzg/ip/arpav4";
import { parseAddressv4 } from "@hertzg/ip/addressv4";

assertEquals(addressv4ToArpa(parseAddressv4("192.168.0.1").address), "1.0.168.192.in-addr.arpa");
assertEquals(addressv4ToArpa(parseAddressv4("0.0.0.0").address), "0.0.0.0.in-addr.arpa");
assertEquals(addressv4ToArpa(parseAddressv4("255.255.255.255").address), "255.255.255.255.in-addr.arpa");

The name is relative, so make it absolute yourself

import { assertEquals } from "@std/assert";
import { addressv4ToArpa } from "@hertzg/ip/arpav4";
import { parseAddressv4 } from "@hertzg/ip/addressv4";

assertEquals(addressv4ToArpa(parseAddressv4("8.8.8.8").address) + ".", "8.8.8.8.in-addr.arpa.");

Parameters

address: number

The address as a 32-bit number

Return Type

string

The in-addr.arpa name, without a trailing dot

Throws

RangeError

If the address is negative, fractional, or greater than 2^32-1