Calculadora de hosts utilizables por máscara o CIDR
Esta calculadora de hosts utilizables convierte una longitud de prefijo CIDR IPv4 o una máscara decimal con puntos en un resultado de capacidad claro.
Ejecutar — gratis
Informa del prefijo normalizado, la máscara equivalente, el total de direcciones de la subred y los hosts utilizables tras excluir las direcciones de red y difusión. Úsela para planificar espacio de direcciones, comprobar ejercicios, documentar redes o validar configuraciones de infraestructura. El cálculo es determinista y no realiza consultas de red, por lo que una misma entrada siempre genera el mismo resultado.
Introduzca un prefijo CIDR o una máscara de subred
Indique un prefijo como 24 o /24, o una máscara decimal con puntos como 255.255.255.0. La calculadora admite todos los prefijos IPv4 del 0 al 32, incluidos los extremos. En una máscara, cada octeto debe estar entre 0 y 255 y su representación binaria debe ser contigua: todos los bits uno deben preceder a los bits cero. Se rechaza 255.0.255.0 porque no representa una máscara CIDR convencional. El resultado normaliza ambos formatos como longitud de prefijo y máscara decimal, lo que facilita comparar configuraciones con notaciones distintas. Se ignoran los espacios exteriores, pero se rechazan texto adicional, direcciones IPv4 con prefijo adjunto, números negativos, decimales y prefijos superiores a 32. Esta validación estricta evita resultados verosímiles derivados de ajustes ambiguos o mal escritos. Al usar la API, puede enviar el campo subnet, prefix o mask; subnet es el campo principal documentado.
Interprete las direcciones totales y los hosts utilizables
Una dirección IPv4 tiene 32 bits. El prefijo fija los bits iniciales de red y deja los restantes para las direcciones internas. El total es dos elevado a 32 menos la longitud del prefijo. En /24 quedan ocho bits y se obtienen 256 direcciones totales. Esta capacidad aplica la convención tradicional solicitada y resta dos: una para el identificador de red y otra para difusión. Por ello, /24 devuelve 254 hosts utilizables. Las subredes pequeñas requieren atención: como siempre se excluyen red y difusión, /31 y /32 devuelven cero hosts utilizables. Algunas conexiones punto a punto usan las dos direcciones de /31 mediante una convención especial, y una ruta de host identifica una dirección con /32, pero esas interpretaciones quedan fuera de esta regla. El total explícito sigue siendo útil: /31 contiene dos direcciones y /32 una. La red máxima aceptada, /0, contiene 4,294,967,296 direcciones totales y 4,294,967,294 después de ambas exclusiones.
Aplique el resultado a la planificación de red
Use el número utilizable como comprobación inicial y luego descuente las reservas de su entorno. Puertas de enlace, balanceadores, DNS, dispositivos, IP virtuales, reservas del proveedor y margen de crecimiento pueden reducir la disponibilidad más allá de las exclusiones de red y difusión. Por ejemplo, /26 ofrece 64 direcciones totales y 62 según la fórmula tradicional, aunque quizá admita menos instancias tras las reservas de plataforma. La máscara normalizada también permite trasladar un diseño CIDR a equipos o documentos que esperan notación decimal. En automatización, compare usable_host_addresses con los dispositivos necesarios y detenga el despliegue si falta capacidad. Guarde prefix_length y subnet_mask junto con la decisión para que la interpretación sea auditable. La herramienta solo cuenta direcciones: no calcula las direcciones de red o difusión sin una IP de host ni inspecciona rutas, VLAN, grupos DHCP, prefijos IPv6 o equipos activos. Cada ejecución mediante API cuesta $0.002, y el cálculo determinista también sirve para comprobaciones interactivas rápidas.
Qué puede hacer con ella
Dimensionar una nueva subred IPv4
Compare los hosts utilizables con la demanda de dispositivos y reserve espacio para infraestructura y crecimiento.
Validar documentación de red
Convierta una máscara decimal en su prefijo normalizado y confirme que la capacidad documentada es coherente.
Comprobar automatizaciones de infraestructura
Rechace un prefijo previsto cuando sus direcciones utilizables no cubran los requisitos del despliegue.
Preguntas frecuentes
¿Qué formatos de entrada se aceptan?
Use un prefijo entero del 0 al 32, el mismo prefijo con una barra inicial o una máscara IPv4 decimal contigua.
¿Cómo se calcula el número de hosts utilizables?
La calculadora obtiene 2^(32-prefix) direcciones totales y resta las direcciones de red y difusión, sin devolver nunca menos de cero.
¿Por qué /31 devuelve cero hosts utilizables?
Esta capacidad aplica la regla tradicional de exclusión solicitada, no la interpretación especial punto a punto que permite usar ambas direcciones de /31.
¿Calcula las direcciones de red y difusión?
No. Solo cuenta direcciones a partir de una máscara o un prefijo; para calcular los extremos también necesitaría una dirección IPv4.
¿Cuánto cuesta una solicitud API?
Cada solicitud API cuesta $0.002. El algoritmo no usa servicios de red externos ni modelos probabilísticos.
Para desarrolladores — acceso por API
Todo lo de esta página está disponible por programación. Esta sección es para equipos que quieren integrarlo en sus sistemas; el resto puede usar la herramienta de arriba sin más.
Endpoint de API
¿Prefiere automatizarlo? Un POST autenticado crea la tarea; el resultado llega por webhook o enlace firmado. La misma capacidad también se ejecuta aquí en la web, por email y desde Telegram — y pronto también desde nuestra app.
Llámela desde su stack
curl -X POST https://api.kit.forhosting.com/misc2/subnet-host-count \
-H "Authorization: Bearer $KIT_KEY" \
-H "Content-Type: application/json" \
-d '{"subnet":"/24"}'const res = await fetch("https://api.kit.forhosting.com/misc2/subnet-host-count", {
method: "POST",
headers: {
"Authorization": `Bearer ${process.env.KIT_KEY}`,
"Content-Type": "application/json"
},
body: JSON.stringify({
"subnet": "/24"
})
});
const { task_id } = await res.json();import os, requests
res = requests.post(
"https://api.kit.forhosting.com/misc2/subnet-host-count",
headers={"Authorization": f"Bearer {os.environ['KIT_KEY']}"},
json={
"subnet": "/24"
},
)
task_id = res.json()["task_id"]<?php
$res = file_get_contents("https://api.kit.forhosting.com/misc2/subnet-host-count", false, stream_context_create([
"http" => [
"method" => "POST",
"header" => "Authorization: Bearer " . getenv("KIT_KEY") . "\r\nContent-Type: application/json",
"content" => '{"subnet":"/24"}',
],
]));
$task = json_decode($res, true);body := bytes.NewBufferString(`{"subnet":"/24"}`)
req, _ := http.NewRequest("POST", "https://api.kit.forhosting.com/misc2/subnet-host-count", body)
req.Header.Set("Authorization", "Bearer "+os.Getenv("KIT_KEY"))
req.Header.Set("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)Ejemplo de solicitud
{
"subnet": "/24"
}Ejemplo de respuesta
{
"task_id": "tsk_a1b2c3d4e5f6a1b2c3d4e5f6",
"type": "misc2.subnet_host_count",
"status": "queued",
"_links": {
"result": "/tasks/tsk_…/result"
}
}La API es asíncrona: la llamada devuelve un task_id al instante y el resultado llega por webhook. El polling está limitado a 1 req/s por tarea.
Precio
Precio publicado — sin tokens ni créditos inventados. Una tarea fallida no se cobra.
Errores
| HTTP | Código | Significado |
|---|---|---|
401 | unauthorized | API key ausente o inválida. |
402 | insufficient_balance | El saldo no cubre el precio de la tarea. |
404 | unknown_type | El tipo de tarea no existe. |
429 | rate_limited | Demasiadas peticiones. Use el webhook en vez de sondear. |