IP es un protocolo de Nivel de Red que ofrece un servicio de entrega de mensajes (datagramas):
Dentro de un datagrama IP se encapsula una unidad de datos de uno de los siguientes protocolos:
Cada interfaz físico conectado a la Internet tiene asignada una dirección IP que resulta única en toda la red.
Los 32 bits se suelen expresar en «notación decimal puntuada»: 212.128.4.4
El rango de direcciones se divide en 5 clases:
| Clase | Rango |
| A | 0.0.0.0 a 127.255.255.255 |
| B | 128.0.0.0 a 191.255.255.255 |
| C | 192.0.0.0 a 223.255.255.255 |
| D | 224.0.0.0 a 239.255.255.255 |
| E | 240.0.0.0 a 247.255.255.255 |
Los primeros bits de una dirección indican cuál es su clase.
En cada clase, es distinto el número de bits de red y el de bits de máquina.
Tres organismos regionales: ARIN (América), RIPE (Europa y África) y APIC (Asia).
RIPE delega en organismos regionales (normalmente por países).
En España, el organismo es Red.es, Entidad Pública Empresarial adscrita al Ministerio de Ciencia y Tecnología.
Una organización adquiere una (o más) direcciones de clase, y el administrador local de la organización reparte la dirección de clase entre todas sus máquinas.
En ocasiones, por razones organizativas o topológicas, se utilizan algunos bits de máquina como bits de subred.
Sobre todo con direcciones de clases A y B.
Dada una dirección de red otorgada a una organización, el administrador decidirá si utilizará subredes, y el número de bits de máquina que utilizará para indicar la subred.
El número de bits con el que se indica la subred se denota con una máscara de subred: 32 bits, 1 para bits de red y subred, 0 para bits de máquina.
Ejemplos:
| Dirección de clase | Máscara | Subredes |
| 163.117.0.0 | 255.255.255.0 | 163.117.1.0 - 163.117.1.255 |
| 163.117.2.0 - 163.117.2.255 | ||
| ... | ||
| 163.117.254.0 - 163.117.254.255 | ||
| 163.117.255.0 - 163.117.255.255 | ||
| 193.147.71.0 | 255.255.255.128 | 193.147.71.0 - 193.147.71.127 |
| 193.147.71.128 - 193.147.71.255 |
Cualquier máquina IP puede está o no configurada como encaminador:
Para encaminar, una máquina consultará su tabla de encaminamiento. En ella, para enviar un datagrama a una cierta dirección IP destino, buscará por este orden:
Las tablas de encaminamiento tienen el aspecto:
% netstat -nr Kernel IP routing table Destination Gateway Genmask Flags MSS Window irtt Iface 163.117.137.0 0.0.0.0 255.255.255.0 U 1500 0 0 eth0 127.0.0.0 0.0.0.0 255.0.0.0 U 3584 0 0 lo 0.0.0.0 163.117.137.2 0.0.0.0 UG 1500 0 0 eth0
El mecanismo de las clases A, B y C se ha mostrado muy inflexible y ha provocado:
Solución (mientras que se pasa a IPv6): CIDR (Classless Inter Domain Routing): Encaminamiento sin clases.
Con CIDR:
El protocolo de resolución de direcciones ARP proporciona una forma de
pasar de una dirección IP a una dirección Ethernet.
Cuando el nivel IP va a enviar un datagrama con una cierta dirección IP de destino:
En cualquiera de los dos casos, sólo se conoce la dirección IP de una máquina adyacente a la que pasar el datagrama, pero para formar la trama Ethernet se necesita conocer la dirección Ethernet de destino.
Para conocer la dirección Ethernet de una máquina de la misma subred, dada su dirección IP, una máquina hace lo siguiente:
Las máquinas mantienen una cache de correspondencias direcciones IP a direcciones Ethernet.
Formato del paquete de solicitud/respuesta de ARP
| Solicitud/Respuesta | Eth. Or. | IP Or. | Eth. Dest. | IP Dest. |
En ocasiones es necesario un método para obtener la dirección IP de una máquina a partir de su dirección Ethernet.
Ejemplo: Al arrancar una estación sin disco, no puede tener en ningún fichero de configuración su dirección IP. Sólo sabe que tiene una tarjeta Ethernet en la que está grabada su dirección Ethernet.
Mecanismo de RARP:
Lo habitual es tener una máquina en la subred que actúe como servidor de RARP, manteniendo una tabla de correspondencias de direcciones Ethernet a direcciones IP para todos los nodos de la subred.
Si, por razones de protección frente a fallos, se colocan varios servidores de RARP en la misma subred, el protocolo establece que se tomará sólo la primera respuesta RARP recibida por la máquina que lanzo la solicitud RARP.
Alternativas a RARP: BOOTP (similar) y DHCP (más complejo).
Este protocolo se utiliza para interrogar y/o comunicar condiciones de error entre máquinas.
Los mensajes ICMP se transmiten encapsulados en datagramas IP. Su formato es:
Ejemplos de mensajes ICMP:
| tipo | código | descripción |
| 0 | 0 | respuesta de eco |
| 3 | 0 | destino inalcanzable: red inalcanzable |
| 3 | 1 | destino inalcanzable: máquina inalcanzable |
| 3 | 3 | destino inalcanzable: puerto inalcanzable |
| 8 | 0 | solicitud de eco |
| 11 | 0 | tiempo excedido: TTL = 0 |
| 12 | 1 | cabecera IP mal: falta una opción |
| 13 | 0 | solicitud de marca de tiempo |
| 14 | 0 | respuesta de marca de tiempo |
10.0.0.0-10.255.255.255
172.16.0.0-172.31.255.255
192.168.0.0-192.168.255.255
El nivel de red (IP) ofrece un servicio basado en datagramas.
La principal fuente de pérdidas de paquetes en Internet se debe a la congestión de encaminadores, que actúan descartando paquetes.
IP no toma ninguna medida para prevenir o disminuir la congestión: será labor de protocolos de niveles superiores, en su caso.