El Protocolo de Internet versión 4 ( IPv4 ) es la primera versión del Protocolo de Internet (IP) como especificación independiente. Es uno de los protocolos centrales de los métodos de interconexión de redes basados en estándares en Internet y otras redes de conmutación de paquetes . IPv4 fue la primera versión implementada para producción en SATNET en 1982 y en ARPANET en enero de 1983. Todavía se utiliza para transportar la mayor parte del tráfico de Internet en la actualidad, [ 1 ] incluso con la implementación en curso del Protocolo de Internet versión 6 (IPv6), [ 2 ] su sucesor.
IPv4 utiliza un espacio de direcciones de 32 bits que proporciona 4.294.967.296 ( 2³² ) direcciones únicas, pero se reservan grandes bloques para fines de red especiales. [ 3 ] [ 4 ] Esta cantidad de direcciones únicas no es suficiente para satisfacer las necesidades de Internet global, lo que ha causado un problema significativo conocido como agotamiento de direcciones IPv4 durante la transición en curso a IPv6.
Objetivo
El Protocolo de Internet ("IP") es el protocolo que define y habilita la interconexión de redes en la capa de Internet del conjunto de protocolos de Internet . Proporciona a Internet un sistema de direccionamiento lógico a escala global que permite el enrutamiento de paquetes de datos IP desde un host de origen hasta el siguiente enrutador que se encuentra un salto más cerca del host de destino previsto en otra red.
IPv4 es un protocolo sin conexión y funciona con un modelo de entrega de mejor esfuerzo , lo que significa que no garantiza la entrega ni asegura la secuencia correcta ni evita las entregas duplicadas. Estos aspectos pueden ser abordados por protocolos de transporte de capa superior , como el Protocolo de Control de Transmisión (TCP) o el protocolo QUIC .
Historia
Las versiones anteriores de TCP/IP eran una especificación combinada hasta TCP/IPv3. Con IPv4, el Protocolo de Internet se convirtió en una especificación independiente. [ 5 ]
La versión 4 del Protocolo de Internet se describe en la publicación RFC 791 de la IETF (septiembre de 1981), que reemplaza una definición anterior de enero de 1980 (RFC 760). En marzo de 1982, el Departamento de Defensa de los Estados Unidos decidió adoptar el conjunto de protocolos de Internet (TCP/IP) como estándar para todas las redes informáticas militares . [ 6 ]
Agotamiento del espacio de direcciones

A finales de la década de 1980, se hizo evidente que el conjunto de direcciones IPv4 disponibles se estaba agotando a un ritmo que no se había previsto inicialmente en el diseño original de la red. [ 7 ] Las principales fuerzas del mercado que aceleraron el agotamiento de las direcciones a partir de la década de 1990 incluyeron el rápido crecimiento del número de usuarios de Internet, que utilizaban cada vez más dispositivos informáticos móviles, como ordenadores portátiles , asistentes digitales personales (PDA) y teléfonos inteligentes con servicios de datos IP. Además, el acceso a Internet de alta velocidad se basaba en dispositivos siempre conectados. La amenaza de agotamiento motivó la introducción de varias tecnologías correctivas, tales como:
- Enrutamiento entre dominios sin clases (CIDR), para asignaciones de ISP más pequeñas.
- Las interfaces sin numerar eliminaron la necesidad de direcciones en los enlaces de tránsito.
- La traducción de direcciones de red (NAT) eliminó la necesidad del principio de extremo a extremo .
A mediados de la década de 1990, la NAT se utilizaba de forma generalizada en los sistemas de los proveedores de acceso a la red, junto con estrictas políticas de asignación basadas en el uso en los registros regionales y locales de Internet.
El grupo principal de direcciones de Internet, mantenido por IANA, se agotó el 3 de febrero de 2011, cuando los últimos cinco bloques se asignaron a los cinco RIR . [ 8 ] [ 9 ] APNIC fue el primer RIR en agotar su grupo regional el 15 de abril de 2011, excepto por una pequeña cantidad de espacio de direcciones reservado para las tecnologías de transición a IPv6, que se asignará bajo una política restringida. [ 10 ]
La solución a largo plazo para el agotamiento de direcciones fue la especificación de 1998 de una nueva versión del Protocolo de Internet, IPv6 . [ 11 ] Proporciona un espacio de direcciones enormemente mayor, pero también permite una agregación de rutas mejorada en Internet y ofrece grandes asignaciones de subredes de un mínimo de 2 64 direcciones de host a los usuarios finales. Sin embargo, IPv4 no es directamente interoperable con IPv6, por lo que los hosts que solo usan IPv4 no pueden comunicarse directamente con los que solo usan IPv6. Con la eliminación gradual de la red experimental 6bone a partir de 2004, el despliegue formal permanente de IPv6 comenzó en 2006. [ 12 ] Se espera que la finalización del despliegue de IPv6 tome un tiempo considerable, [ 13 ] por lo que son necesarias tecnologías de transición intermedias para permitir que los hosts participen en Internet usando ambas versiones del protocolo.
Direccionamiento

IPv4 utiliza direcciones de 32 bits, lo que limita el espacio de direcciones a 4 294 967 296 (2 32 ) direcciones.
IPv4 reserva bloques de direcciones especiales para redes privadas ( 2²⁴ + 2²⁰ + 2¹⁶ ≈ 18 millones de direcciones) y direcciones de multidifusión ( 2²⁸ ≈ 268 millones de direcciones).
Representaciones de direcciones
Las direcciones IPv4 pueden representarse en cualquier notación que exprese un valor entero de 32 bits. Lo más frecuente es que se escriban en notación decimal con puntos , que consiste en cuatro octetos de la dirección expresados individualmente en números decimales (sin ceros iniciales adicionales) y separados por puntos .
Por ejemplo, la dirección IP con cuatro puntos en la ilustración ( 172.16.254.1 ) representa el número decimal de 32 bits 2886794753, que en formato hexadecimal es 0xAC10FE01.
La notación CIDR combina la dirección con su prefijo de enrutamiento en un formato compacto, en el que la dirección va seguida de una barra inclinada (/) y el número de bits consecutivos iniciales de 1 en el prefijo de enrutamiento (máscara de subred).
Otras representaciones de direcciones eran de uso común cuando se practicaba la red con clases . Por ejemplo, la dirección de bucle invertido 127.0.0.1 se escribía comúnmente como 127.1 , dado que pertenece a una red de clase A con ocho bits para la máscara de red y 24 bits para el número de host. Cuando se especificaban menos de cuatro números en la dirección en notación de puntos, el último valor se trataba como un entero de tantos bytes como se requirieran para completar la dirección a cuatro octetos. Por lo tanto, la dirección 127.65530 es equivalente a 127.0.255.250 .
Asignación
En el diseño original de IPv4, una dirección IP se dividía en dos partes: el identificador de red era el octeto más significativo de la dirección, y el identificador de host era el resto de la dirección. Este último también se denominaba campo de resto . Esta estructura permitía un máximo de 256 identificadores de red, lo que pronto se consideró insuficiente.
Para superar esta limitación, en 1981 se redefinió el octeto de dirección más significativo para crear clases de red , en un sistema que posteriormente se conoció como redes con clases . El sistema revisado definió cinco clases. Las clases A, B y C tenían diferentes longitudes de bits para la identificación de red. El resto de la dirección se utilizaba, como antes, para identificar un host dentro de una red. Debido a los diferentes tamaños de los campos en las distintas clases, cada clase de red tenía una capacidad diferente para direccionar hosts. Además de las tres clases para direccionar hosts, se definió la Clase D para el direccionamiento multicast y la Clase E se reservó para futuras aplicaciones.
La división de las redes con clases existentes en subredes comenzó en 1985 con la publicación del RFC 950. Esta división se hizo más flexible con la introducción de las máscaras de subred de longitud variable (VLSM) en el RFC 1109 en 1987. En 1993, basándose en este trabajo, el RFC 1517 introdujo el enrutamiento entre dominios sin clases (CIDR), [ 14 ] que expresaba el número de bits (desde el más significativo ) como, por ejemplo, /24 , y el esquema basado en clases se denominó , por contraste, con clases . CIDR se diseñó para permitir la repartición de cualquier espacio de direcciones de modo que se pudieran asignar bloques de direcciones más pequeños o más grandes a los usuarios. La estructura jerárquica creada por CIDR es administrada por la Autoridad de Números Asignados de Internet (IANA) y los registros regionales de Internet (RIR). Cada RIR mantiene una base de datos WHOIS de búsqueda pública que proporciona información sobre las asignaciones de direcciones IP.
Direcciones de uso especial
El Grupo de Trabajo de Ingeniería de Internet (IETF) y la IANA han restringido el uso general de varias direcciones IP reservadas para fines especiales. [ 3 ] [ 4 ] Cabe destacar que estas direcciones se utilizan para tráfico multicast y para proporcionar espacio de direcciones para usos sin restricciones en redes privadas.
Redes privadas
De los aproximadamente cuatro mil millones de direcciones definidas en IPv4, alrededor de 18 millones de direcciones de tres rangos están reservadas para su uso en redes privadas, según lo estipulado en la RFC 1918. Los paquetes con direcciones en estos rangos no son enrutables en la Internet pública; son ignorados por todos los enrutadores públicos. Por lo tanto, los hosts privados no pueden comunicarse directamente con las redes públicas, sino que requieren traducción de direcciones de red en una puerta de enlace de enrutamiento para este propósito.
Dado que dos redes privadas, por ejemplo, dos sucursales, no pueden interoperar directamente a través de Internet pública, deben conectarse mediante una red privada virtual (VPN) o un túnel IP . Este último encapsula los paquetes, incluyendo sus encabezados con las direcciones privadas, en una capa de protocolo durante la transmisión a través de la red pública. Además, los paquetes encapsulados pueden cifrarse para su transmisión a través de redes públicas con el fin de proteger los datos.
Direcciones para fines especiales
IANA ha reservado el bloque de direcciones 192.0.0.0/24 para asignaciones especiales. Actualmente existen las siguientes asignaciones de este bloque: [ 3 ]
- 192.0.0.0/29 — Prefijo de continuidad de servicio IPv4, utilizado para mecanismos de transición IPv6 como DS-Lite y 464XLAT [ 25 ]
- 192.0.0.8/32 — Dirección ficticia IPv4, utilizada como dirección de origen IPv4 sintética en el mecanismo de cuarta transición.
- 192.0.0.9/32 — Protocolo de control de puertos Anycast
- 192.0.0.10/32 — Recorrido mediante repetidores alrededor de NAT Anycast
- 192.0.0.11/32 (Borrador [ 26 ] ) — Utilizar el descubrimiento de vecinos IPv6 como puerta de enlace predeterminada
- 192.0.0.170/32, 192.0.0.171/32 — Descubrimiento NAT64/DNS64. Permite a un cliente descubrir la presencia de DNS64 consultando su resolvedor DNS recursivo para el dominio ipv4only.arpa [ 27 ].
Además, IANA ha reservado los siguientes dos prefijos IPv6 para las operaciones del servidor de nombres AS112 :
- 192.175.48.0/24 — Servidores Blackhole con las zonas autoritativas tradicionales configuradas
- 192.31.196.0/24 — Servidores de agujero negro para el nuevo enfoque de agujero negro que involucra registros DNAME a empty.as112.arpa [ 28 ]
Direccionamiento de enlace local
RFC 3927 define el bloque de direcciones especiales 169.254.0.0/16 para el direccionamiento de enlace local. Estas direcciones solo son válidas en el enlace (como un segmento de red local o una conexión punto a punto) conectado directamente a un host que las utiliza. Estas direcciones no son enrutables. Al igual que las direcciones privadas, no pueden ser el origen ni el destino de los paquetes que atraviesan Internet. Se utilizan principalmente para la autoconfiguración de direcciones ( Zeroconf ) cuando un host no puede obtener una dirección IP de un servidor DHCP u otros métodos de configuración interna.
Cuando se reservó el bloque de direcciones, no existían estándares para la autoconfiguración de direcciones. Microsoft creó una implementación llamada Automatización de Direcciones IP Privadas (APIPA), que se implementó en millones de máquinas y se convirtió en un estándar de facto . Muchos años después, en mayo de 2005, el IETF definió un estándar formal en el RFC 3927, titulado Configuración Dinámica de Direcciones Locales de Enlace IPv4 .
Bucle de retorno
La red de clase A 127.0.0.0 (red sin clase 127.0.0.0 / 8 ) está reservada para la interfaz loopback . Los paquetes IP cuyas direcciones de origen pertenecen a esta red nunca deben aparecer fuera de un host. Los paquetes recibidos en una interfaz que no sea loopback con una dirección de origen o destino loopback deben descartarse.
Primera y última dirección de subred
En cada subred, tanto las direcciones de host con todos los bits a cero como las que tienen todos los bits a uno están reservadas. [ 29 ] [ 30 ] La dirección de host con todos los bits a cero se utiliza para identificar una subred determinada. La dirección más alta de cada subred, con todos los bits de host establecidos en 1 , es la dirección de difusión local para enviar mensajes a todos los dispositivos de la subred simultáneamente. Para redes de tamaño / 24 o mayor, la dirección de difusión en notación decimal con puntos siempre termina en 255 .
Por ejemplo, en la subred 192.168.5.0 / 24 (máscara de subred 255.255.255.0 ) el identificador 192.168.5.0 se utiliza para referirse a toda la subred. La dirección de difusión de la red es 192.168.5.255 .
Sin embargo, esto no significa que no se pueda usar como dirección de host cualquier dirección que termine en 0 o 255. Por ejemplo, en la subred / 16 192.168.0.0 / 255.255.0.0 , que es equivalente al rango de direcciones 192.168.0.0 – 192.168.255.255 , la dirección de difusión es 192.168.255.255 . Se pueden usar las siguientes direcciones para hosts, aunque terminen en 255: 192.168.1.255 , 192.168.2.255 , etc. Además, 192.168.0.0 es el identificador de red y no debe asignarse a una interfaz. [ 31 ] : 31 Las direcciones 192.168.1.0 , 192.168.2.0 , etc., pueden asignarse, a pesar de terminar con 0.
En el pasado, surgieron conflictos entre las direcciones de red y las direcciones de difusión debido a que algunos programas utilizaban direcciones de difusión no estándar con ceros en lugar de unos. [ 31 ] : 66
En redes más pequeñas que / 24 , las direcciones de difusión no necesariamente terminan en 255. Por ejemplo, una subred CIDR 203.0.113.16 / 28 tiene la dirección de difusión 203.0.113.31 .
Como caso especial, una red / 31 tiene capacidad para solo dos hosts. Estas redes se utilizan normalmente para conexiones punto a punto. No existe un identificador de red ni una dirección de difusión para estas redes. [ 32 ]
Resolución de direcciones
Los servidores en Internet suelen conocerse por nombres, por ejemplo, www.example.com, y no principalmente por su dirección IP, que se utiliza para el enrutamiento y la identificación de la interfaz de red. El uso de nombres de dominio requiere su traducción, denominada resolución , a direcciones y viceversa. Esto es similar a buscar un número de teléfono en una guía telefónica utilizando el nombre del destinatario.
La traducción entre direcciones y nombres de dominio la realiza el Sistema de Nombres de Dominio (DNS), un sistema de nombres jerárquico y distribuido que permite la subdelegación de espacios de nombres a otros servidores DNS.
Interfaz sin numerar
Un enlace punto a punto (PtP) sin numerar, también llamado enlace de tránsito, es un enlace que no tiene un número de red o subred IP asociado, pero sí tiene una dirección IP. Introducido por primera vez en 1993, [ 33 ] [ 34 ] [ 35 ] [ 36 ] se le atribuye a Phil Karn de Qualcomm ser el diseñador original.
El propósito de un enlace de tránsito es enrutar datagramas . Se utilizan para liberar direcciones IP de un espacio de direcciones IP limitado o para reducir la gestión de la asignación de IP y la configuración de interfaces. Anteriormente, cada enlace requería dedicar una subred / 31 o / 30 utilizando 2 o 4 direcciones IP por enlace punto a punto. Cuando un enlace no está numerado, se utiliza un ID de enrutador , una única dirección IP tomada de una interfaz definida (normalmente una interfaz de bucle invertido ). El mismo ID de enrutador puede utilizarse en varias interfaces.
Una de las desventajas de las interfaces sin numerar es que resulta más difícil realizar pruebas y gestión remotas.
Estructura del paquete
Un paquete IP consta de una sección de encabezado y una sección de datos. Un paquete IP no tiene suma de verificación de datos ni ningún otro pie de página después de la sección de datos. Normalmente, la capa de enlace encapsula los paquetes IP en tramas con un pie de página CRC que detecta la mayoría de los errores. Muchos protocolos de la capa de transporte que utiliza IP también tienen su propia verificación de errores. [ 37 ] : §6.2
Encabezamiento
La cabecera del paquete IPv4 consta de 14 campos, de los cuales 13 son obligatorios. El decimocuarto campo es opcional y se denomina, como su nombre indica, opciones. Los campos de la cabecera se organizan de mayor a menor byte ( orden de bytes de red ), y para el diagrama y la explicación, se considera que los bits más significativos van primero ( numeración del bit más significativo 0 ). El bit más significativo se numera como 0, por lo que el campo de versión se encuentra, por ejemplo, en los cuatro bits más significativos del primer byte.
- Versión : 4 bits
- El primer campo de encabezado en un paquete IP es el campo Versión . Para IPv4, este siempre es igual a 4 .
- Longitud de la cabecera de Internet (IHL) : 4 bits
- El tamaño de la cabecera IPv4 es variable debido al campo opcional número 14 ( Opciones ). El campo IHL contiene el tamaño de la cabecera IPv4; tiene 4 bits que especifican el número de palabras de 32 bits en la cabecera. El valor mínimo para este campo es 5, [ 38 ] lo que indica una longitud de 5 × 32 bits = 160 bits = 20 bytes. Como campo de 4 bits, el valor máximo es 15; esto significa que el tamaño máximo de la cabecera IPv4 es de 15 × 32 bits = 480 bits = 60 bytes.
- Punto de código de servicios diferenciados (DSCP ) : 6 bits
- Originalmente definido como el tipo de servicio (ToS), este campo especifica los servicios diferenciados (DiffServ). [ 39 ] La transmisión de datos en tiempo real utiliza el campo DSCP. Un ejemplo es la voz sobre IP (VoIP), que se utiliza para servicios de voz interactivos.
- Notificación explícita de congestión (ECN ) : 2 bits
- Este campo permite la notificación de extremo a extremo de la congestión de la red sin perder paquetes . [ 40 ] ECN es una característica opcional disponible cuando ambos puntos finales la admiten y es efectiva cuando también la admite la red subyacente.
- Longitud total : 16 bits
- Este campo de 16 bits define el tamaño total del paquete en bytes, incluyendo la cabecera y los datos. El tamaño mínimo es de 20 bytes (cabecera sin datos) y el máximo es de 65 535 bytes. Todos los hosts deben ser capaces de reensamblar datagramas de hasta 576 bytes, pero la mayoría de los hosts modernos manejan paquetes mucho mayores. Los enlaces pueden imponer restricciones adicionales al tamaño del paquete, en cuyo caso los datagramas deben fragmentarse . La fragmentación en IPv4 se realiza en el host emisor o en los enrutadores. El reensamblaje se realiza en el host receptor.
- Identificación : 16 bits
- Este campo es un campo de identificación y se utiliza principalmente para identificar de forma única el grupo de fragmentos de un único datagrama IP. Algunos trabajos experimentales han sugerido utilizar el campo ID para otros fines, como añadir información de rastreo de paquetes para ayudar a rastrear datagramas con direcciones de origen falsificadas, [ 41 ] pero cualquier uso de este tipo está ahora prohibido. [ 42 ]
- Banderas : 3 bits
- En este campo se definen tres indicadores.
- Reservado (R) : 1 bit
- Reservado. Debe establecerse en 0. [ a ]
- No fragmentar (DF) : 1 bit
- Este campo especifica si el datagrama se puede fragmentar o no. Esto se puede usar al enviar paquetes a un host que no tiene recursos para reensamblar los fragmentos. También se puede usar para el descubrimiento de la MTU de la ruta , ya sea automáticamente mediante el software IP del host o manualmente con herramientas de diagnóstico como ping o traceroute . Si el indicador DF está activado y se requiere fragmentación para enrutar el paquete, este se descarta.
- Más fragmentos (MF) : 1 bit
- Para paquetes no fragmentados, el indicador MF se desactiva. Para paquetes fragmentados, todos los fragmentos, excepto el último, tienen el indicador MF activado. El último fragmento tiene un campo de desplazamiento de fragmento distinto de cero , por lo que aún se puede diferenciar de un paquete no fragmentado.
- Desplazamiento del fragmento : 13 bits
- Este campo especifica el desplazamiento de un fragmento particular con respecto al inicio del datagrama IP original sin fragmentar. Los fragmentos se especifican en unidades de 8 bytes, por lo que las longitudes de los fragmentos siempre son un múltiplo de 8; excepto el último, que puede ser menor. [ 44 ] El valor de desplazamiento de fragmentación para el primer fragmento siempre es 0. El campo tiene 13 bits de ancho, por lo que el valor de desplazamiento varía de 0 a 8191 (de (2 0 – 1) a (2 13 – 1)). Por lo tanto, permite un desplazamiento máximo de fragmento de (2 13 – 1) × 8 = 65 528 bytes, incluyendo la longitud de la cabecera (65 528 + 20 = 65 548 bytes), lo que admite la fragmentación de paquetes que superan la longitud IP máxima de 65 535 bytes.
- Es hora de vivir (TTL ) : 8 bits
- El campo de tiempo de vida ( TTL) limita la duración de un datagrama para evitar fallos de red en caso de bucle de enrutamiento . Se especifica en segundos, pero los intervalos de tiempo inferiores a 1 segundo se redondean a 1. En la práctica, este campo se utiliza como contador de saltos : cuando el datagrama llega a un enrutador , este decrementa el campo TTL en uno. Cuando el campo TTL llega a cero, el enrutador descarta el paquete y, por lo general, envía un mensaje ICMP de tiempo excedido al remitente.
- El programa traceroute envía mensajes con valores TTL ajustados y utiliza estos mensajes ICMP de tiempo excedido para identificar los enrutadores por los que pasan los paquetes desde el origen hasta el destino.
- Protocolo : 8 bits
- Este campo define el protocolo de siguiente nivel utilizado en la porción de datos del datagrama IP. [ 45 ] La lista de números de protocolo IP es mantenida por la Autoridad de Números Asignados de Internet (IANA). [ 24 ]
- Algunos de los protocolos de carga útil comunes incluyen:
- Suma de verificación del encabezado : 16 bits
- El campo de suma de comprobación de la cabecera IPv4 se utiliza para verificar errores en la cabecera. Antes de enviar un paquete, la suma de comprobación se calcula como el complemento a uno de 16 bits de la suma en complemento a uno de todas las palabras de 16 bits de la cabecera. Esto incluye el propio campo de suma de comprobación de la cabecera , que se establece en cero durante el cálculo. El paquete se envía con la suma de comprobación de la cabecera que contiene el valor resultante. Cuando un paquete llega a un enrutador o a su destino, el dispositivo de red recalcula el valor de la suma de comprobación de la cabecera, incluyendo ahora el campo de suma de comprobación de la cabecera . El resultado debe ser cero; si se obtiene un resultado diferente, el dispositivo descarta el paquete.
- Cuando un paquete llega a un enrutador, este disminuye el valor TTL del encabezado. Por consiguiente, el enrutador debe calcular una nueva suma de verificación del encabezado antes de volver a enviarlo.
- Los errores en la parte de datos del paquete son gestionados por separado por el protocolo encapsulado. Tanto UDP como TCP tienen sumas de verificación independientes que se aplican a sus datos.
- Dirección de origen : 32 bits
- Este campo contiene la dirección IPv4 del remitente del paquete. Puede modificarse durante la transmisión mediante la traducción de direcciones de red (NAT).
- Dirección de destino : 32 bits
- Este campo contiene la dirección IPv4 del destinatario previsto del paquete. También puede verse afectado por NAT.
- Si se puede acceder directamente al destino , el paquete será entregado por la capa de enlace subyacente , con la ayuda de ARP . De lo contrario, el paquete necesita enrutamiento y se entregará a la dirección de la puerta de enlace .
- Opciones : 0 - 320 bits, rellenados hasta múltiplos de 32 bits.
- El campo Opciones no se usa con frecuencia. Algunos enrutadores pueden considerar peligrosos los paquetes que contienen ciertas opciones y bloquearlos. [ 46 ] El valor en el campo IHL debe incluir suficientes palabras adicionales de 32 bits para almacenar todas las opciones y cualquier relleno necesario para asegurar que el encabezado contenga un número entero de palabras de 32 bits. Si IHL es mayor que 5 (es decir, está entre 6 y 15), significa que el campo de opciones está presente y debe considerarse. La lista de opciones puede terminarse con la opción EOOL (Fin de la lista de opciones, 0x00); esto solo es necesario si el final de las opciones no coincidiría de otro modo con el final del encabezado.
- Dado que la mayoría de las opciones IP incluyen especificaciones sobre cuántos o qué dispositivos intermedios debe pasar el paquete, las opciones IP no se utilizan para la comunicación a través de Internet y los paquetes IP que incluyen algunas de las opciones IP deben descartarse, [ 47 ] : §3.13 ya que pueden exponer la topología de la red o los detalles de la red.
Fragmentación y reensamblaje
El Protocolo de Internet (IPv4) permite el tráfico entre redes. Su diseño admite redes de diversa naturaleza física y es independiente de la tecnología de transmisión subyacente utilizada en la capa de enlace. Las redes con hardware diferente suelen variar no solo en velocidad de transmisión, sino también en la unidad de transmisión máxima (MTU). Cuando una red desea transmitir datagramas a una red con una MTU menor, puede fragmentar sus datagramas. En IPv4, esta función se ubica en la capa de Internet y se ejecuta en los enrutadores IPv4, lo que limita la exposición de los hosts a estos problemas.
En cambio, IPv6 , la próxima generación del Protocolo de Internet, no permite que los enrutadores realicen la fragmentación; los hosts deben realizar el descubrimiento de la MTU de ruta antes de enviar datagramas.
Fragmentación
Cuando un enrutador recibe un paquete, examina la dirección de destino y determina la interfaz de salida que debe usar y la MTU de esa interfaz. Si el tamaño del paquete es mayor que la MTU y el bit "No fragmentar" (DF) en la cabecera del paquete está configurado en 0, el enrutador puede fragmentar el paquete.
El enrutador divide la carga útil en fragmentos. El tamaño máximo de cada fragmento es la MTU de salida menos el tamaño del encabezado IP (mínimo 20 bytes; máximo 60 bytes). El enrutador coloca cada fragmento en su propio paquete, y cada paquete de fragmento presenta los siguientes cambios:
- El campo de longitud total es el tamaño del fragmento + la longitud del encabezado.
- El indicador more fragments (MF) se establece para todos los fragmentos excepto el último, que se establece en 0.
- El campo de desplazamiento del fragmento se establece en función del desplazamiento del fragmento en la carga útil de datos original. Este se mide en bloques de 8 bytes.
- El campo de suma de verificación del encabezado se vuelve a calcular.
Por ejemplo, para una MTU de 1500 bytes y un tamaño de encabezado de 20 bytes, los desplazamientos de fragmento serían múltiplos de(0, 185, 370, 555, 740, etc.).
Es posible que un paquete se fragmente en un enrutador y que esos fragmentos se fragmenten aún más en otro enrutador. Por ejemplo, un paquete de 4520 bytes, que incluye una cabecera IP de 20 bytes, se fragmenta en dos paquetes en un enlace con una MTU de 2500 bytes:
Se conserva el tamaño total de los datos: 2480 bytes + 2020 bytes = 4500 bytes. Los desplazamientos sony.
Cuando se reenvía a un enlace con una MTU de 1.500 bytes, cada fragmento se divide en dos fragmentos:
Nuevamente, el tamaño de los datos se conserva: 1480 + 1000 = 2480 y 1480 + 540 = 2020.
En este caso, el bit de Más Fragmentos permanece en 1 para todos los fragmentos que contenían un 1, y para el último fragmento que llega, funciona como siempre; es decir, el bit MF se establece en 0 solo en el último. Y, por supuesto, el campo Identificación continúa teniendo el mismo valor en todos los fragmentos refragmentados. De esta manera, incluso si los fragmentos se refragmentan, el receptor sabe que inicialmente todos provenían del mismo paquete.
El último desplazamiento y el último tamaño de datos se utilizan para calcular el tamaño total de los datos:.
Reensamblaje
Un receptor sabe que un paquete es un fragmento si se cumple al menos una de las siguientes condiciones:
- Se establece la bandera " más fragmentos" , lo cual es verdadero para todos los fragmentos excepto el último.
- El desplazamiento del fragmento de campo es distinto de cero, lo cual es cierto para todos los fragmentos excepto el primero.
El receptor identifica los fragmentos coincidentes utilizando las direcciones de origen y destino, el ID de protocolo y el campo de identificación. El receptor recompone los datos a partir de fragmentos con el mismo ID utilizando tanto el desplazamiento del fragmento como el indicador de más fragmentos. Cuando el receptor recibe el último fragmento, que tiene el indicador de más fragmentos establecido en 0, puede calcular el tamaño de la carga útil de datos original multiplicando el desplazamiento del último fragmento por ocho y sumando el tamaño de los datos del último fragmento. En el ejemplo dado, este cálculo fuebytes. Cuando el receptor tiene todos los fragmentos, estos se pueden volver a ensamblar en la secuencia correcta según los desplazamientos para formar el datagrama original.
Protocolos de asistencia
Las direcciones IP no están vinculadas de forma permanente al hardware de red y, de hecho, en los sistemas operativos modernos , una interfaz de red puede tener múltiples direcciones IP. Para entregar correctamente un paquete IP al host de destino en un enlace, los hosts y enrutadores necesitan mecanismos adicionales para establecer una asociación entre la dirección de hardware [ b ] de las interfaces de red y las direcciones IP. El Protocolo de Resolución de Direcciones (ARP) realiza esta traducción de dirección IP a dirección de hardware para IPv4. Además, a menudo es necesaria la correlación inversa. Por ejemplo, a menos que una dirección esté preconfigurada por un administrador, cuando un host IP se inicia o se conecta a una red, necesita determinar su dirección IP. Los protocolos para dichas correlaciones inversas incluyen el Protocolo de Configuración Dinámica de Host (DHCP), el Protocolo de Arranque (BOOTP) y, con menos frecuencia, el ARP inverso .
Véase también
- Historia de Internet
- Lista de bloques de direcciones IPv4 /8 asignados
Notas
- ↑ Como una broma del Día de los Inocentes , se propuso su uso en RFC 3514 como el " fragmento malvado " [ 43 ]
- ↑ Para las tecnologías de red IEEE 802 , incluyendo Ethernet , la dirección de hardware es una dirección MAC .
Referencias
Este artículo fue adaptado de la siguiente fuente bajo licencia CC BY 4.0 ( 2022 ) : Michel Bakni; Sandra Hanbo (2022). "Una encuesta sobre el protocolo de Internet versión 4 (IPv4)" (PDF) . WikiRevista científica . doi : 10.15347/WJS/2022.002 . ISSN 2470-6345 . OCLC 9708517136 . S2CID 254665961 . Wikidata Q104661268 .
- ↑ "Estadísticas - IPv6 - Google" . Google . Consultado el 30 de julio de 2026 .
- ↑ "IPv6 – Google" . www.google.com . Consultado el 28 de enero de 2022 .
- 1 2 3 "Espacio de direcciones de propósito especial IPv4" . www.iana.org . IANA . Consultado el 21 de junio de 2026 .
- 1 2 3 4 5 M. Cotton; L. Vegoda; B. Haberman (abril de 2013). R. Bonica (ed.). Registros de direcciones IP de propósito especial . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6890 . ISSN 2070-1721 . BCP 153. RFC 6890 . Mejor práctica actual 153. Deja obsoletas las RFC 4773 , 5156 , 5735 y 5736. Actualizada por la RFC 8190 .
- ↑ Davis, Lidija (21 de febrero de 2009). "Vint Cerf: todavía nos queda el 80 por ciento del mundo por conectar" . The New York Times . Consultado el 10 de mayo de 2024 .
- ↑ "Una breve historia de IPv4" . IPv4 Market Group . Consultado el 19 de agosto de 2020 .
- ↑ "El mundo se está quedando sin direcciones de Internet"" . Archivado del original el 25-01-2011 . Recuperado el 23-01-2011 .
- ↑ Smith, Lucie; Lipner, Ian (3 de febrero de 2011). "Se agotó el espacio de direcciones IPv4 disponibles" . Number Resource Organization . Consultado el 3 de febrero de 2011 .
- ↑ ICANN, lista de correo nanog. "Cinco /8 asignados a RIR : no quedan /8 unicast IPv4 sin asignar" .
- ↑ Centro de Información de Redes de Asia-Pacífico (15 de abril de 2011). "El grupo de direcciones IPv4 de APNIC alcanza su límite final /8" . Archivado del original el 7 de agosto de 2011. Consultado el 15 de abril de 2011 .
- ↑ S. Deering ; R. Hinden (diciembre de 1998). Especificación del Protocolo de Internet, versión 6 (IPv6) . Grupo de Trabajo de Redes. doi : 10.17487/RFC2460 . RFC 2460 .Obsoleto. Obsoleto por RFC 8200. Obsoleto por RFC 1883. Actualizado por RFC 5095 , 5722 , 5871 , 6437 , 6564 , 6935 , 6946 , 7045 y 7112 .
- ↑ R. Fink; R. Hinden (marzo de 2004). Eliminación gradual de 6bone (asignación de direcciones de prueba IPv6) . Grupo de trabajo de redes. doi : 10.17487/RFC3701 . RFC 3701 .Informativo. Sustituye a RFC 2471 .
- ↑ Conferencia Internacional IEEE de 2016 sobre Tecnologías Emergentes y Prácticas Empresariales Innovadoras para la Transformación de las Sociedades (EmergiTech) . Piscataway, NJ: Universidad Tecnológica de Mauricio, Instituto de Ingenieros Eléctricos y Electrónicos. Agosto de 2016. ISBN 9781509007066OCLC 972636788
- ↑ "Entendiendo el direccionamiento IP: todo lo que siempre quiso saber" (PDF) . 3Com. Archivado del original (PDF) el 16 de junio de 2001.
- 1 2 3 4 Y. Rekhter ; B. Moskowitz; D. Karrenberg; GJ de Groot; E. Lear (febrero de 1996). Asignación de direcciones para Internets privadas . Grupo de trabajo de redes. doi : 10.17487/RFC1918 . BCP 5. RFC 1918 .Mejor práctica actual 5. Deja obsoletas las RFC 1627 y 1597. Actualizada por la RFC 6761 .
- ↑ J. Weil; V. Kuarsingh; C. Donley; C. Liljenstolpe; M. Azinger (abril de 2012). Prefijo IPv4 reservado por IANA para espacio de direcciones compartido . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6598 . ISSN 2070-1721 . BCP 153. RFC 6598 . Mejores prácticas actuales 153. Actualizaciones RFC 5735 .
- ↑ S. Cheshire ; B. Aboba; E. Guttman (mayo de 2005). Configuración dinámica de direcciones de enlace local IPv4 . Grupo de trabajo de redes. doi : 10.17487/RFC3927 . RFC 3927 .Norma propuesta.
- 1 2 3 J. Arkko; M. Cotton; L. Vegoda (enero de 2010). Bloques de direcciones IPv4 reservados para documentación . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC5737 . ISSN 2070-1721 . RFC 5737 . Informativo. Actualizaciones RFC 1166 .
- ↑ O. Troan (mayo de 2015). B. Carpenter (ed.). Desaprobando el prefijo Anycast para enrutadores de retransmisión 6to4 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7526 . BCP 196. RFC 7526 .Mejor práctica actual 196. Deja obsoletos los RFC 3068 y 6732 .
- ↑ C. Huitema (junio de 2001). Un prefijo Anycast para enrutadores de retransmisión 6to4 . Grupo de trabajo de redes. doi : 10.17487/RFC3068 . RFC 3068 .Informativo. Obsoleto según RFC 7526 .
- ↑ S. Bradner; J. McQuaid (marzo de 1999). Metodología de evaluación comparativa para dispositivos de interconexión de red . Grupo de trabajo de redes. doi : 10.17487/RFC2544 . RFC 2544 .Informativo. Actualizado por: RFC 6201 y RFC 6815 .
- 1 2 M. Cotton; L. Vegoda; D. Meyer (marzo de 2010). Directrices de la IANA para la asignación de direcciones de multidifusión IPv4 . IETF . doi : 10.17487/RFC5771 . ISSN 2070-1721 . BCP 51. RFC 5771 . Mejor práctica actual 51. Deja obsoletos los RFC 3138 y 3171. Actualiza el RFC 2780 .
- ↑ S. Venaas; R. Parekh; G. Van de Velde; T. Chown; M. Eubanks (agosto de 2012). Direcciones de multidifusión para documentación . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6676 . ISSN 2070-1721 . RFC 6676 . Informativo.
- 1 2 J. Reynolds , ed. (enero de 2002). Números asignados: RFC 1700 es reemplazado por una base de datos en línea . Grupo de trabajo de redes. doi : 10.17487/RFC3232 . RFC 3232 .Informativo. Sustituye a RFC 1700 .
- ↑ C. Byrne; T-Mobile US (agosto de 2014). Prefijo de continuidad de servicio IPv4 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7335 . ISSN 2070-1721 . RFC 7335 . Norma propuesta.
- ↑ https://labs.ripe.net/author/remco-van-mook/a-farewell-to-arps-ipv4-service-on-ipv6-only-networks/ .
{{cite web}}: Falta o está vacío|title=( ayuda ) - ↑ T. Savolainen; J. Korhonen; D. Wing (noviembre de 2013). Descubrimiento del prefijo IPv6 utilizado para la síntesis de direcciones IPv6 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7050 . ISSN 2070-1721 . RFC 7050 . Estándar propuesto. Actualizado por RFC 8880 .
- ↑ J. Abley; B. Dickson; W. Kumari; G. Michaelson (mayo de 2015). Redirección AS112 usando DNAME . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC7535 . ISSN 2070-1721 . RFC 7535 . Informativo.
- ↑ R. Braden , ed. (octubre de 1989). Requisitos para hosts de Internet: capas de comunicación . Grupo de trabajo de redes. doi : 10.17487/RFC1122 . STD 3. RFC 1122 .Estándar de Internet 3. Actualizado por RFC 1349 , 4379 , 5884 , 6093 , 6298 , 6633 , 6864 , 8029 y 9293.
Las direcciones IP no pueden tener el valor 0 o -1 para ninguno de los campos <Número de host>, <Número de red> o <Número de subred> (excepto en [casos especiales])
. - ↑ J. Reynolds ; J. Postel (octubre de 1984). NÚMEROS ASIGNADOS . Grupo de Trabajo de Redes. doi : 10.17487/RFC0923 . RFC 923 .Obsoleto. Obsoleto según RFC 943. Obsoleto según RFC 900. Direcciones especiales: En ciertos contextos, es útil tener direcciones fijas con significado funcional en lugar de como identificadores de hosts específicos. Cuando se requiere tal uso, la dirección cero debe interpretarse como "esta "
, como en "esta red".
- 1 2 R. Braden , ed. (octubre de 1989). Requisitos para hosts de Internet: capas de comunicación . Grupo de trabajo de redes. doi : 10.17487/RFC1122 . STD 3. RFC 1122 .Estándar de Internet 3. Actualizado por RFC 1349 , 4379 , 5884 , 6093 , 6298 , 6633 , 6864 , 8029 y 9293 .
- ↑ A. Retana; R. White; V. Fuller; D. McPherson (diciembre de 2000). Uso de prefijos de 31 bits en enlaces punto a punto IPv4 . Grupo de trabajo de redes. doi : 10.17487/RFC3021 . RFC 3021 .Norma propuesta.
- ↑ Almquist, Philip; Kastenholz, Frank (diciembre de 1993). "Hacia los requisitos para los enrutadores IP" . Grupo de trabajo de ingeniería de Internet .
- ↑ P. Almquist (noviembre de 1994). F. Kastenholz (ed.). Hacia los requisitos para enrutadores IP . Grupo de trabajo de redes. doi : 10.17487/RFC1716 . RFC 1716 .Obsoleto. Obsoleto según RFC 1812 .
- ↑ F. Baker , ed. (junio de 1995). Requisitos para enrutadores IP versión 4. Grupo de trabajo de redes. doi : 10.17487/RFC1812 . RFC 1812 .Norma propuesta. Sustituye a las RFC 1716 y 1009. Actualizada por las RFC 2644 y 6633 .
- ↑ "Comprensión y configuración del comando ip unnumbered" . Cisco . Consultado el 25 de noviembre de 2021 .
- ↑ C. Partridge; F. Kastenholz (diciembre de 1994). Criterios técnicos para elegir IP de próxima generación (IPng) . Grupo de trabajo de redes. doi : 10.17487/RFC1726 . RFC 1726 .Informativo.
- ↑ J. Postel , ed. ( septiembre de 1981). PROTOCOLO DE INTERNET - ESPECIFICACIÓN DEL PROTOCOLO DEL PROGRAMA DE INTERNET DE DARPA . IETF . doi : 10.17487/RFC0791 . STD 5. RFC 791. IEN 128, 123, 111, 80, 54, 44, 41, 28, 26.Estándar de Internet 5. Sustituye a RFC 760. Actualizado por RFC 1349 , 2474 y 6864 .
- ↑ K. Nichols; S. Blake; F. Baker ; D. Black (diciembre de 1998). Definición del campo de servicios diferenciados (campo DS) en los encabezados IPv4 e IPv6 . Grupo de trabajo de redes. doi : 10.17487/RFC2474 . RFC 2474 .Norma propuesta. Sustituye a las RFC 1455 y 1349. Actualizada por las RFC 3168 , 3260 y 8436 .
- ↑ K. Ramakrishnan; S. Floyd; D. Black (septiembre de 2001). La adición de notificación explícita de congestión (ECN) a IP . Grupo de trabajo de redes. doi : 10.17487/RFC3168 . RFC 3168 .Estándar propuesto. Deja obsoleto el RFC 2481. Actualiza los RFC 2474 , 2401 y 793. Actualizado por los RFC 4301 , 6040 y 8311 .
- ↑ Savage, Stefan (2000). "Soporte práctico de red para el rastreo de IP" . ACM SIGCOMM Computer Communication Review . 30 (4): 295– 306. doi : 10.1145/347057.347560 .
- ↑ J. Touch (febrero de 2013). Especificación actualizada del campo de ID de IPv4 . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6864 . ISSN 2070-1721 . RFC 6864 . Norma propuesta. Actualiza los RFC 791 , 1122 y 2003 .
- ↑ S. Bellovin (1 de abril de 2003). El indicador de seguridad en el encabezado IPv4 . Grupo de trabajo de redes. doi : 10.17487/RFC3514 . RFC 3514 .Informativo. Esta es una solicitud de comentarios con motivo del Día de los Inocentes .
- ↑ Bhardwaj, Rashmi (2020-06-04). "Fragment Offset - IP With Ease" . ipwithease.com . Consultado el 2022-11-21 .
- ↑ J. Postel , ed. ( septiembre de 1981). PROTOCOLO DE INTERNET - ESPECIFICACIÓN DEL PROTOCOLO DEL PROGRAMA DE INTERNET DE DARPA . IETF . doi : 10.17487/RFC0791 . STD 5. RFC 791. IEN 128, 123, 111, 80, 54, 44, 41, 28, 26.Estándar de Internet 5. sec. 3.1, pág. 14. Deja obsoleto el RFC 760. Actualizado por los RFC 1349 , 2474 y 6864 .
- ↑ "Preguntas frecuentes no oficiales de Cisco" . Consultado el 10 de mayo de 2012 .
- ↑ F. Gont (julio de 2011). Evaluación de seguridad del protocolo de Internet versión 4. Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC6274 . ISSN 2070-1721 . RFC 6274 . Informativo.
Enlaces externos
- Autoridad de Números Asignados de Internet (IANA)
- IP, Protocolo de Internet Archivado el 14/05/2011 en Wayback Machine — Desglose del encabezado IP, incluyendo opciones específicas
- C. Perkins, ed. (noviembre de 2010). Soporte de movilidad IP para IPv4, revisado . Grupo de trabajo de ingeniería de Internet . doi : 10.17487/RFC5944 . ISSN 2070-1721 . RFC 5944 . Norma propuesta. Sustituye a RFC 3344 .
- Estado oficial actual de las asignaciones de IPv4/8, según lo mantiene IANA.
- Artículos de Wikipedia publicados en literatura revisada por pares
- Artículos de Wikipedia publicados en WikiJournal of Science
- Artículos revisados por pares externos
- Artículos de Wikipedia publicados en literatura revisada por pares (J2W)
- IPv4
- Estándares de Internet
- protocolos de la capa de Internet
- protocolos de capa de red