Nota: Los RFC (Request for Comments) son ficheros de texto donde se definen los protocolos de TCP/IP, la propia arquitectura TCP/IP, los cambios y mejoras que se les han ido haciendo hasta hoy, etc.
Una de las cosas más importantes definidas en el protocolo IP es el direccionamiento IP.
Las direcciones IP están definidas dentro de la arquitectura de red TCP/IP, en el nivel 3 de la misma, el nivel de Interred o Internet. En concreto forman parte del protocolo IP del que toman su nombre.
Como se ha universalizado el empleo de redes TCP/IP en todo tipo de ordenadores, encontraremos direcciones IP en casi en cualquier equipo.
Existen dos tipos de direcciones IP:
- Direcciones IP versión 4 (IP v4)
- Direcciones IP versión 6 (IP v6)
Las direcciones IP v4 son números de 32 bits, mientras que las IP v6 son números de 128 bits. Con las primeras, al ser de 32 bits podemos tener hasta: 4.294.967.296. Con las segundas, al ser de 128 bits, podemos tener muchisimas más.
Las IP v6 se desarrollaron cuando parecía que las IP v4 estaban empezando a agotarse en el mundo. Pero en seguida aparecieron formas de reutilizar direcciones IP v4 definiendo rangos de IP privadas y protocolos como NAT para conectar redes que utilizan esas IP privadas mediante dispositivos como los routers (encaminadores).
En la actualidad el empleo de IP v4 es universal, mientras que IP v6 comienza a utilizarse en ámbitos reducidos.
Dirección IP (32 bits) en binario: 11000000 10101000 00000000 01110011
Dirección IP (8 bits) en decimal: 192 168 0 115
Separada por puntos: 192.168.0.115
Por otra parte la IP de cada ordenador debe ser única, tanto en una red como entre redes conectadas entre sí (y si están conectadas a Internet, llegamos a que la IP de cada ordenador debe ser distinta a nivel mundial, ya que Internet une redes de todo el mundo).
Esto se consigue mediante una serie de organismos, como el IANA (Internet Assigned Numbers Authority), que se ocupan de asignar IP y grupos de IP a instituciones, empresas proveedoras de servicios de Internet.
Nota: Las empresas de proveedores de servicios de Internet se abrevian como ISP (Internet Service Providers)
- Parte de Red, que sirve para identificar la red en la que está un ordenador.
- Parte de Host (Ordenador), que distingue unos ordenadores de otros dentro de la misma red.
Por ejemplo, en la IP 192.168.0.4 tenemos que la parte de red son los 3 primeros valores empezando por la izquierda, 192.168.0, y la parte de host es el cuarto valor.
¿Por qué en este ejemplo la parte de red son 3 números y la de host 1?
De ahí que existan clases de IP adecuadas para redes grandes (clase A), otras para redes medianas (clase B) y otras para redes pequeñas (clase C), además de algunas otras clases de uso reservado (clases D y E, no se utilizan a la hora de montar redes).
En redes de clase B podemos tener un número medio de redes (2 bytes) cada uno con un número medio de ordenadores (2 bytes).
Redes de clase A: Aproximadamente 2 a la 8 redes, cada una con aproximadamente 2 a la 24 hosts.
Redes de clase B: Aproximadamente 2 a la 16 redes, cada una con aproximadamente 2 a la 16 hosts.
Redes de clase C: Aproximadamente 2 a la 24 redes, cada una con aproximadamente 2 a la 8 hosts.
Una regla prática para averiguar a qué clase pertenece una dirección IP es mirar el valor de su primer byte por la izquierda; con ese valor podemos hallar la clase a que pertebece la IP. La regla es:
Si el primer byte está entre 1 y 127, la dirección es de clase A.
Si el primer byte está entre 128 y 191, la dirección es de clase B.
Si el primer byte está entre 192 y 223, la dirección es de clase C.
Una forma de saber cuál es la parte de red y de host de la IP es averiguar la clase de esa IP, mirando el primer byte de la izquierda.
Sin embargo existe otra forma de indicar cuál es la parte de red y de host de una IP, que consiste en utilizar las llamadas máscaras de subred.
Nota: En realidad las máscaras de subred sirven para 2 cosas: Saber cuál es la parte de red y de host de una IP, y hallar la IP de red a la que pertenece una IP dada.
La máscara de subred es un número de 32 bits, escrito como 4 bytes separados por puntos (como en una dirección IP) cuyos valores pueden ser 0 (los 8 bits a 0) o bien 255 (los 8 bits a 1). Por ejemplo lo siguiente es una máscara de subred:
Máscaras de subred en binario: 11111111 11111111 11111111 11111111
Máscaras de subred en decimal: 255.255.255.0
Como vemos, las máscaras tienen el mismo aspecto que las direcciones IP; sólo cambia los valores que puede tomar cada byte; 0 ó 255.
Cada clase de direcciones IP tiene asignada una máscara de subred por defecto.
Normalmente cuando se escribe una IP también se indica la máscara de subred que la acompaña: Siempre se da el par IP-máscara, no únicamente la IP.
Una forma más moderna (y más corta) de escribir la máscara de subred es con una barra inclinada /, seguida del número de bits usados como parte de red.
La equivalencia entre las máscaras escritas de forma tradicional y como /xx es la siguiente:
Para ello basta poner en binario la IP del ordenador y la máscara de subred asociada a esa IP, hacer un AND de los bits de IP y máscara, y el resultado es la dirección IP de la red en que se encuentra el ordenador. Luego la dirección de red es como la del equipo, pero con la parte de host puesta a 0.
Existen una serie de direcciones IP reservadas, que no podemos poner en nuestros equipos al configurar la red manualmente:
0.0.0.0 - Utilizada por los ordenadores cuando arrancan, hasta que se carga del todo el sistema operativo. Es una IP que no se utiliza después, sólo la emplea el software que implementa la pila TCP/IP del sistema operativo al iniciar el ordenador.
127.0.0.1 - Dirección "loopback" (bucle de vuelta o sobre sí mismo). Utilizada para referirnos al propio ordenador, y también para comprobar que la red TCP/IP funciona bien en un ordenador deconectado de la red. Siempre podemos usar esta IP para hacer operaciones de red donde haga falta poner la IP del propio equipo. No interfiere con la IP asignada al equipo bien por nosotros (manualmente) o bien de forma automática mediante DHCP.
Rango de 127.0.0.0 a 127.255.255.255 - Rango de direcciones "loopback". Reservado para los mismos usos que la IP 127.0.0.1.
Direcciones IP con parte de host a 0 - Son direcciones de red, y no las podemos asignar a ningún equipo concreto. La IP que acaba en 255 tampoco podemos usarla en equipos.
Direcciones IP con parte de host a 255 - Son direcciones de broadcast (difusión), y no las podemos asignar a ningún equipo concreto. Se utilizan para enviar datos a todos los equipos de la red simultáneamente.
Rango de 169.254.0.0 a 169.254.255.255 - Son direcciones de "autoconfiguración" de los ordenadores. Son utilizadas por algunos PC y Mac cuando están configurados para usar TCP/IP pero no tienen asignada una IP estática (introducida a mano) y la asignación de una IP dinámica (por DHCP) ha fallado.
Son ciertos rangos de direcciones IP reservadas para "usos privados" (Realmente para que las use cualquiera). Estos usos son los siguientes:
- Redes aisaladas, sin conexión a otras redes.
- Redes conectadas con otra red o con Internet mediante un dispositivo que realice NAT (Networking Address Translation), como un router . De ésta manera las IP privadas no son "vistas" por la otra red, ya que lo que se verá es la IP externa del router.