Archivo de la categoría: TCP-IP

TCP-IP es una descripción de protocolos de red desarrollado por Vinton Cerf y Robert E. Kahn, por encargo de DARPA, en la década de 1970

TCP-IP

TCP-IP

TCP-IP es una descripción de protocolos de red desarrollado por Vinton Cerf y Robert E. Kahn, en la década de 1970

Fue implantado en la red ARPANET, la primera red de área amplia (WAN), desarrollada por encargo de DARPA, una agencia del Departamento de Defensa de los Estados Unidos, y predecesora de Internet

A veces se denomina como modelo DoD o modelo DARPA

Direccionamiento IP

Todos los equipos conectados a una red deben ser identificados por una dirección única

Los equipos compatibles con Ethernet poseen una dirección MAC única de 48 bits (6 bytes) de longitud

Cada fabricante de equipos Ethernet tiene asignado un segmento de direcciones, y es su responsabilidad asignar una dirección distinta a cada equipo

Las direcciones MAC se representan en hexadecimal con el siguiente formato: XX : XX : XX : XX : XX : XX, que está compuesta por valores en el rango 0-FF

Ejemplo de MAC válida: 00:14:83:B2:19:45

En las redes IP, la identificación única se hace mediante la dirección IP (IP address)

En la actualidad se hace mediante el protocolo IPv4 que establece la dirección mediante 32 bits (4 bytes)

En un futuro cercano se implantará el protocolo IPv6 que establece la dirección mediante 128 bits (16 bytes)

Subnet Mask (Máscara de subred)

Una subred es una red en un entorno multired que usa direcciones IP derivadas de un único identificador de red. Las subredes dividen una red grande en varias redes físicas conectadas con enrutadores. Una máscara de subred aparta parte de una dirección IP de tal forma que TCP/IP pueda distinguir el identificador de red del identificador de host. Cuando las TCP/IP se intentan comunicar, la máscara de subred determina si el host destino pertenece a una red local o a una red remota. Los ordenadores deben tener la misma máscara de subred para comunicarse dentro de una red local

Clase IP
A 255.0.0.0
B 255.255.0.0
C 255.255.255.0
D 255.255.255.255

Default Gateway (Puerta de enlace predeterminada)

Es el dispositivo intermedio de una red local que almacena los identificadores de red de otras redes de la empresa o de Internet. Se configura una dirección IP para la pasarela predeterminada para poder comunicarse con un host de otra red. TCP/IP manda paquetes para las redes remotas a la pasarela predeterminada (si no hay otra ruta configurada), que reenvía los paquetes a otras pasarelas hasta que el paquete es entregado a una pasarela conectada al destino especificado

DNS (Sistema de Nombres de Dominio)

La idea es sencilla, asociar nombres a las direcciones IP y dotar de un sistema de traducción que va a ser realizado por los servidores DNS. Evidentemente los servidores DNS siempre se referencian por su dirección IP

Los nombres de dominio cuentan con una parte de nombre y una parte de identificador de dominio. Los identificadores establecidos son:

Identificador Descripción
.arpa Identificación ARPANET de Internet
.com Empresa comercial
.edu Institución educacional
.gov Organismo gubernamental
.mil Militar
.net Relacionado con Internet o sus proveedores
.org Otro organismo no incluido en los anteriores

Esta definición fue creada exclusivamente para EEUU, cuando con la expansión de Internet se crearon nuevos identificadores con dos letras para indicar un país. Por ejemplo .es para España, .fr para Francia, .uk para Reino unido, etc

Se prevé una ampliación con identificadores como .info para información, .nom para nominal de personas

El uso de un nombre se solicita al NIC (Network Information Center, centro de información de redes), si el nombre se aprueba se añade a la base de datos de Internet

URL (Uniform Resource Locator)

Uno de los objetivos de la WWW era disponer de un sistema para localizar y acceder de forma sencilla a cualquier elemento (documentos, ficheros de programas, etc), mediante el navegador y de forma sencilla e independiente del protocolo usado

Con este objetivo se desarrolló el localizador Uniforme de Recursos. Una URL es una descripción completa de un elemento indicando el protocolo de acceso, la máquina donde se encuentra, la ruta a seguir y el identificador del elemento

El formato general de una URL es:

servicio://maquina.dominio:puerto/camino/fichero?parámetros

El servicio es alguno de los que ofrece Internet: http, https (HyperText Transfer Protocol Secure) para conexiones http seguras, ftp, ghoper, wais, news, telnet, mailto para el envío de correo y file para obtener un fichero local del disco local, se sigue de ://

La maquina.domino indica el servidor que nos ofrece el recurso, por ejemplo para la universidad de la Rioja, el servidor web es www.unirioja.es y el servidor de correo vía Web es correo.unirioja.es

El puerto es opcional y normalmente no es necesario indicarlo si usamos el que normalmente se asigna al servicio. Para el servidor de correo Web de la universidad de la Rioja se usa el puerto 8000 y hay que indicarlo

El camino es la ruta de directorios a seguir para encontrar el fichero deseado. Para separar subdirectorios utilizaremos la barra de UNIX /, se utiliza por convenio por ser el sistema de la mayoría de los servidores. Importante recordar que en máquinas tipo UNIX se diferencia entre mayúsculas y minúsculas tanto en el nombre de los directorios como en el de los ficheros

La extensión de los ficheros es importante porque indica al navegador como tiene que tratarlos. txt fichero de texto plano; htm o html documento HTML; gif, jpg o jpeg formato de imagen, etc

En http si no indicamos fichero, en algunos servidores asumen por defecto index.htm o el fichero que se le asignara por defecto

Los parámetros sirven para pasar a un determinados ficheros (htm, php,…) valores de variables

El formato es:

variable=valor&variable=valor&variable=…

DHCP (Dynamic Host Configuration Protocol)

Protocolo para la Configuración Dinámica de equipos. Permite automatizar la configuración de la dirección IP, de la puerta de enlace, valores opcionales, la dirección de los servidores DNS, la dirección de los servidores WINS

Los usuarios no necesitan adquirir la información de direccionamiento IP de un administrador para configurar TCP/IP. El servicio DHCP proporciona toda la información de configuración necesaria en la red a los clientes DHCP

La información de direccionamiento IP válida asegura una correcta configuración, eliminando muchos problemas difíciles de rastrear

Tener servidores ejecutando el servicio DHCP en cada subred elimina la sobrecarga asociada a tener que reconfigurar de forma manual las direcciones IP, las máscaras de subred y las pasarelas predeterminadas cuando se mueven ordenadores de una subred a otra. Obsérvese que un único servidor DHCP puede soportar la asignación de direcciones IP para varias redes

WINS (Windows Internet Name Service)

El proceso de resolución de nombres de WINS permite a los clientes de WINS registrar su nombre y dirección IP en los servidores de WINS. Los clientes de WINS pueden consultar los servidores de WINS para localizar y comunicarse con otros recursos de la red

Un cliente WINS actualiza automáticamente la base de datos de WINS siempre que cambia su información de direccionamiento IP, por ejemplo, cuando el direccionamiento dinámico a través del servicio de DHCP da lugar a una nueva dirección IP para un equipo que se movió de una subred a otra

Los siguientes pasos esbozan el proceso de resolución de nombres de WINS:

  1. Cada vez que inicia un cliente de WINS, registra su correspondencia nombre NetBIOS/dirección IP con un servidor de WINS designado. Entonces consulta al servidor de WINS para la resolución de nombres de equipos
  2. Cuando un cliente WINS inicia un comando de NetBIOS para comunicarse con otro recurso de la red, envía directamente una petición de consulta de nombre al servicio de WINS en vez de difundir la petición en la red local
  3. El servidor de WINS encuentra en su base de datos una correspondencia nombre de NetBIOS/dirección IP para el recurso destino y devuelve la dirección IP al cliente WINS

IPv4

IPv4

El IPv4 (Internet Protocol version 4) o Protocolo de Internet versión 4 es la cuarta versión del IP (Internet Protocol), un protocolo de interconexión de redes basados en Internet, y que fue la primera versión implementada en 1983 para la producción de ARPANET

Definido en el RFC 791, el IPv4 usa direcciones de 32 bits, limitadas a 2^{32}= 4294967296 direcciones únicas, muchas de ellas LAN

Donde el valor decimal de cada uno de los bytes sigue el siguiente formato: XXX . XXX . XXX . XXX, que está compuesta por valores en el rango 0-254

Ejemplo de dirección válida: 192.168.0.1

Cada dirección IPv4 tiene dos partes:

  • Identificador de red
    Identifica todos los hosts de una misma red física
  • Identificador de host
    Identifica un host dentro de una red

En el ejemplo, el identificador de red es 192.168.0 y el identificador de host es 1

Por el enorme crecimiento que ha tenido la seguridad electrónica y la automatización, combinado con el hecho de que se desperdician direcciones, hace varios años se observó que escaseaban las direcciones IPv4

Esta limitación ayudó a estimular el estudio de la implantación del nuevo protocolo IPv6, que en el año 2016 ya estaba en la primera fase de pruebas, y que terminará reemplazando al protocolo IPv4

Las direcciones disponibles en la reserva global de IANA pertenecientes al protocolo IPv4 se agotaron oficialmente el lunes 31 de enero de 2011

Los Registros Regionales de Internet, desde ese momento, debieron asignar sus propias reservas, que se estimaba que alcanzarían hasta el año 2020 y no por mucho más tiempo

A día de hoy, siguen usándose y no se ha realizado la migración al IPv6

Direcciones reservadas

  • 0.0.0.0 se usa exclusivamente para Internet, porque representa a cualquier red
  • 127.0.0.0

    se reserva para las pruebas de loopback

    Los Routers o las máquinas locales pueden utilizar esta dirección para enviar paquetes nuevamente hacia ellos mismos

    Por lo tanto, no se puede asignar a ninguna red

  • Las direcciones comprendidas entre 169.254.0.0 y 169.254.255.255

    son direcciones asignadas por la autoridad para la asignación de IANA (Internet Assigned Numbers Autority, número de Internet) para el direccionamiento IP privado automático

    Esto garantiza el no tener conflictos con direcciones enrutables

Clases

Clases de IPv4
Tipo
A \frac{\color{Green}\text{0XXXXXXX}}{\color{Green}red} \frac{\color{Blue}\text{XXXXXXXX XXXXXXXX XXXXXXXX}}{\color{Blue}host}
B \frac{\color{Green}\text{10XXXXXX XXXXXXXX}}{\color{Green}red} \frac{\color{Blue}\text{XXXXXXXX XXXXXXXX}}{\color{Blue}host}
C \frac{\color{Green}\text{110XXXXX XXXXXXXX XXXXXXXX}}{\color{Green}red} \frac{\color{Blue}\text{XXXXXXXX}}{\color{Blue}host}
D \frac{\color{Green}\text{1110XXXX XXXXXXXX XXXXXXXX XXXXXXXX}}{\color{Green}red} \frac{}{\color{Blue}host}
E \frac{\color{Green}\text{11110XXX XXXXXXXX XXXXXXXX XXXXXXXX}}{\color{Green}red} \frac{}{\color{Blue}host}

Clase A

Se utilizan en redes de tamaño extremadamente grande

Su rango va del 1-126 en su primer valor

El resto están compuestos por valores en el rango 0-254

El primer bit es un 0, luego se emplean 7 bits para identificar la red y 24 para identificar el host

El menor número que se puede representar es 00000000, que es el 0 decimal

El valor más alto que se puede representar es 01111111, que es el 127 decimal

Los números 0 y 127 quedan reservados y no pueden utilizarse como direcciones de red

En principio existen 2^7 = 128 redes de clase A y 2^{24} = 16777216 hosts para esas redes

Ejemplo de dirección válida de clase A: 80.78.32.254

Clase B

Se utilizan en redes de tamaño moderado a grande

Su rango va del 128-191 en su primer valor

El resto están compuestos por valores en el rango 0-254

Los dos primeros bits son 10, luego se emplean 14 bits para identificar la red y 16 para identificar el host

El menor número que puede representarse es 10000000, que es el 128 decimal

El número más alto que puede representarse es 10111111, que es el 191 decimal

En principio existen 2^{14} = 16384 redes de clase B y 2^{16} = 65536 hosts para esas redes

Ejemplo de dirección válida de clase B: 130.254.10.99

Clase C

Se utilizan en redes de tamaño pequeño y que tienen un máximo de 254 hosts, generalmente redes de área local

Su rango va del 192-223 en su primer valor

El resto están compuestos por valores en el rango 0-254

Los tres primeros bits son 110, luego se emplean 21 bits para identificar la red y 8 para identificar el host

El menor número que puede representarse es 11000000, que es el 192 decimal

El número más alto que puede representarse es 11011111, que es el 223 decimal

En principio existen 2^{21} = 2097152 de redes de clase C y 2^8 = 256 hosts para esas redes

Ejemplo de dirección válida de clase C: 192.168.240.5

Clase D

Se utilizan para el trafico multicast, dónde la dirección de destino dirige los paquetes hacia grupos predefinidos de direcciones IP, suele ser usada para transmitir video, televisión por cable o streaming

Su rango va del 224-239 en su primer valor

El resto están compuestos por valores en el rango 0-254

Los cuatro primeros bits son 1110, luego se emplean 28 bits para identificar la red y 0 para identificar el host

El menor número que puede representarse es 11100000, que es el 224 decimal

El número más alto que puede representarse es 11101111, que es el 239 decimal

En principio existen 2^{28} = 268435456 redes de clase D y 2^0 = 1 hosts para esas redes

Ejemplo de dirección válida de clase D: 230.20.230.106

Clase E

Se utilizan para el tráfico broadcast

La Fuerza de tareas de ingeniería de Internet o IETF (Internet Engineering Task Force) ha reservado estas direcciones para su propia investigación

Su rango va del 240-255 en su primer valor

El resto están compuestos por valores en el rango 0-255

Los cinco primeros bits son 11110, luego se emplean 32 bits para identificar la red y -8 para identificar el host

El menor número que puede representarse es 11110000, que es el 240 decimal

El número más alto que puede representarse es 11111111, que es el 255 decimal

En principio existen 2^{32} = 4294967296 de redes de clase E y 2^{-8} = 0,00390625 hosts para esas redes

Ejemplo de dirección válida de clase E: 254.10.0.15

IPv6

IPv6

El IPv6 (Internet Protocol version 6) o Protocolo de Internet versión 6 es la sexta versión del IP (Internet Protocol), un protocolo de interconexión de redes basados en Internet, y que se desarrolló como una actualización al protocolo IPv4, diseñado para resolver el problema del agotamiento de direcciones

Anteriormente al IPv6 existió el IPv5, el cuál fue llamado IPng (IP Next Generation), pero que no fue el sucesor de IPv4, ya que se utilizó como un protocolo experimental orientado al flujo de streaming que intentaba soportar voz, video y audio

Definido en el RFC 2460, el IPv6 usa direcciones de 128 bits (16 bytes), limitadas a 2^{128}\approx 3.4 \cdot 10^{38} direcciones únicas

También puede representarse como 16^{32}, con 32 dígitos hexadecimales, cada uno de los cuales puede tomar 16 valores

Las direcciones IPv6, están definidas en los RFC 2373 y RFC 2374, pero fue redefinida en abril de 2003 en la RFC 3513

Según la publicación RFC 5952, las direcciones IPv6, de 128 bits de longitud

Donde el valor hexadecimal de cada uno de los cuatro dígitos sigue el siguiente formato:
XXXX . XXXX . XXXX . XXXX . XXXX . XXXX . XXXX . XXXX, que está compuesta por valores en el rango 0000-FFFF

Ejemplo de dirección válida: 2001:0db8:85a3:08d3:1319:8a2e:0370:7334

Se puede comprimir un grupo de cuatro dígitos si este es nulo (es decir, toma el valor «0000»)

Ejemplo de dirección válida: 2001:0db8:85a3:0000:1319:8a2e:0370:7344
Ejemplo de dirección comprimida válida: 2001:0db8:85a3::1319:8a2e:0370:7344

Las direcciones del ejemplo son equivalentes y por esa razón, por motivos de eficiencia, es recomendable usar la comprimida

Siguiendo esta regla, si más de dos grupos consecutivos son nulos, también pueden comprimirse como «::»

Si la dirección tiene más de una serie de grupos nulos consecutivos la compresión solamente se permite en uno de ellos, para evitar la ambigüedad

Ejemplo de compresión de una dirección válida con muchos nulos consecutivos: 2001:0DB8:0000:0000:0000:0000:1428:57ab
Ejemplos de direcciones comprimidas válidas:
2001:0DB8:0000:0000:0000::1428:57ab
2001:0DB8:0:0:0:0:1428:57ab
2001:0DB8:0::0:1428:57ab
2001:0DB8::1428:57ab

Los ceros iniciales en un grupo también se pueden omitir

Ejemplo de dirección válida: 2001:0DB8:02de::0e13
Ejemplo de dirección comprimida válida: 2001:DB8:2de::e13

Cuando lo que se desea es identificar un rango de direcciones por medio de los primeros bits, este número de bits va tras el carácter de barra «/»

Ejemplos de direcciones válidas en rango de bits:
2001:0DB8::1428:57AB/96 sería equivalente a 2001:0DB8::
2001:0DB8::874B:2B34/96 sería equivalente a 2001:0DB8:: y por supuesto también a 2001:0DB8::1428:57AB/96

Direcciones IPv4 compatibles con IPv6

Las direcciones IPv4 compatibles con direcciones IPv6 constituyen una clase especial de dirección IPv6

Loa primeros 96 bits son ceros, mientras que los últimos 32 bits representan una dirección IPv4

Los métodos de conversión a IPv6 no usan ya las direcciones IPv4 compatibles

Este tipo de direcciones se utiliza cuando tenemos una tabla de direccionamiento IPv4 fijo y tenemos la necesidad de almacenar direcciones esas direcciones como IPv6

Cabe destacar que la dirección IPv6 indefinida :: y la dirección IPv6 de loopback ::1 no son realmente direcciones IPv4 compatibles, a pesar de estar incluidas en el espacio de direcciones IPv6 ::/96

Se puede utilizar una una dirección IPv4 compatible (utiliza el formato ::1.2.3.4) o una dirección dirección IPv4 mapeada (utiliza el formato ::ffff:1.2.3.4)

Ejemplo de IPv4 a convertir:
192.168.89.9
Ejemplo de IPv4 compatible:
::c0a8:5909
Ejemplo de IPv4 mapeada:
::ffff:c0a8:5909

Direcciones reservadas

  • ::/128

    dirección con todo ceros se utiliza para indicar la ausencia de dirección, se usa exclusivamente para Internet, porque representa a cualquier red

  • ::1/128

    se reserva para las pruebas de loopback

    Los Routers o las máquinas locales pueden utilizar esta dirección para enviar paquetes nuevamente hacia ellos mismos

    Por lo tanto, no se puede asignar a ninguna red

  • ::1.2.3.4/96

    dirección IPv4 compatible se usa como un mecanismo de transición en las redes duales IPv4/IPv6

    Se usa muy poco

  • ::ffff:0:0/96

    dirección IPv4 mapeada se usa como mecanismo de transición en terminales duales

  • fe80::/10

    prefijo de enlace local (link local, en inglés) específica que la dirección solamente es válida en el enlace físico local

  • fec0::

    prefijo de emplazamiento local (en inglés, site-local prefix) específica que la dirección únicamente es válida dentro de una red local

    El RFC 3879 la declaró obsoleta, estableciendo que los sistemas futuros no deben implementar ningún soporte para este tipo de dirección especial

    En su lugar deben ser sustituido por direcciones Locales IPv6 Unicast

  • fc00::/7

    prefijo de dirección local única (en inglés, unique local address)

    Declarada en el RFC 4193

    Se usa en substitución de las direcciones site-local

  • ff00::/8

    prefijo de multicast

    Se usa para las direcciones multicast

Hay que resaltar que no existen las direcciones de difusión (en inglés, broadcast) en IPv6, aunque la funcionalidad que prestan puede emularse utilizando la dirección multicast FF01::1/128, denominada «todas los redes» (all nodes, en inglés)

Mecanismos de transición a IPv6

Ante el agotamiento de las direcciones IPv4, y los problemas que este está ocasionando ya, sobre todo en los países emergentes de Asia como India o China, el cambio a IPv6 ya ha comenzado

Existe una serie de mecanismos que permitirán la convivencia y la migración progresiva tanto de las redes como de los equipos de usuario

En general, los mecanismos de transición pueden clasificarse en tres grupos:

Doble pila

La doble pila hace referencia a una «solución de nivel IP con doble pila» (RFC 4213), que implementa las pilas de ambos protocolos, IPv4 e IPv6, en cada nodo de la red

Cada nodo con doble pila en la red tendrá dos direcciones de red, una IPv4 y otra IPv6

A favor: fácil de desplegar y extensamente soportado

En contra: la topología de red requiere dos tablas de encaminamiento y dos procesos de encaminamiento

Cada nodo en la red necesita tener actualizadas las dos pilas

Túneles

Los túneles permiten conectarse a redes IPv6 «saltando» sobre redes IPv4

Estos túneles trabajan encapsulando los paquetes IPv6 en paquetes IPv4 teniendo como siguiente capa IP el protocolo número 41, y de ahí el nombre proto-41

De esta manera, se pueden enviar paquetes IPv6 sobre una infraestructura IPv4

Hay muchas tecnologías de túneles disponibles

La principal diferencia está en el método que usan los nodos encapsuladores para determinar la dirección a la salida del túnel

Traducción

La traducción es necesaria cuando un nodo que únicamente soporta IPv4 intenta comunicar con un nodo que solamente soporta IPv6

Los mecanismos de traducción se pueden dividir en dos grupos basados en si la información de estado está guardada o no: