B4-T7 TCP, OSI.pdf
Document Details
Uploaded by frsoal
Full Transcript
1. Modelo de referencia de interconexión de sistemas Abiertos (OSI) 1.1. Introducción El modelo OSI (Open Systems Interconnection, interconexión de sistemas abiertos) fue un intento de la Organización Internacional de Normas (ISO) para la creación de un estándar que siguieran los d...
1. Modelo de referencia de interconexión de sistemas Abiertos (OSI) 1.1. Introducción El modelo OSI (Open Systems Interconnection, interconexión de sistemas abiertos) fue un intento de la Organización Internacional de Normas (ISO) para la creación de un estándar que siguieran los diseñadores de nuevas redes (marco conceptual que se utiliza para entender y diseñar redes de computadoras) Recogido en el estándar: ISO 7498 - ITU-T X.200. NO establece protocolos, sino funciones de cada capa Se trata de un modelo teórico de referencia PDU (Protocol Data Unit): cualquier elemento de información de cualquier capa. Es la unidad básica usada en el modelo de interconexión de sistemas abiertos Siempre es cabecera + cuerpo N-PDU: forma genérica de referirse a la PDU de un cierto nivel N SDU(service data Unit): nombre que se usa en el modelo OSI para describir una unidad de datos una vez derivada a la capa inferior en la pila de protocolos y que, una vez encapsulada por dicha capa, se convierte en la unidad de datos de protocolo de la misma. El modelo divide las redes en capas ( En la tabla hay que pensar de arriba a abajo (Muñeca Matrioska). La PDU de nivel enlace tiene la suma de todas las PDUs de por encima.) ○ la muñeca de enlace sería la más grande ○ ○ Las tres primeras capas se utilizan para encaminar ○ las capas superiores son exclusivas de los nodos origen y destino 1.2. Servicios ofrecidos por las capas Los servicios ofrecidos pueden ser de dos tipos: Orientado a conexión. Se caracteriza por el hecho de establecerse una conexión como paso previo a la transmisión de datos entre el emisor y el receptor No orientado a conexión. No precisa el establecimiento de una conexión previa a la transmisión de la información Estos servicios pueden ser confirmados / No confirmados Técnica Piggybacking: manda los acuses de recibo dentro de las tramas de información (lo usa los protocolos confirmados) Cada uno de los procesos elementales en que se desarrolla un servicio recibe el nombre de primitiva de servicio. Existen cuatro primitivas: Comunicación entre capas adyacentes ○ se realiza mediante las siguientes primitivas: request(solicitud): petición de servicio + parámetros indication: indica que un procedimiento ha sido invocado Response: del usuario al proveedor del servicio Confirm: del proveedor al usuario ○ Request → indication → Response → Confirm Nota: un servicio no confirmado se refiere a un tipo de servicio en el que no se requiere que el receptor envíe una confirmación de que ha recibido el mensaje. Primitivas utilizadas: Envío: El emisor usa la primitiva DATA.request para enviar datos sin esperar confirmación. Recepción: El receptor, al recibir los datos, utiliza la primitiva DATA.indication para notificar a su capa superior que se ha recibido la información. ○ SAP: punto de acceso al servicio: por donde se accede al servicio de la capa inferior. (Sería como abrir o cerrar la Matrioska) un PDU cuando se intercambia, se le llama SDU. Luego en su capa se llama PDU sistema abierto: aquel diseñado y desarrollado siguiendo normas comunes e independientes de los fabricantes. Características Interoperabilidad Portabilidad Escalabilidad: horizontal - vertical Protección inversión realizada en los sistemas ante discontinuidades de productos por parte de fabricantes 1.3. Estructura de capas ○ Capa Física: Se encarga de la transmisión/Codificación/Recepción de bits(señales eléctricas) por un medio de transmisión, ya sea un medio guiado (un cable) o un medio no guiado (inalámbrico) implementar los caminos físicos Detección de errores de las señales eléctricas Capa Enlace - Tramas: se encarga de la transmisión confiable de datos entre dispositivos conectados directamente (en la misma red) Descompone los paquetes que recibe de la capa de red en paquetes más pequeños(tramas) si es necesario para su transmisión. Delimitación de tramas, con objeto de conocer el principio y fin de cada bloque de datos y permitir de este modo la sincronización entre el emisor y el receptor Proporciona medios para activar, mantener y desactivar el enlace Detecta y corrige errores en la transmisión de datos Controla el flujo de datos para evitar la congestión (buffer) Entrega al receptor de todos y cada uno de los datos enviados por el emisor de forma fiable y fidedigna. Capa Red: responsable de posibilitar las transferencias de datos entre 2 redes diferentes (Encaminamiento de paquetes). Si los 2 dispositivos que se quieren comunicar están en la misma red, esta capa no es necesaria. Proporciona servicios de control de congestión y de calidad de servicio (QoS) Gestiona las prioridades Establece la dirección de destino de un paquete Capa Transporte: Es responsable de la transferencia entre diferentes dispositivos finales Proporciona servicios de extremo a extremo de ○ confiabilidad de la conexión, ○ segmentación ○ reensamblado de datos y control de flujo. Permitir la comunicación simultánea Si el servicio está orientado a la conexión: ○ Los datos se entregan libres de errores y en orden ○ Sin pérdidas ni duplicaciones ○ Proporcionar calidad de servicio Capa de Sesión (SPDU): la misión de organizar la conexión entre ambos sistemas finales. establece, administra/controla y finaliza las conexiones de sesión entre dispositivos finales ○ Sesión: el tiempo que transcurre entre la apertura y el cierre de la comunicación proporciona servicios de sincronización, manejo de errores y recuperación de fallas Además proporciona servicios mejorados a la capa de transporte Capa de Presentación(PPDU) :Es responsable de la representación y la manipulación de los datos antes de su transmisión (prepara los datos para que pueda ser usado por la capa de aplicación) cifrado, codificación, compresión y encriptación de los datos Conversión a formato Capa de Aplicación (APDU): Esta capa hace referencia a los distintos servicios finales que se ofrecen al usuario, desde el correo electrónico a la transferencia de ficheros ○ El nivel de aplicación no habla con la capa de aplicación del destino, sino que habla con la de presentación. 1.4. Principios generales del modelo OSI Las entidades en un nivel N ofrecen servicios que son utilizados por las entidades en un nivel N+1. Los subsistemas adyacentes se comunican a través de su interfaz. ○ Es decir, el subsistema N (por ejemplo, la capa de red de un ordenador) se comunica a través de sendas interfaces con los subsistemas N+1 (capa de transporte en este caso) y N-1 (capa de en enlace) Los subsistemas inferiores proporcionan servicios a los inmediatamente superiores. 2. Protocolos. Nociones básicas 2.1. Introducción Protocolo: conjunto de normas y convenciones que permiten la comunicación entre 2 capas iguales (mismo nivel jerárquico) de entidades diferentes. La información básica que manejan los protocolos son los PDUs Tipos de protocolos N2: HDLC (transmisión datos fiable), LAPB (variante HDLC para WAN) N3: CLNS (comunicación sin conexión entre nodos), CONS, X 25 ( paquetes conmutados que permite la comunicación) N4: TP0,TP1,TP2,TP3,TP4 (TP0 y TP2 son no fiables*) N7: ○ CMIS/CMIP (equivalente a SNMP) ○ FTAM (equivalente a FTP) ○ X.500 (equivalente a LDAP) ○ X.400 (equivalente a SMTP) - correo electrónico iii Cuidado con la relación capa-protocolo!!! En las 2 fotos se ve que RIP está en 2 capas distintas. Notas sobre comunicaciones: Funcionalmente RIP y OSPF valen para intercambiar información de encaminamiento. ○ Protocolos RIP, OSPF: intercambian información con el resto de routers de la red para saber cómo está la red para hacer el encaminamiento ○ OSPF va directamente sobre IP, Por eso no tiene sentido hablar de puertos ○ El protocolo OSPF cumple la misma tarea de encaminamiento que RIP ○ RIP usa UDP por el puerto 520 ○ RIP V1 utiliza UDP ○ OSPF no usa ni TCP ni UDP, sino que se encapsula directamente sobre el protocolo IP poniendo "89" en el campo protocolo. Otros protocolos a conocer: ICMP: Necesita de protocolo IP. Son funciones de control RTP: Protocolo de tiempo real SMB: Como NFS IPP: Internet Print Protocol → impresión remota H.323: Voz sobre IP. Es un protocolo de aplicación. SIP: para voz IP Los protocolos usan: MTU: La unidad máxima de transferencia. Expresa el tamaño en bytes de la unidad de datos más grande que puede enviarse usando un protocolo de comunicaciones ○ Ethernet 1500B PPPoE 1492B ATM (AAL5) 9780B FDDI 4470B PPP 576 MRU: unidad máxima de recepción. Es la unidad que indica el tamaño máximo (en octetos) del campo de datos de una trama (en el nivel de enlace) que un determinado host es capaz de recibir en una red 3. Arquitectura TCP/IP 3.1. Introducción La arquitectura TCP/IP (Transmission Control Protocol/Internet Protocol) es un conjunto de protocolos de comunicación utilizados para interconectar dispositivos en redes de computadoras y permitir la transmisión de datos a través de Internet. objetivos: servicios de comunicación universales interconectar distintas redes físicas para formar lo que al usuario le parece una única y gran red la red sea capaz de sobrevivir a la pérdida del hw de subred sin que las conversaciones existentes se interrumpan. Imagen arquitectura TCP/IP No cumple modelo OSI, presenta 4 capas: Capa de acceso al medio. Especifica las características del hardware que se utilizará para la red. ○ Se asimila a las capas 1 y 2 del modelo OSI Capa de Internet. También es conocida como capa de red o capa IP. ○ Ejecuta las funciones de encaminamiento y fragmentación. Acepta y transfiere paquetes para la red. ○ Se asimila a la capa 3 del modelo OSI Capa de transporte. Realiza el control de flujo, de errores, de congestión y de conexión extremo a extremo para garantizar que los paquetes lleguen a su destino en secuencia y sin errores. ○ Puede asimilarse a la capa 4 del modelo Capa de aplicación. Define las aplicaciones de red y los servicios de Internet estándar que puede utilizar un usuario, por ejemplo: HTTP. ○ Estos servicios utilizan la capa de transporte para enviar y recibir datos. ○ Es asimilable a las capas 5, 6 y 7 del modelo OSI. 3.2. Protocolos del nivel de enlace Objetivo: Se encarga de las funciones necesarias para acceder al medio físico de la red y transmitir los datos a través de él. Esta capa se encarga de la comunicación con los dispositivos de red de nivel físico, como los hubs, switches y routers, y es responsable de la transferencia de datos desde y hacia la red Primer paso: ¿Cómo garantizamos que la información llega a mi vecino inmediato: Nivel LLC: responsable de identificar y encapsular los protocolos de la capa de red, y controla la verificación de errores y la sincronización de tramas ○ Responsable de hablar con el vecino Nivel MAC: responsable de controlar cómo los dispositivos en una red obtienen acceso a un medio y permiso para transmitir datos. Ej. Protocolo HDLC: protocolo de comunicaciones de propósito general punto a punto, que opera a nivel de enlace de datos. Define: 3 tipos de estaciones (cualquier dispositivo que participe en la comunicación) ○ primaria: se caracteriza porque tiene la responsabilidad de controlar el funcionamiento del enlace. Las tramas generadas por la primaria se denominan órdenes. ○ secundaria: funciona bajo el control de la estación primaria. Las tramas generadas por la estación secundaria se denominan respuestas. ○ combinada: es una mezcla entre las características de las primarias y las secundarias. Una estación de este tipo puede generar tanto órdenes como respuestas. Tres modos de operación ○ Modo de respuesta normal (NRM, Normal Response Mode): se utiliza en la configuración no balanceada. La estación primaria puede iniciar la transferencia de datos a la secundaria, pero la secundaria solo puede transmitir datos usando respuestas a las órdenes emitidas por la primaria. ○ Modo balanceado asíncrono (ABM, Asynchronous Balanced Mode): se utiliza en la configuración balanceada. En este modo cualquier estación combinada podrá iniciar la transmisión sin necesidad de recibir permiso por parte de la otra estación combinada. ○ Modo de respuesta asíncrono (ARM, Asynchronous Response Mode): se utiliza en la configuración no balanceada. La estación secundaria puede iniciar la transmisión sin tener permiso explícito por parte de la primaria * Switching (algo así como routing del nivel 2)((se basan en intercambiar unas PDU’s llamadas Bridge Protocol Data Unit(BPDUs)). Intenta evitar bucles. STP: protocolo de red utilizado en redes de conmutadores Ethernet para evitar la formación de bucles en la topología de red Se elige un árbol de difusión/recubrimiento. Los protocolos de abajo, generan un árbol de recubrimiento mínimo ○ STP: Spanning Tree Protocol (802.1D) → genera un árbol ○ MSTP: Multiple Spanning Tree Protocol (802.1s) ○ RSTP: Rapid Spanning Tree Protocol (802.1w) ○ SPB: Shortest Path Bridging (802.1aq) Resolución de direcciones: Ej: arp (IP → MAC). Broadcast FF FF FF FF FF FF. Se manda esta información a todos los nodos para que respondan rarp (MAC→IP) Gestión de tráfico: Existe la posibilidad de definir un nivel de organización lógico en la red que no tiene porque corresponderse con topología física de la misma y así poder aislar unas zonas de otras (seguridad, rendimiento….) Ej: VLAN (802.1Q) 3.3. Protocolo IP v4 (IP = Internet protocol) Cada host conectado a una red TCP/IP tiene dos direcciones: Una dirección física (Media Access Control Address, MAC address) Una dirección IP para identificar globalmente a un ordenador dentro de un conjunto de redes TCP/IP. Las direcciones pueden ser: ○ Públicas o privadas ○ Estáticas o dinámicas Nota: La capa de red se encarga de fragmentar cada mensaje en paquetes de datos llamados datagramas IP y de enviarlos de forma independiente a través de la red de redes Un datagrama que se fragmenta se divide en paquetes IP ( tiene que ver con el concepto de MTU de nivel 2) Mensaje→ datagramas IP → paquetes IP Características RFC 791 Las direcciones IP son de 32 bits No orientado a conexión servicio no fiable. NO implementa control de errores / ni retransmisión No implementa control de la congestión No implementa control de flujo Implementa fragmentación (MTU) si supera el tamaño máximo negociado Lleva a cabo funciones de direccionamiento: las cabeceras de los paquetes IP contienen las direcciones IP Datagrama IPv4: El datagrama IPv4 es la unidad de información que se transmite en la red. Incluye tanto la cabecera (que contiene información de control necesaria para el enrutamiento y la entrega del paquete) como los datos útiles (carga útil o "payload") que se quieren enviar. La cabecera es parte integral del datagrama y su función principal es asegurar que el datagrama llegue correctamente a su destino a través de la red. Contiene información como direcciones IP de origen y destino, el tiempo de vida (TTL), y otros campos importantes para el enrutamiento y el control. Formato de la cabecera ( Tamaño 20B). Puede llegar hasta 60 B si tiene datos en el options (los 40 de los opcionales) ○ Explicación de los campos ○ Versión: 4b (0100) ○ IHL (Internet header Length): 4b. Para conocer donde empiezan los datos. Longitud de la cabecera. ○ DSField: 6b. Tipo de servicio ○ ECN: 2b. identificador para detectar congestión en la red ○ Long total del datagrama en octetos, incluyendo la cabecera Máximo: 64KB ○ Identificación: 16b. Para que el host destino sepa a qué datagrama pertenece un fragmento recién llegado. Si se está fragmentando (en paquetes), el identificador es el mismo ○ 1 bit sin uso actualmente ○ Bit DF. Don’t fragment. Algoritmo descubrimiento MTU ○ bit MF. More fragments. ○ 0=último o único fragmento offset fragment,desplazamiento del fragmento: 13b. Indica en qué posición del datagrama original se encuentra el fragmento actual. Sirve para que el destino reordene TTL: 8b. Time to live o número de saltos. Los routers lo van decrementando y si llega a cero lo eliminan y notificación su eliminación al origen con ICMP “tiempo excedido” Protocol: 8b. Indica que estamos transportando del nivel superior 1: ICMP 2: IGMP 6: TCP 17: UDP 50: ESP (Seguridad IP) 51: AH (Seguridad IP) 89: OSPF Suma de comprobación o checksum de la cabecera: 16b Dirección origen: 32b Dirección destino: 32b Campos opcionales: 0 a 40 B Direccionamiento IPv4: 32b Modelo Classful Nota: RIP V1 está exclusivamente para Classful La clase D es de multicast. Para la suscripción, para que cuando se mande algo a una dirección, les llega a todos los que estén suscritos. Ejemplo Netflix Ejemplo de protocolo de esto:: IGMP La clase E es experimental Número de redes y hosts por clase Restar 2 en la parte de host, ya que la combinación de todo 0’s y todo 1’s están reservados para las direcciones de red y broadcast Ejercicio de clase: Ejemplo de una red clase A Direcciones IP especiales 0.0.0.0: mi máquina Loopback: 127.x.x.x. Mi máquina. No sale por la tarjeta de red Reservada pruebas de rendimiento: 192.18.0.x y 192.19.255.x Direcciones IP Privadas - RFC 1918 10.0.0.0/8 - 10.255.2555.255 172.16.0.0/12 - 172.31.255.255 192.168.0.0/16 - 192.168.255.255 Máscara de red ○ Permite conocer si una dirección IP pertenece a una subred ○ plantilla de 32 bits, indica que parte de la dirección IP es de red (se representa con 1’s) y que parte son de host (se representa con 0’s) ○ Clase A /8 - Clase B / 16 - Clase C/24 Nota: Listado donde vienen todas las máscaras permitidas: Fijaros en la relación: 254-252-248-240-224-192-128-0: Siempre se repite Direcciones APIPA - Win98-. IPv4 Cuando el equipo está preparado para obtener una ip dinámicamente y al iniciar no encuentra un servidor DHCP. Automáticamente asigna una IP y una máscara. No configurará ningún otro parámetro que pueda configurar el servidor DHCP solo funcionan en redes locales y no se pueden enrutar a través de Internet Según RFC, el rango oficial es 169.254.0.0/16. El rango real o práctica es 169.254.1.0 - 169.254.254.255, ya que se eliminaron los 256 bits primeros y últimos Classless Bloque CIDR : método de asignación de direcciones IP y enrutamiento más eficiente y flexible que Classful ○ Permite el uso de prefijos de longitud variable para definir las redes, lo que significa que se pueden asignar direcciones de red más específicas según las necesidades de la organización. 3.4. Subnetting subnetting o división de redes en subredes consiste en tomar los bits de la parte de host para identificar subredes ○ parte de red/subred a 1’s y parte de hosts a 0’s FLSM: máscara de longitud fija. Todas las subredes son del mismo tamaño. ○ Todas las subredes tienen la misma máscara. También hay desperdicio Máscara wildcard: máscara que sirve para poder crear ACLs en un router sobre una serie de hosts concretos ○ access-list 1 permite 192.168.25.0 0.0.0.255 La mascara índica que los 3 primeros octetos deben coincidir,es decir, cualquier combinación de 192.168.25.1 a 192.168.25.255 es permitida VLSM: máscara de subred de longitud variable, ya que no todas las subredes tienen por qué tener el mismo tamaño 3.5. Supernetting Técnica de diseño de redes en la que múltiples direcciones IP más pequeñas (subredes) se combinan en una sola dirección IP más grande. Se utiliza para simplificar y optimizar el enrutamiento al reducir el número de entradas en las tablas de enrutamiento de los routers. ○ Los router deben soportar CDIR (Enrutamiento Interdominio Sin Clases) máscaras de red más cortas 3.6. Técnica de traducción de direcciones NAT NAT es una técnica utilizada en redes de computadoras para traducir direcciones de red y de transporte entre dos redes IP diferentes, como internet y una red local Source NAT: Se cambia la dirección IP de origen. Un equipo de la red (normalmente la puerta de enlace) se encarga de cambiar la dirección IP privada origen por la dirección IP pública, para que el equipo de Internet pueda contestar. También es conocido como IP masquerading. Casos: SNAT estático: Cuando la dirección IP pública que sustituye a la IP origen es estática (SNAT también significa Static NAT). SNAT dinámico o MASQUERADE: Cuando la dirección IP pública que sustituye a la IP origen es dinámica, caso bastante habitual en conexiones a Internet domésticas. Destination NAT o port forwarding: para redirigir el tráfico de red entrante desde una combinación de dirección IP y puerto hacia otra ○ ○ Cuando se tiene algún servidor en una máquina detrás del dispositivo de NAT. ○ Será un equipo externo el que inicie la conexión, ya que solicitará un determinado servicio y el dispositivo de NAT debe modificar la dirección IP destino. PAT (Port Address translation): Modifica específicamente el puerto (origen o destino) en lugar de la dirección IP. Por ejemplo si queremos reenviar todas las peticiones web que lleguen al puerto 80/tcp al mismo equipo pero al puerto 8080/tcp. 3.7. Protocolo IPv6 El direccionamiento definido en la RFC 2460 y RFC 3513 ○ Lo complementa el RFC 2373 en la que se especifica la arquitectura del nuevo direccionamiento RFC 8200: especificación de cabecera Las direcciones son de 128 bits (16B) cabeceras de 40 B ventajas limitación de direccionamiento que tenía IPv4. Pasa de 32 a bits a 128 Reduce la complejidad de los usuarios y facilita el cambio de red ○ autoconfiguración: stateful (DHCP-v6) - stateless (sin intervención) Simplificación del formato de cabecera Capacidad de etiquetado de flujo Utilidades de autenticación y privacidad Mejora el enrutamiento (next-hop) y procesamiento ○ reducción del tiempo de proceso de cabecera ○ no fragmentación intermedia ○ el backbone permite jerarquía de direcciones basadas en agregación Mejora la seguridad: autenticación, integridad y confidencialidad QoS y CoS jumbogramas: paquetes con tamaño mayor a 64KB Cada interfaz necesita, al menos, una dirección unicast. ○ Una interfaz puede tener asignadas múltiples direcciones de cualquier tipo (unicast, multicast o anycast). mejora mecanismos multicast ○ Introduce direcciones anycast ○ Desaparece dirección broadcast Datagrama IPv6. Formato Si hay cabeceras de extensión este es el orden que debe de llevar ○ Si existe cabecera de extensión, se activa next header ○ ○ esas cabeceras se definen en el payload ○ Formato de las cabecera fija RFC 8200 Versión (4 bits): para v6 siempre 6 (“0110”) Clase de tráfico/prioridad (1 byte) Etiqueta de flujo (20 bits): para la identificación y el manejo de flujos de paquetes en la red. Es una característica opcional de IPv6 y está diseñada para mejorar el rendimiento y la calidad del servicio en redes IPv6. ○ Los routers que saben interpretarlo no necesitan interpretar la cabecera completa ○ Puede ser utilizada por los routers para aplicar políticas de calidad de servicio (QoS) ○ Con la etiqueta de flujo y la clase de tráfico se puede priorizar servicios ○ muy útil para tº real Longitud de carga útil (2 bytes): longitud del paquete después de la cabecera de 40 bytes (tamaño cabeceras extensión + datos) ○ A diferencia de IPv4, no se incluye la cabecera fija ○ Tamaño máx. teórico tb 64KB (Jumbograma) Cabecera siguiente (1 byte): tipo de cabecera que sigue Límite de saltos (1 byte): análogo al TTL ○ Contador que los routers van decrementando, cuando llega a cero: Se destruye el paquete Se envía “time exceeded” ICMPv6 al origen Direccs. origen y destino 16 bytes ○ El destino puede no ser el definitivo si está presente la cab. encaminamiento Direccionamiento IPv6: RFC 3513 128 b (16B). Ahora nos movemos en hexadecimal ○ tienen ámbito de validez y tiempo de vida Ya NO existen direcciones de broadcast Tipos de direcciones: Unicast Link Local FE80::/10 Unique Local FC00::/7 Global 2000::/3 Multicast FF00::/8 Anycast Unicast: identifica unívocamente a una interfaz IPv6. Link Local (no enrutable): autoconf stateless y descubrimiento de vecinos. Solo habla con los vecinos ○ permite que un dispositivo se comunique con otros dispositivos con IPv6 habilitado en el mismo enlace y solo en ese enlace (subred) ○ ○ Formato FE80::/10. Unique Local(enrutable en tu red): Ámbitos privados. Enrutable en tu red. Puede utilizarse en otras subredes ○ ○ Posibles dirección en Unique Local, ya que se puede dividir en 2 bloques ::/8 ○ Formato: FC00::/7 1111 110X Sobre este tendría 2 formatos 1111 1100 0000 0000 :: /8 → FC00::/8 (sin uso) 1111 1101 0000 0000 ::/8 → FD00::/8 Nota: Por ahora el octavo bit solo se ha definido a que tenga el valor 1 Globales: son direcciones públicas (2000::/3) ○ 001x: Podemos tener 2 opciones ○ 0010 0000 0000 0000 ○ 0011 0000 0000 0000 ○ 2000::/3. También pueden empezar por 3000 ○ Ejemplos de direcciones Globales 2AC9:0000:0000:0000 3AC7:0000:0000:0000 Multicast: identifica un grupo de interfaces IPv6. FF00::/8 FF02::1 → todos los nodos(scope 02 = link local) FF02::2 → todos los routers(scope 02 = link local) ○ Campo Scope : se utiliza para limitar el alcance de una dirección de multidifusión. 1: nodo local. Identificar todos los nodos de multicast en la misma subred local 2: link local. identificar todos los routers de multicast en la misma subred local 5: site local Con los 112 bits de identificador de grupo, puedes hacer grupos multicast Anycast: un interface dentro de un grupo. Mismo formato que multicast NOTA: La dirección de multicast “Solicited-Node” permite que un dispositivo habilitado para IPv6 encuentre otros dispositivos habilitados para IPv6 en el enlace. Se utiliza en el protocolo de descubrimiento de vecinos y en la fase de detección de direcciones duplicadas del proceso de configuración automática de direcciones. Partes de una dirección IPv6 prefijo de enrutamiento global (n bits) Identificador de subred (m bits) Identificador de interfaz (128 + n + m bits) ○ prefijo: indica grupo de direcciones que comparten un mismo valor para los primeros bits Notación de direcciones IPv6 Normas de compresión de IP v6 ○ los grupos de 4 0’s se transforman en 1 solo ○ Los grupos de 0’s a la izquierda se pueden eliminar ○ Los grupos de 0’s se pueden comprimir con ::, pero solamente se puede seleccionar un grupo de ellos ○ Si el último bloque es todo 0s se puede eliminar Direcciones especiales Loopback: 0:0:0:0:0:0:0:1 => ::1 => ::1/128 sin especificar: 0:0:0:0:0:0:0:0 => :: => ::/128 Direcciones IPv6 compatibles con IPv4 → ::205.2.30.4 Los primeros 96 bits son ceros y los 32 bits siguientes representan una dirección IPv4 Direcciones IPv6 mapeadas desde IPv4 → 0:0:0:0:0:FFFF:205.2.30.4 Son direcciones IPv6 cuyos 80 primeros bits son ceros, los 16 siguientes son unos (ffff) y los 32 bits restantes representan una dirección IPv4 3.8. Configuración de interfaces SLAAC: es un método en el cual un dispositivo puede obtener una dirección IPv6 de unidifusión global sin los servicios de un servidor de DHCPv6 (mecanismo para detectar IP’s duplicadas) Protocolo NDP: Neighbor Discovery (ND) es un protocolo de IPv6, para descubrir otros dispositivos en la misma red local y para determinar las direcciones de capa de enlace de los dispositivos vecinos ( similar a arp ). Incorpora funcionalidades de ICMP.Mensajes: ○ RA(Router Advertisement): Enviado por los routers a intervalos regulares para anunciar su presencia en la red y proporcionar información de configuración de red, como prefijos de red y parámetros de autoconfiguración. ○ RS (Router Solicitation):Enviado por los dispositivos para solicitar inmediatamente un Router Advertisement (Identificarse) cuando se conectan a una red o cuando necesitan información de configuración de red. Este mensaje es enviado a todos los routers IPv6 a la dirección multicast FF02::2 de alcance local (local-scope). ○ NS(Neighbor Solicitation): Utilizado para solicitar la dirección de capa de enlace (por ejemplo, la dirección MAC) de un vecino específico, como parte del proceso de resolución de direcciones. Similar a arp. (Detección de vecinos inalcanzables y la caché de los vecinos) ○ NA(Neighbor Advertisement): Responde a una solicitud de NS, proporcionando la dirección de capa de enlace del dispositivo solicitado Un host puede enviar un mensaje Neighbor Advertisement no solicitado cuando ve necesario actualizar la información de los vecinos en la red local. Por ejemplo cuando se reemplaza la tarjeta de red de un equipo (cambiará su dirección MAC), ○ RM(Redirect Message): Enviado por un router para informar a un dispositivo de una ruta más eficiente hacia un destino específico. EUI 64 (Extended Unique Identifier-64) Método utilizado en redes IPv6 para generar automáticamente una dirección de interfaz (ID) global unicast a partir de la dirección MAC de una interfaz de red. Esta técnica se utiliza comúnmente en la autoconfiguración de direcciones IPv6. Definido por el RFC 2373 el EUI (identificador único extendido) es de 64 bits que deriva de la dirección MAC de 48 bits Una IP v6 tiene 128 bits, con esto ponemos los 64 bits menos significativos Procedimiento ○ Separar la MAC de 48 bits en 2 bloques de 24 bits ○ Los primeros 24 bits se corresponden al identificador OUI → identificador único del fabricante ○ Los 24 restantes al identificador de la NIC(interface) ○ Insertar los 16 bits restantes =0xfffe(reservados para eui-64) ○ EUI 64 modificado Se utiliza en la configuración automática de direcciones sin estado (SLAAC) El 7º bit de la izquierda es el bit universal/local y debe ser invertido (en binario) 3.9. Transición IPv4 → IPv6 Se utiliza el método Stateless IP/ICMP Translation(SIIT), el cual es el encargado de traducir paquetes de red limitado solo a la cabecera IP IP v4 = 192.168.20.112 Transformar a hexadecimal cada grupo de 4 bits Esta dirección se llama mapped-address : forma de convertir una IPv4 en una IPv6 “interna” 3.10. Método 6to4 Técnica de transición utilizada para permitir que el tráfico IPv6 pase a través de redes IPv4. Esto se logra encapsulando paquetes IPv6 en datagramas IPv4 Técnica basada en tunneling El formato dirección IPv6 en este contexto sería: ○ 2002 (16 bits) + IPv4 del interfaz del router frontera en hexa (32 bits) + SubnetID (16 bits) + InterfaceID (64 bits) ACLARACIÓN: Los routers que se sitúan en la frontera entre IPv4 e IPv6, marcan el prefijo asignado a la red IPv6. Mediante la concatenación del prefijo 2002::/16 y la dirección IPv4 del router frontera) 4. Protocolos 4.1. Overview Routing protocols sistema autónomo: es una colección de prefijos de enrutamiento de Protocolo de Internet (IP) conectados bajo el control de uno o más operadores de red en nombre de una sola entidad administrativa o dominio, que presenta una política de enrutamiento común y claramente definida para Internet ○ Aclaración: Un grupo de redes IP que poseen una política de rutas propia e independiente” ○ Vector distancia: cada nodo de la red mantiene una tabla de enrutamiento que indica la distancia y el camino óptimo para llegar a cada uno de los demás nodos en la red envía la tabla de enrutamiento completa a cada vecino (un vecino esta directamente conectado a un router que ejecuta el mismo protocolo de enrutamiento) significa que las rutas se anuncian proporcionando dos características: Distancia: identifica la distancia hasta la red de destino. Se basa en una métrica como el conteo de saltos, el costo, el ancho de banda y el retraso, entre otros intercambia información con los vecinos, conectados directamente estado de enlace: cada nodo mantiene información detallada sobre cada uno de sus vecinos y las conexiones que tiene con ellos. no envían la tabla de enrutamiento completa sino que avisan de cambios en la red Con la información que un nodo de la red recibe de todos los demás, puede construir un "mapa" de la red y sobre él calcular los caminos óptimos habla de todos los enlaces, como están, métricas…. Los estados de exterior: protocolo de enrutamiento de red que se utiliza para enrutar paquetes de datos a través de redes de área amplia (WAN) o redes de área local (LAN) grandes y complejas ○ conectan los sistemas autónomos Notas: (* ) Los algoritmos de exterior (EGP) se dan entre sistemas autónomos (AS) (*) BGP utiliza TCP Puerto 179 (*) OSPF se puede descomponer en áreas (una de ellas llamada Backbone) y usa las siguientes ○ direcciones multicast 224.0.0.5 y 224.0.0.6 (*) RIPv2 envía por multicast la tabla de routing completa a todos los routers adyacentes mediante la dirección 224.0.0.9, ○ a diferencia de RIPv1 que usa broadcast Límite máximo de saltos en RIP = 15 4.2. Protocolo de control ICMP El protocolo ICMP (Internet Control Message Protocol, protocolo de mensajes de control de Internet) se encarga de informar al origen si se ha producido algún error durante la entrega de su mensaje, además de que también transporta distintos mensajes de control. ○ datagrama no puede alcanzar su destino ○ dispositivo encaminamiento no tiene la capacidad para almacenar temporalmente ○ dispositivo encaminamiento indica a un ordenador que envíe el tráfico por una ruta más corta ○ El protocolo ICMP está definido en la RFC 792 Debido a que el protocolo IP no es fiable, los datagramas pueden perderse o llegar defectuosos a su destino. Se encapsulan directamente sobre IP, por lo que es enrutable Formato del mensaje: ○ ○ Tipo de mensaje:Indica el propósito del mensaje ICMP y qué tipo de acción se debe realizar en respuesta al mensaje. Ejemplo: "Echo Request" (solicitud de eco), "Echo Reply" (respuesta de eco), "Destination Unreachable" (destino inaccesible)... ○ Código: Información adicional sobre la naturaleza del problema o la acción requerida. ○ Checksum: Para la detección de errores en el mensaje ICMP. ○ Datos: Contiene datos adicionales específicos del tipo de mensaje ICMP. Ejemplo de listado de mensajes: (*) Los tipos 8/0 se usan en el comando ping el 11 en traceroute (*) El tipo 3 con code=4 “Fragmentation Needed” se usa para el descubrimiento de MTU Tipo 133: Solicitud de enrutador TIpo 134: Anuncio del enrutador Tipo 135 :Neighbor Solicitation Tipo 136: Neighbor Advertisement Tipo 137: Redirect Message 4.3. Otros protocolos ARP (v4): protocolo de resolución de direcciones. IP → MAC va sobre ethernet RARP (v4): protocolo de resolución de direcciones inversa. MAC→ IP ND (v6) - Neighbor Discovery. Dentro de ICMP v6. Equivalente ARP DHCP - Dynamic Host Configuration Protocol. Permite asignar direcciones IP dinámicas a los equipos que soliciten de una red. IGMP (v4). Protocolo de gestión de grupos en internet. En algunas aplicaciones es útil transmitir a una gran cantidad de receptores de forma simultánea, como puede ser a una réplica de una base de datos Se encapsulan en IP con número de protocolo = 2. EIGRP: protocolo propietario de la empresa CISCO para sustituir al protocolo IGRP No se basa en el intercambio periódico de tablas entre nodos vecinos, sino que los cambios a lo largo del tiempo se comunican a partir de establecimiento de relaciones de vecindad MLD - Multicast Listener Discovery. Protocolo de señalización cuyo objetivo es la identificación de receptores interesados en la recepción de grupos multicast IPv4: ICMPv4, IGMP, ARP, RARP, DHCPv4, RIPv1/v2 IPv6: ICMPv6(ICMPv4,MLD,ND), DHCPv6,RIPng 5. TCP y UDP 5.1. Protocolo TCP - RFC 793 Características orientado a la conexión Ofrece un servicio extremo a extremos fiable Es full-duplex Ofrece un servicio punto a punto, esto es, no se puede utilizar para comunicaciones multicast Servicios ofrecidos Control de errores, flujo y congestión Segmentación y reensamblaje de paquetes Establecimiento y cierre de la conexión Cabecera (20-60 bytes): Algunos flags importantes ○ URG (urgent): los datos contenidos en un paquete deben ser procesados inmediatamente ○ FIN: no habrá más transmisiones. Libera las conexiones ○ RST: Resetea una conexión ○ PSH: Envía inmediatamente todos los datos almacenados en el buffer ○ ACK: Reconoce la recepción del paquete ○ SYN: Inicia una conexión entre hosts Mecanismo de sincronización (esto viene relacionado con el sequence number) Existe un proceso de establecimiento de conexión (handshake) previo en el que se determinan fundamentalmente los números de secuencia que usará cada extremo en esa sesión. (en el primer segmento SYN se establecen datos como Window Scale, Windows Size, MSS, ECN Capable, etc) Windows size:cantidad máxima de datos (en bytes) que un dispositivo (ya sea emisor o receptor) puede enviar sin recibir una confirmación (ACK) de que los datos anteriores han sido recibidos (tamaño del buffer en el destino). Relacionado con la ventana deslizante: permite que el emisor envíe múltiples segmentos de datos antes de necesitar una confirmación (acknowledgment) del receptor ○ Si la ventana llega a 0, hay que descartar. Proporciona transporte fiable extremo a extremo (ACK con un número de secuencia) (existe un opción llamada SACK para poder conformar un bloque de secuencias “sin orden” cuando hay pérdidas de paquetes) Tiene mucho overhead Mecanismo de control de congestión (ECN) basado en los flags: ○ ECE (notificación al emisor que reduzca el tráfico) y ○ CWR (Indica que se recibió un segmento con el flag ECE y que se ha respondido en el mecanismo de control de congestión) Concepto de MSS (Tamaño máximo de segmento): el mayor tamaño de segmento TCP (Protocolo de control de transporte) que puede recibir un dispositivo conectado a la red ○ No incluye el encabezado TCP ni la opción TCP, solo la carga útil de TCP ○ Se define "segmento" como la longitud de la carga útil (bytes), sin los encabezados adjuntos Se negocia en el syn Cada nodo tiene su propio MSS MSS = MTU – IPHeader – TCPHeader 5.2. UDP Diseñado en RFC-768. Proporciona una comunicación muy sencilla entre las aplicaciones de 2 ordenadores. No garantiza el transporte de la información, esto lo garantiza el nivel de aplicación No es fiable. Los mensajes pueden perderse o llegar dañados Tiene poco overhead, caso contrario a TCP Se encapsula sobre IP. El campo protocolo del datagrama IP el valor 17 Vale para tiempo real por ejemplo, ya que la tecnología de red ha mejorado mucho y es muy fiable Se puede utilizar para multicast. No es P2P Algunos protocolos que utilizan UDP como capa de transporte ○ SNMP (puerto 161 y 162) ○ RIP (puerto 520) ○ DNS (puerto 53) ○ NFS (puerto 2049) ○ DHCP (puerto 67 y 68) y DHCPV6 (puerto 546 y 547) ○ NTP (puerto 123) ○ RTP ○ QUIC (Quick UDP Internet Connections-Google) 5.3. Tabla de puertos Puerto: un punto de comunicación que permite la transferencia de datos entre un dispositivo de origen y otro dispositivo de destino a través de una red número de 16 bits, por lo que pueden existir hasta 65536 de ellos El número de PUERTO identifica a una aplicación en uno de los extremos (Socket) Well Known Ports, System Ports, de 0-1023. Los asigna IANA Registered Ports, User Ports, de 1024-49151 Dynamic Ports, Private Ports, de 49152-65535 6. DNS - Sistema de nombre de dominio 6.1. Cómo trabaja DNS Sistema de nomenclatura jerárquica utilizado para traducir nombres de dominio, como "www.ejemplo.com", en direcciones IP numéricas, como "192.0.2.1" En general en el fichero /etc/resolv.conf en sistemas Unix y Linux es el fichero de configuración que determina cómo un sistema resuelve nombres de dominio a direcciones IP, es decir, cómo realiza las consultas DNS (Domain Name System) (resolver(unix) biblioteca de funciones que las aplicaciones utilizan para realizar consultas DNS. Encargado de convertir nombres de dominio en direcciones IP) ○ Esta memoria la tiene almacenada en la caché. ○ Nota: Solo si el registro a resolver no está en su caché, da los pasos de la imagen Google resolver: 8.8.8.8 Utiliza el puerto 53 TCP y UDP Ejemplo: se quiere acceder a www.example.com desde un navegador web.. Paso 1: Verificación de /etc/hosts Primero, el sistema verifica el archivo /etc/hosts para ver si www.example.com está definido ahí Paso 2: Consulta a Servidores DNS El resolver consulta los servidores DNS especificados en el archivo /etc/resolv.conf: Paso 3: Proceso de resolución de DNS: Consulta al Servidor DNS: ○ El resolver envía una consulta al primer servidor DNS en la lista, en este caso, 8.8.8.8 (un servidor DNS público de Google). ○ Resolver: ¿Cuál es la dirección IP de www.example.com? Servidor DNS (8.8.8.8): Dame un momento, voy a buscar. Recursión en el DNS: ○ Si el servidor DNS no tiene la respuesta en su caché, iniciará una serie de consultas recursivas. ○ Primero, pregunta a un servidor raíz DNS. ○ Luego, pregunta a un servidor TLD (Top-Level Domain) para.com. ○ Finalmente, pregunta al servidor autoritativo para example.com. Servidor raíz: La dirección para `.com` la maneja el servidor TLD. Servidor TLD: El servidor autoritativo para `example.com` es ns1.example.com. Servidor autoritativo (ns1.example.com): La dirección IP para `www.example.com` es 93.184.216.34. Respuesta del Servidor DNS: El servidor DNS 8.8.8.8 envía la respuesta de vuelta al resolver: Resolver: La dirección IP de `www.example.com` es 93.184.216.34. ○ 6.2. Principales registros DNS Resumen: A - MX - CNAME - TXT - AAAA - SRV - CAA - SOA Registro A: específica las direcciones IP V4 correspondientes a tus dominios y subdominios (para la búsqueda inversa se configura el registro PTR) ○ www.example.com. 12879 IN A 93.184.216.34 ○ Resolución inversa, dado IP obtener nombre. la ip34.216.184.93.in-addr.arpa. IN PTR google.com. Siempre va a buscar en el dns in-addr.arpa. Es un sufijo estándar Registros MX: específica a un MTA emisor en que MTA(s) deberían ser entregados los emails. ○ example.com. IN MX 10 mail1.example.com. ○ example.com. IN MX 20 mail2.example.com. ○ 10, 20… es la prioridad Registro CNAME : funciona como un alias para los nombres de dominio que comparten una misma dirección IP. Se utiliza para "dirigir" un subdominio a otro dominio www.example.net. CNAME www.example.com Registro TXT: se utiliza para almacenar cualquier tipo de información de texto arbitraria en un registro de recursos DNS. ○ Es comúnmente utilizado para incluir información adicional y metadata relacionada con un dominio o un subdominio.. Registro SPF – Sender Policy Framework : validación de correo usado para prevenir ataques de spoofing. gmx.es. IN TXT 14400 v=spf1 ip4:213.165.64.0/23 ip4:74.208.5.64/26 … ip4:82.165.159.0/24 -all AAAA: mapea un nombre de dominio a la dirección IP (IPv6) del ordenador que aloja el dominio. www.example.com. IN AAAA 2606:2800:220:1:248:1893:25c8:1946 SRV: Indicar que servicios queremos ofrecer bajo nuestro dominio ○ _service._proto.name. TTL class SRV priority weight port target (formato general) CAA: Restringir qué entidades pueden expedir certificados para un determinado dominio. ○ acme.com. CAA 0 issue "comodo.com" ○ acme.com. CAA 0 issue "letsencrypt.org" SOA: incluye información importante sobre un dominio, incluyendo ○ quien es el responsable del mismo ○ el servidor de nombre primario, ○ el correo electrónico del administrador de ámbito, ○ el número de serial del ámbito, ○ y varios temporizadores que relacionan a refreshing la zona. 7. DHCP 7.1. Introducción Vale para asignar una IP a una máquina 67/UDP (servidor) 68/UDP (cliente) Métodos de asignación de direcciones IP ○ Manual o estática: Asigna una dirección IP a una máquina determinada (ej: base en la MAC) ○ Automática: asigna una dirección IP de un Pool a una máquina cliente la primera vez que hace la solicitud al servidor DHCP y hasta que el cliente la libera (sino es permanente) ○ Dinámica: el único método que permite la reutilización dinámica de las direcciones IP de un Pool (Tiene un tiempo de “préstamo”) 7.2. Cómo trabaja DHCP 1. 2. Pasos que se ejecutan: DHCP Discover ---> DHCP Offer ---> DHCP Request → DHCP Ack 3. Descubrimiento (DHCPDISCOVER): Cliente pregunta que DHCPs hay, por eso manda a la MAC FF:FF:FF:FF:FF:FF (ojo que puede haber más de un servidor DHCP) Origen MAC: MAC Cliente IP: 0.0.0.0 Puerto: 68 Destino MAC: FF:FF:FF:FF:FFFF:FFFF IP: 255.255.255.255 Puerto: 67 DHCP YIADDR (Your IP Adrees): 0.0.0.0 DHCP Message Type Lista de parámetros 4. Oferta (DHCPOFFER): Servidores DHCP reservan una IP y la ofrecen, indicando además el tiempo de lease (arrendamiento).(Como puede haber mas de un servidor DHCP le pueden llegar varios ofrecimientos) Origen MAC: MAC Servidor IP: IP Servidor Puerto: 67 Destino MAC: Cliente IP: Propuesta para el cliente Puerto: 68 DHCP YIADDR (Your IP Adrees): Propuesta para el cliente DHCP Message Type: Offer Tiempo de lease, mask… 5. Solicitud (DHCPREQUEST): Cliente pide a un servidor DHCP esa IP, es broadcast para avisarle a los potenciales otros servidores que no los elegible. ( El cliente dice con que IP se queda y le informa a todos) Origen MAC: MAC Cliente IP: 0.0.0.0 Puerto: 68 Destino MAC: FF:FF:FF:FF:FFFF:FFFF IP: 255.255.255.255 Puerto: 67 DHCP YIADDR (Your IP Adrees): 0.0.0.0 DHCP Message Type Lista de parámetros IP requerida por el cliente 6. ACK (DHCPACK): Servidor confirma. Es en este punto cuando el servidor ya empieza a utilizar la IP Origen MAC: MAC Servidor IP: IP Servidor Puerto: 67 Destino MAC: Cliente IP Cliente Puerto: 68 DHCP YIADDR (Your IP Adrees): Propuesta para el cliente DHCP Message Type: Offer Tiempo de lease, mask… 8. FTP. 8.1. Modos de transferencia (pasivo, activo) modo pasivo: cliente inicia la comunicación con el comando PASV y cliente inicia la transferencia ○ ○ Puerto del servidor para control → 21 ○ Puerto del cliente para control → P > 1023 ○ Puerto del servidor para la transferencia → Q > 1023 ○ Puerto del cliente para la transferencia → P+1 modo activo: cliente inicia la comunicación con el comando PORT y servidor inicia la transferencia ○ ○ Puerto del servidor para control → 21 ○ puerto del cliente para control → P>1023 ○ Puerto del servidor para la transferencia → 20 ○ Puerto del cliente para la transferencia → P+1 FTPS: Es FTP sobre SSL ○ No tiene nada que ver con SSH ○ NOTA por revisar: SFTP: Protocolo de transferencia segura de archivos. ○ Tiene una capa por encima de SSH. SCP (Secure Copy Protocol): es un protocolo de transferencia de archivos en red que permite la transferencia de archivos fácil y segura entre un host remoto y uno local, o entre dos ubicaciones remotas ○ Está por encima de SSH 9. Definiciones RFC(Request For Comments): documento numérico en el que se describen y definen protocolos, conceptos, métodos y programas de Internet. ○ La gestión de los RFC se realiza a través de IETF (el consorcio de colaboración técnica más importante de Internet, Internet Engineering Task Force). RIR: Regional Internet Registry - Registros Regionales de Internet: Es una organización que supervisa la asignación y el registro de recursos de números de Internet dentro de una región particular del mundo.