Conceptos Básicos de la Dirección IP

La dirección IP parece simplemente un conjunto de 4 números que indica la dirección de nuestro ordenador. Sin embargo tiene una serie de características que conviene conocer. Conociendo las reglas y normas que indicamos en este capítulo podemos obtener información adicioinal, podemos encontrar la causa de un problema o podemos saber que dirección podemos y que otra no podemos poner a nuestro ordenador. Las direcciones IP son asignadas por una organización internacional llamada IANA aunque nosotros no necesitamos pedirselo directamente. La asignación se realiza en cascada. IANA asigna un rango a una organización en cada región. Estas a una organización en cada pais. Esa organización realiza la asignación a grandes empresas y operadores y estos a clientes más pequeños y así sucesivamente.

IPv4

Es la dirección IP utilizada en internet desde siempre. Cada dirección es un conjunto de 4 números de 0 a 255. Esto permite un número de direcciones de 256*256*256*256 = 4.294.967.296. Más adelante veremos que no todas la direcciones IP son posibles y el número es inferior. En cualquier caso era una cantidad de direcciones más que suficiente durante el siglo pasado pero que se ha demostrado totalmente insuficiente hoy en día. Actualmente es bastante complicado obtener una dirección IP fija para utilizar en nuestro ordenador válida en internet. IANA asignó en 2011 el último bloque de direcciones a la organización encargada de asignar direcciones en Asia y es probable que esté prácticamente acabado.

IPv6

Aunque, en un principio, se penso en un esquema compatible con IPv4, en el año 2003 se definió el nuevo estandar de direcciones IP que comprende 32 dígitos hexadecimales agrupados de 4 en 4. Esto permite 340 sextillones de direcciones, más que suficiente por ahora. En principio los paquetes IPv4 y IPv6 son incompatibles pero un ordenador puede tener una dirección IPv4 y otra IPv6 simultaneamente. Actualmente prácticamente todos los sistemas y equipos soportan IPv6 pero no hay la seguridad de que funcione para cualquier sistema o equipo. Basta que uno de los equipos por los que pase un paquete no soporte IPv6 y el paquete se perdería. Por lo tanto solo se utiliza en entornos controlados utilizando la función NAT para convertir la dirección a IPv4 cuando se sale de este entorno controlado. Aun así hay una presión muy fuerte de comenzar el uso de IPv6 ante el agotamiento de las direcciones IPv4. Una dirección IPv6 se compone de 8 grupos de 4 dígitos hexadecimales. Un ejemplo de dirección es “2001:0db8:85a3:08d3:1319:8a2e:0370:7334”. Los dos primeros grupos de 4 dígitos corresponden al uso que se va a dar a la dirección. Como en el caso de IPv4 la organización IANA realiza la primera asignación indicando el uso y la región a la que van destinados.

¿Por qué de 0 a 255?

Internamente el ordenador asigna a cada número un byte. Un byte es un conjunto de 8 números binarios. Por lo tanto el número más pequeño es el 00000000, o sea, 0 y el número más grande es el 11111111. Si utilizamos la calculadora de windows y pasamos de binario a decimal nos encontramos que corresponde al número 255. Por regla general no se debe utilizar los valores 0 y 255 para una dirección IP en ninguno de los números que componen una dirección.

¿Existen distintos tipos de redes o usos de la dirección IP?

Sí, dependiendo del primer número nos encontramos distintos tipos de redes o usos. Los rangos son los siguientes:

Rango  Uso
 1.0.0.0 a 126.255.255.255  Redes tipo A
 127.0.0.0 a 127.255.255.255  Se reservan para la propia máquina
128. 0.0.0 a 191.255.255.255 Redes tipo B
192.0.0.0 a 223.255.255.255 Redes tipo C
224.0.0.0 a 239.255.255.255 Multicast, emisión de radio y televisión
240.0.0.0 a 255.255.255.255 Uso futuro

Redes tipo A

Son redes asignadas a grandes empresas. Por ejemplo el número 56 está asignado al servicio postal de los Estados Unidos. Por lo tanto el servicio puede utilizar libremente el rango 56.0.0.0 a 56.255.255.255 asignando las direcciones a sus ordenadores como crea conveniente. Todos sus ordenadores con direcciones en este rango serán perfectamente accesibles desde cualquier lugar de internet. Realmente es un exceso de direcciones ya que ninguna empresa necesita tener tantos ordenadores accesibles desde internet pero es una asignación que se hizo cuando no había ninguna problema y se realizo principalmente a empresas de EEUU. El número 10 está reservado para uso privado. Esto quiere decir que ningún ordenador en internet puede tener esa dirección y una gran empresa lo puede utilizar para sus redes internas. Eso sí, necesitará la función NAT para convertir las direcciones privadas en direcciones válidas en internet si se quiere realizar una conexión fuera de la red privada.

Redes tipo B

Las redes tipo A son 126 y se acabaron hace ya mucho tiempo y lo habitual ha sido asignar rangos de direcciones tipo B. Cada empresa solicitaba solicitaba un rango tipo B que le fija los dos primeros números y podía asignar libremente el tercer y el cuarto número. Por ejemplo una empresa podía recibir el rango 184.56 por lo que podía asignar libremente la direcciones 184.56.0.0 a 184.56.255.255. Estos rangos también se han acabado por lo que hoy en día no se puede solicitar ninguno. Eso sí, estos rangos, en su mayoría, están asignados a operadores y ellos, a su vez, los alquilan a los clientes finales. Los rangos 172.16.X.X a 172.31.X.X están reservados para direcciones privadas y se pueden utilizar libremente en una red privada.

Redes tipo C

Son las últimas que han estado disponibles. Al solicitarlas se recibía fijados los tres primeros números y se podía asignar libremente el cuarto. Si se recibía el número 211.123.112. se podían asignar libremente las direcciones 211.123.112.X. Las redes tipo C permiten solo 256 direcciones distintas lo cual es insuficiente para muchas empresas, especialmente los operadores. Esto les obliga a solicitar varios redes tipo C para tener el suficiente número de direcciones IP. Esto complica algo la gestión ya que las direcciones asignadas están fragmentadas en varias redes. En este rango están reservadas para uso privado las redes 192.168.0.X a 192.168.255.X. La red interna 192.168.1.X es la más utilizada internamente en los routers de los clientes residenciales.

Unicast

Son las direcciones normales para las redes tipo A, B y C. Se caracterizan porque los paquetes tienen un único origen y un único destino. Por lo tanto, si se necesita enviar la misma información a dos o más destinos distintos, es necesario enviar un paquete a cada uno de los destinos. La inmensa mayoría de los paquetes en internet son unicast.

Broadcast

El destino broadcast se utiliza cuando se quiere mandar un paquete que sea recibido por todos los ordenadores de la red. Esto no se utiliza para enviar información si no al principio de una comunicación. Cuando un ordenador no conoce la dirección física o MAC del destinatario manda un mensaje de broadcast  que llega a todos los ordenadores de la red (no atraviesa los routers) preguntando por el ordenador destino. A ese mensaje solo contesta el ordenador implicado indicando su dirección física o MAC. A partir de este momento la comunicación utiliza paquetes unicast. Como se indica su uso es muy restringido para este tipo de mensajes. La dirección de broadcast es la más alta de la red. Por ejemplo, para una red tipo C con dirección 192.168.1.X la dirección de broadcast es 192.168.1.255. Por eso no es conveniente utilizar el número 255 en cualquier número de una dirección ya que se puede confundir con la dirección de broadcast.

Multicast

Las direcciones Multicast son utilizadas para la difusión de canales de radio y televisión a través de internet. La transmisión multicast se realiza en un solo sentido desde un servidor a los clientes. Cualquier paquete con dirección destino multicast es distribuido por toda la red ya que puede haber muchos clientes distribuidos por toda la red. En el tramo final solo se envía al cliente si este tiene activa la dirección multicast correspondiente al paquete. Como los paquetes se replican muchas veces esta funcion solo se utiliza en entornos controlados como redes privadas para aplicaciones como televisión por cable o IPTV.

Hexadecimal

Aunque el bit es la unidad de información más básica la agrupación más usual es el byte u octeto. El byte tiene ocho bits y la información se guarda en el inmensa mayoría de los casos en multiplos del byte. Por ejemplo, para la dirección IP en IPv4 cada número se almacena en un byte y por eso los valores van de 0 a 255 (11111111 en binario). Para pasar de binario a decimal (nuestro sistema númerico de toda la vida) se puede hacer por múltiples métodos o con una calculadora como la de windows en modo científico. En cualquier caso lleva su tiempo y ha surgido la necesidad de manejar los bytes de una manera fácil y rápida.

La mejora manera que se ha encontrado es crear un sistema hexadecimal, o sea, de 16 números. De 0 a 9 se utilizan los números clásicos del sistema decimal pero necesitamos 6 números más. En vez de inventar 6 nuevos números se han utilizado las 6 primeras letras del abecedario (a, b, c, d, e, f) pero lo complicado es que estas letras se utilizan como números. Por lo tanto, contando en hexadecimal, después del 9 va la “a” y después la “b”. Después de la “f” va 10. Es un poco extraño el utilizar letras como números pero una vez que se coje la costumbre es bastante rápido. La traducción es la siguiente:

 Valor de 4 dígitos binarios  Valor en Hexadecimal
0000 0
0001 1
0010 2
0011 3
0100 4
0101 5
0110 6
0111 7
1000 8
1001 9
1010 a
1011 b
1100 c
1101 d
1110 e
1111 f

Por lo tanto un byte puede ser expresado en hexadecimal con dos dígitos. El valor más pequeño es “00” y el valor más alto es “ff”. Para una persona entrenada, una vez aprendida la tabla, es bastante fácil pasar de hexadecimal a binario o biceversa. ¿Por qué se utiliza hexadecimal y no binario? Estamos acostumbrados a utilizar números con pocos dígitos, para nosotros es imposible aprendernos grandes números en binario. El sistema hexadecimal es parecido al decimal y, con un poco de entrenamiento, es relativamente sencillo de utilizar.