
El Protocolo de Internet (IP) es el protocolo fundamental de la capa de red que permite la comunicación entre dispositivos en redes interconectadas. Es el responsable de direccionar y enrutar los paquetes desde un origen hasta un destino a través de Internet.
Las 3 características fundamentales del protocolo IP
1. Sin conexión (Connectionless)
IP no establece una conexión previa antes de enviar datos. Cada paquete se envía de forma independiente, sin necesidad de un «handshake» previo.
- No hay negociación entre origen y destino antes de transmitir.
- Cada paquete puede tomar una ruta diferente para llegar al destino.
- Es más rápido que un protocolo orientado a conexión, pero menos fiable por sí solo.
💡 Por eso IP trabaja junto con TCP (que sí es orientado a conexión) para garantizar la entrega fiable de datos.
2. Entrega con el mejor esfuerzo (Best-Effort Delivery)
IP hace su mejor esfuerzo para entregar cada paquete, pero no garantiza que llegue:
- No garantiza la entrega: Un paquete puede perderse en el camino.
- No garantiza el orden: Los paquetes pueden llegar desordenados.
- No garantiza la integridad: Un paquete puede corromperse.
- No hace seguimiento: IP no sabe si el paquete llegó o no.
La fiabilidad la proporciona la capa de transporte (TCP). Por eso el stack se llama TCP/IP: TCP aporta la fiabilidad que IP no tiene.
3. Independiente de los medios (Media Independent)
Los paquetes IP pueden viajar por cualquier tipo de medio físico:
- Cable de cobre (Ethernet)
- Fibra óptica
- Wi-Fi (ondas de radio)
- Satélite
- Redes celulares (4G, 5G)
Sin embargo, cada medio tiene un MTU (Maximum Transmission Unit) diferente — el tamaño máximo de paquete que puede transportar. Si un paquete IP es más grande que el MTU del medio, el router lo fragmenta en paquetes más pequeños.
| Medio | MTU típico |
|---|---|
| Ethernet | 1500 bytes |
| Wi-Fi (802.11) | 2304 bytes |
| PPPoE (DSL) | 1492 bytes |
| VPN (con overhead) | ~1400 bytes |
Estructura de un paquete IPv4
Un paquete IPv4 tiene una cabecera de 20-60 bytes seguida de los datos:
┌─────────────────────────────────────────────────────┐
│ Versión (4) │ IHL │ ToS │ Longitud total │
├─────────────────────────────────────────────────────┤
│ Identificación │ Flags │ Fragment Offset │
├─────────────────────────────────────────────────────┤
│ TTL │ Protocolo │ Checksum de cabecera │
├─────────────────────────────────────────────────────┤
│ Dirección IP de origen (32 bits) │
├─────────────────────────────────────────────────────┤
│ Dirección IP de destino (32 bits) │
├─────────────────────────────────────────────────────┤
│ Opciones (si las hay) │
├─────────────────────────────────────────────────────┤
│ DATOS (payload) │
└─────────────────────────────────────────────────────┘
Campos importantes
| Campo | Tamaño | Función |
|---|---|---|
| Versión | 4 bits | IPv4 = 4, IPv6 = 6 |
| TTL | 8 bits | Tiempo de vida. Se decrementa en cada router. Si llega a 0, el paquete se descarta (evita bucles infinitos) |
| Protocolo | 8 bits | Indica el protocolo de capa superior: TCP (6), UDP (17), ICMP (1) |
| IP origen | 32 bits | Dirección del emisor |
| IP destino | 32 bits | Dirección del receptor |
| Checksum | 16 bits | Verificación de integridad de la cabecera |

TTL (Time To Live)
El TTL es un mecanismo de seguridad que evita que los paquetes circulen indefinidamente por la red:
- El emisor establece un valor TTL inicial (normalmente 64 o 128).
- Cada router que procesa el paquete decrementa el TTL en 1.
- Si el TTL llega a 0, el router descarta el paquete y envía un mensaje ICMP «Time Exceeded» al origen.
💡 El comando
traceroutefunciona gracias al TTL: envía paquetes con TTL=1, TTL=2, TTL=3… y cada router que descarta el paquete revela su dirección IP.
IP vs TCP vs UDP
| Característica | IP | TCP | UDP |
|---|---|---|---|
| Capa | Red (3) | Transporte (4) | Transporte (4) |
| Conexión | Sin conexión | Orientado a conexión | Sin conexión |
| Fiabilidad | Best-effort | Garantizada | Best-effort |
| Orden | No garantizado | Garantizado | No garantizado |
| Velocidad | Rápido | Más lento (overhead) | Rápido |
| Uso típico | Enrutamiento | Web, email, archivos | Streaming, DNS, gaming |
¿Por qué IP es así?
El diseño de IP como protocolo ligero y sin estado es intencional:
- Baja sobrecarga: No mantiene información de estado → los routers procesan paquetes más rápido.
- Escalabilidad: Funciona igual con 10 dispositivos que con 10 mil millones.
- Flexibilidad: Al no depender del medio, funciona en cualquier infraestructura.
- Separación de responsabilidades: IP se encarga del enrutamiento, TCP de la fiabilidad. Cada protocolo hace una cosa bien.
En resumen: IP solo envía. No le importa si la información llega o no. Esa responsabilidad es de TCP.