Tema 2: IP - UPC Universitat Politècnica de Catalunyapersonals.ac.upc.edu/jsunyol/STD-T22.pdf · 9...

27
1 1 Tema 2: IP Funcionalidad de un router Fragmentación, reensamblado y MTU ICMP, MTU path discovery y troubleshooting Ping Traceroute Encaminamiento en IP Path determination y concepto de convergencia Encaminamiento estático y dinámico Protocolos de Encaminamiento Interno (IGP’s) : RIP Sistemas Autónomos (AS) y protocolos de Encaminimamiento Externo : BGP DNS Direcciones privadas y NAT (Network Address Translation) Firewalls y ACL’s (Listas de acceso) 2 2 Tema 2: IP Funcionalidad de un router Los routers operan en la capa de red registrando y grabando las diferentes redes y eligiendo la mejor ruta entre las mismas. Cualquier host A (IP A ) que quiera enviar un datagrama IP a otro host B (IP B ) que esté en una subred distinta (NetID A NetID B ) debe hacerlo a través de un router. Los routers tienen una dirección IP por cada interfaz. Red A Red B Router Router 3 3 Tema 2: IP Funcionalidad de un router Si un host recibe un datagrama que no está dirigido a él, el host descarta el datagrama Si un router recibe un datagrama que no está dirigido a él, intenta encaminarlo a un host o a otro router FORWARDING ip_input() ip_forwarding() ip_output() tcp_output() tcp_input() Buffer Driver Buffer Driver 4 4 Tema 2: IP Funcionalidad de un router El router deberá entre otras cosas realizar las siguientes funciones: “Forwarding”: envíar datagramas de una subred a otra. “Routing”: decidir a que subred debe enviar un datagrama que le llegue de otra subred (decidir interficies de salida del router). Separan las tramas de la capa 2 y envian paquetes basados en las direcciones de destino de capa 3. “Error messaging”: notificar al host origen con un mensaje ICMP de cualquier problema que le impida realizar un “forwarding” Otras funciones: Fragmentation and reassembly”: (cada vez más en desuso) debido al uso del “MTU Path Discovery” “Quality of Service” (QoS): cada vez más en uso con la introducción de aplicaciones en tiempo real (Reserva de recursos) Otras: balanceos de cargas, servicios multiprotocolo, seguridad informática (IPSec), protección de entrada en Intranets (firewalls), conectar diferentes tecnologías de capa dos como Eth, TR....

Transcript of Tema 2: IP - UPC Universitat Politècnica de Catalunyapersonals.ac.upc.edu/jsunyol/STD-T22.pdf · 9...

11

Tema 2: IP

Funcionalidad de un routerFragmentación, reensamblado y MTUICMP, MTU path discovery y troubleshooting

PingTraceroute

Encaminamiento en IPPath determination y concepto de convergenciaEncaminamiento estático y dinámicoProtocolos de Encaminamiento Interno (IGP’s) : RIPSistemas Autónomos (AS) y protocolos de Encaminimamiento Externo : BGP

DNSDirecciones privadas y NAT (Network Address Translation)Firewalls y ACL’s (Listas de acceso)

22

Tema 2: IP

Funcionalidad de un routerLos routers operan en la capa de red registrando y grabando las diferentes redes y eligiendo la mejor ruta entre las mismas.Cualquier host A (IPA) que quiera enviar un datagrama IP a otro host B (IPB) que esté en una subred distinta (NetIDA ≠ NetIDB) debe hacerlo a través de un router.Los routers tienen una dirección IP por cada interfaz.

Red A Red B

RouterRouter

33

Tema 2: IP

Funcionalidad de un routerSi un host recibe un datagrama que no está dirigido a él, el hostdescarta el datagramaSi un router recibe un datagrama que no está dirigido a él, intenta encaminarlo a un host o a otro router FORWARDING

ip_input() ip_forwarding() ip_output()

tcp_output()tcp_input()

Buffer Driver

Buffer Driver

44

Tema 2: IP

Funcionalidad de un routerEl router deberá entre otras cosas realizar las siguientes funciones:

“Forwarding”: envíar datagramas de una subred a otra.“Routing”: decidir a que subred debe enviar un datagrama que le llegue de otra subred (decidir interficies de salida del router).Separan las tramas de la capa 2 y envian paquetes basados en las direcciones de destino de capa 3. “Error messaging”: notificar al host origen con un mensaje ICMP de cualquier problema que le impida realizar un “forwarding”Otras funciones:

“Fragmentation and reassembly”: (cada vez más en desuso) debido al uso del “MTU Path Discovery”“Quality of Service” (QoS): cada vez más en uso con la introducción de aplicaciones en tiempo real (Reserva de recursos)Otras: balanceos de cargas, servicios multiprotocolo, seguridad informática (IPSec), protección de entrada en Intranets (firewalls), conectar diferentes tecnologías de capa dos como Eth, TR....

55

Tema 2: IP

Ejemplo:

Internet

Modem

5 Subredes: A, B, C, D, E

IPA

IPE

AEDCB

Router debe:

Routing: decidir la interficie de salida del router para cada datagrama que le llega

Forwarding: usar la tecnología de nivel 2 para transmitirdatagramas por una interficie de salida

Error messaging: notificar cualquier problema que impida el forwarding de datagramas usando mensajes ICMP

Cada router tiene una IP con NetID distinto por interficie de salida

66

Tema 2: IP

RoutersRouters transmiten información de nivel 3 (datagramas)Un router no retransmite (forwarding) tramas broadcast (e.g. ARP).Selecciona la mejor ruta y conmuta paquetes de datos.Se utiliza para interconectar una o más LAN con objeto de crear una WAN.

RouterRouter

77

Tema 2: IP

Routers, Bridges/Switches y HubsHubs separados por switches forman un dominio de colisionesSwitches y Hubs separados por un router forman un dominio broadcastBridges/Switches deben estar distribuidos de forma que NO formen bucles cerrados (Spanning Tree Protocol, IEEE 802.1q se encarga de ello)Los conmutadores transmiten a mayor velocidad que los routers y además son más baratos

88

Tema 2: IP

MTU (Maximum Transfer Unit)Número máximo de bytes de datos que pueden aparecer encapsulados en una trama de redCada red (Ethernet, ATM, X.25 ...) tiene su propia MTU“Path MTU”: se define como el mínimo MTU de entre todas las redes que hay entre dos hosts conectados a Internet

Punto a Punto 296

X.25 576

Ethernet 1500

IEEE 802.3/802.2 1492

FDDI 4352

IEEE 802.5 (4 Mbps TR) 4464

IBM (16 Mbps TR) 17914

Network MTU (Bytes)

99

Tema 2: IP

Fragmentación y reensamblado:Cada día menos usado con el uso de MTU Path Discovery

• R1 fragmentará datagramas enviados por host A debido a que la MTU de la Red2 es menor que la de la Red1 (Path MTU = 576 bytes)

• El datagrama no se reensambla en R2, sino que lo hará el destino(HostB)

• R2 reenvía los fragmentos como si fuesen datagramasindependientes (podrían llegar desordenados o que alguno de los fragmentos no llegase)

• Usa los campos “flags”, “fragment offset”, “total length” de la cabecera IP para fragmentar y reensamblar

IPA IPB

MTU = 1500 bytes

MTU = 576 bytes

MTU = 1500 bytes

R1 R2

Red3Red2Red1

1010

Tema 2: IP

Fragmentación y reensamblado:

Desplazamiento de FragmentoFlagsIdentificación

MF

DF0

0 16 3119

1111

Tema 2: IP

Fragmentación y reensamblado:“Flags”: campo de 3 bits. El segundo y tercer bit se usan para fragmentar:

Primer bit reservado a “0”Flag D F “don’t fragment”

“0” = puede fragmentar el datagrama“1” = no pude fragmentar el datagramasi activo un router NO fragmentará el datagrama(devolverá un mensaje ICMP indicando que no puede enviar el datagrama ya que no se le permite fragmentar)

Flag M F “more fragments”“0” = único ó último fragmento“1” = aun hay más fragmentosactivo cuando se fragmenta excepto en el último fragmento que se desactiva

1212

Tema 2: IP

Fragmentación y reensamblado:Identificación: número de 16 bits que identifica el datagrama, permite implementar números de secuencias y reconocer diferentes fragmentos de un mismo datagrama ya que todos comparten este número.“Fragment offset” ó desplazamiento de Fragmento: campo de 13 bits que indica el offset ó tamaño (en bytes) en bloques de fragmento con respecto al datagrama original desde el origen del datagramaTodos los fragmentos excepto el último deben ser multiplos de 8 bytes (en su campo de datos)Las direcciones IP origen y destino NO se modificanSi un fragmento se pierde, todos los fragmentos del datagrama se descartarán (esto se descubre en destino que es el que reensambla los fragmentos)

1313

Tema 2: IP

Fragmentación y reensamblado:

1500 (Ethernet data) = 20 (IP header) + 1480 (IP data)

flag D = 0, flag M = 0, offset = 0, total length = 1500

572 (layer 2) = 20 (IP header) + 552 (IP data)

flag D = 0, flag M = 1, offset = 0, total length = 572

572 (layer 2) = 20 (IP header) + 552 (IP data)

flag D = 0, flag M = 1, offset = 552, total length = 572

396 (layer 2) = 20 (IP header) + 376 (IP data)

flag D = 0, flag M = 0, offset = 1104, total length = 396

1480 bytes = 552 (multiplo de 8) + 552 (multiplo de 8) + 3761414

Tema 2: IP

ICMP (Internet Control Message Protocol)

Permite el intercambio de mensajes de control y de supervisión entre dos ordenadores y sobre la red.Notifica un fallo y sugiere las acciones que deben ser tomadas para cada error.Reporta las condiciones de error sólo a la fuente original. La fuente debe decidir que acción tomar. El host no sabe que GW ó maquina ocasionó el problema. El datagrama sólo contiene la dirección IP fuente y destino finalLos mensajes ICMP requieren de dos niveles de encapsulación Protocolo de control para comunicar incidencias:

Un datagrama no puede alcanzar su destinoUn router no puede almacenarlo temporalmente para reenviarloUn router indica a un ordenador que envíe el datagrama por una ruta mas corta

1515

Tema 2: IP

ICMP (Internet Control Message Protocol)

DatosICMP

CabeceraICMP

DatosDATAGRAMA

CabeceraDATAGRAMA

DatosTRAMA

CabeceraTRAMA

1616

Tema 2: IP

ICMP (Internet Control Message Protocol)ICMP comunica mensajes de error y control ademas de otras condiciones que requiera atención por parte de un router o hostLos mensajes van encapsulados en datagramas IP

ICMP mensajeIP header

Tipo Codigo Checksum

ICMP Data (Depending on the type of message)

0 8 16 31

1717

Tema 2: IP

ICMP (Internet Control Message Protocol)Tipos de mensajes:

Respuesta a Eco (0) Detectar destinos inalcanzables (3) Petición de control de flujo (4) Redireccionamiento de rutas (5)Solicitud de Eco (8) Anuncio de rutas (9)Petición de rutas (10)Tiempo excedido (11)Problema de parámetros (12)Marca de tiempo (13)Respuesta a la marca de tiempo (14) Petición de máscara de dirección (17)Respuesta a la máscara de dirección (18)

1818

Tema 2: IP

ICMP (Internet Control Message Protocol)Checksum cubre todo el mensaje ICMPHay 15 tipos de mensajes definidos por el campo “type”Un mismo tipo puede emplear el campo “code” para especificar cierta condición del mensaje

Type Code Description Query Error

0 0 Echo reply (Ping reply) x

3 0 Network unreachable x

1 Host unreachable x

2 Protocol unreachable x

3 Port unreachable x

..........

8 0 Echo request (Ping request) x

9 0 Router advertisement x

11 0 time-to-live exceeded x

...................................

1919

Tema 2: IP

Tipos de mensajes ICMP (mensaje ECO petición y respuesta)La respuesta devuelve los mismos datos que se recibieron en la peticiónSe utiliza para construir la herramienta “PING”Se emplea para detectar problemas en la redPermite comprobar que existe comunicación entre dos host a nivelde capa de red Permite comprobar si el destino esta activo y si existe una ruta hacia elPermite medir el tiempo de ida y vueltaPermite estimar la fiabilidad de la rutaPuede ser utilizado tanto por host como por routersComprueban que la capa física (cableado), acceso al medio (tarjetas de red), y red (configuración IP) están correctasNo se comprueban las capas de transporte y aplicación que podrían estar mal configuradas

2020

Tema 2: IP

Tipos de mensajes ICMP ( Mensaje de Destino inalcanzable)Son enviados por un router cuando no puede enviar o entregar un datagrama IPSe envían al emisor del datagrama originalEl campo código tiene una información adicional del problema

Host Inaccesible por el Tipo de Servicio12Red Inaccesible por el Tipo de Servicio11Comunicación con Host Destino Administrativamente Prohibida10Comunicación con Red Destino Administrativamente Prohibida9Host de Origen Aislado8Host Destino Desconocido7Red de Destino Desconocida6Falla en la Ruta Origen5Necesita Fragmentación4Puerto Inaccesible3Protocolo Inaccesible2Host Inaccesible1Red Inaccesible0

2121

Tema 2: IP

Tipos de mensajes ICMP (Mensaje de Paquete de restricción)Se utiliza para informar al Host de problema de congestión de redEs enviado por un router cuando tiene problemas debido a la recepción de un número excesivo de datagramasLa recepción de un paquete de restricción provocara una disminución de la tasa de inyección de datagramas al HostNo existe un paquete que invierta el efecto de este, la situación se normaliza gradualmente cuando dejan de recibirse mensajes de este tipo.

2222

Tema 2: IP

Tipos de mensajes ICMP ( Mensaje de Tiempo excedido )Este tipo de mensajes los pueden enviar tanto los router como los host

Los routers cuando descartan un datagrama por exceder su tiempo de vida (Código = 0)Los host al ocurrir un timeout mientras se esperaban todos los fragmentos de un datagrama, descartándose (Código = 1)

2323

Tema 2: IP

TTL (Time To Live)Especifica el tiempo(en segundos) que se permite viajar a este datagrama.Campo que indica el límite de routers que puedes atravesar en InternetSe inicializa en cada datagrama con un valor como máximo de 255 (8 bits de campo)Cada vez que el datagrama atraviesa un router se decrementa en 1ya que el router es capaz de procesarlo en menos de 1 segundo.Si un datagrama llega a un router y su TTL = 0, el router descarta el datagrama y envía un mensaje ICMP (mensaje con tipo = 11)Este campo se utiliza en el programa “traceroute” para averiguar la ruta que atraviesa un datagrama cuando viaja por Internet, también el programa “ping” suele indicar el TTL

2424

Tema 2: IP

MTU Path Discovery (RFC 1063)Objetivo: evitar la fragmentación de datagramas averiguando cual es la Mínima MTU entre el origen y el destino¿Cómo conseguirlo?

Se envía un datagrama con MTU la del enlace y con el bitDon’t Fragment activoCuando un router se encuentre que tiene una MTU menor que la que le llegue no fragmentará y enviará un mensaje ICMP “destino inalcanzable” (type = 3, code = 4 “fragmentation needed but don’t fragment bit set”)Este mensaje ICMP advierte cual es la MTU del enlace que necesita fragmentar (sino soporta esta opción, advierte MTU = 0)El origen vuelve a empezar con la nueva MTU hasta que averigue la mínima MTU, si la MTU advertida es 0, lo intenta con MTU conocidas más pequeñas

2525

Tema 2: IP

Ping:Se encarga de verificar la conectividad.El comando “ping” se usa como herramienta de diagnóstico para averiguar

Si un host está conectado y es accesibleSi los routers intermedios son operativosTu propio host (software IP) funciona correctamente

Ping envía “echo requests” a un host determinado. Este le devuelve un “echo reply”Los echo request/reply son mensajes ICMPPing devuelve información del tipo “retardo desde cliente a servidor”, valor del TTL, cantidad de paquetes ICMP perdidos

ping [ -dfLnqRrv] [ -c count] [ -I ifaddr] [ -i wait] [ -l preload] [ -p pattern]

[ -S ifaddr] [ -s packetsize] [ -t ttl] [ -w maxwait] host

2626

Tema 2: IP

ping –c3 aucanada

PING aucanada.ac.upc.es (147.83.35.24): 56 data bytes

64 bytes from 147.83.35.24: icmp_seq=0 ttl=255 time=0.093 ms

64 bytes from 147.83.35.24: icmp_seq=1 ttl=255 time=0.074 ms

64 bytes from 147.83.35.24: icmp_seq=2 ttl=255 time=0.079 ms

--- aucanada.ac.upc.es ping statistics ---

3 packets transmitted, 3 packets received, 0% packet loss

round-trip min/avg/max = 0.074/0.082/0.093 ms

ping -c3 -s512 rogent

PING rogent.ac.upc.es (147.83.31.7): 512 data bytes

520 bytes from 147.83.31.7: icmp_seq=0 ttl=254 time=1.530 ms

520 bytes from 147.83.31.7: icmp_seq=1 ttl=254 time=1.582 ms

520 bytes from 147.83.31.7: icmp_seq=2 ttl=254 time=1.584 ms

--- rogent.ac.upc.es ping statistics ---

3 packets transmitted, 3 packets received, 0% packet loss

round-trip min/avg/max = 1.530/1.565/1.584 ms

2727

Tema 2: IP

TraceroutePrograma que permite averiguar la ruta que ha seguido un datagrama de host a host.Se aprovecha de que cuando un datagrama llega a un router con el campo TTL = 0 este es descartado y el origen recibe un mensaje ICMP (type = 11, code = 0)Progama envía:

datagramas UDP con la cabecera IP con el TTL =1, 2, 3, 4, .... (envía 3 datagramas con cada TTL) hasta que se llegue alhost destino Como el puerto UDP destino es desconocido, el host destino devuelve un error ICMP de destino no alcanzable (unreachableport, type=3, code=3)Además el datagrama lleva en su campo de datos un número de secuencia, una copia del TTL y un timestamp con el tiempo en que se envió el datagrama para dar estadísticas

2828

Tema 2: IP

• traceroute fonolltraceroute to fonoll.ac.upc.es (147.83.31.14), 30 hops max, 40 byte packets

1 arenys5.ac.upc.es (147.83.35.2) 1 ms 1 ms 2 ms

2 fonoll.ac.upc.es (147.83.31.14) 1 ms * 1 ms

· traceroute [ -l] [ -m max_ttl] [ -n] [ -p port] [ -q nqueries] [ -r]

[ -s src_addr] [ -t tos] [ -w waittime] host [packetsize]

• traceroute -q 4 fonoll 512 traceroute to fonoll.ac.upc.es (147.83.31.14), 30 hops max, 512 byte packets

1 arenys5.ac.upc.es (147.83.35.2) 2 ms 2 ms 1 ms 2 ms

2 fonoll.ac.upc.es (147.83.31.14) 1 ms * 1 ms *

2929

Tema 2: IP

• traceroute fonoll 5600traceroute to fonoll.ac.upc.es (147.83.32.14), 30 hops max, 5600 byte packets

MTU=4352 MTU=2002 MTU=1492 arenys5.ac.upc.es (147.83.35.2) 3 ms 3 ms 2 ms

fonoll.ac.upc.es (147.83.32.14) 2 ms * 2 ms

• tcpdump –i eth0 host aucanada and fonoll09:57:48.925224 aucanada.ac.upc.es.56020 > fonoll.ac.upc.es.33435: udp 1464 [ttl 1]

09:57:48.928027 arenys5.ac.upc.es > aucanada.ac.upc.es: icmp: time exceeded in-transit [tos 0xc0]

09:57:48.932349 aucanada.ac.upc.es.56020 > fonoll.ac.upc.es.33436: udp 1464 [ttl 1]

09:57:48.935629 arenys5.ac.upc.es > aucanada.ac.upc.es: icmp: time exceeded in-transit [tos 0xc0]

09:57:48.935859 aucanada.ac.upc.es.56020 > fonoll.ac.upc.es.33437: udp 1464 [ttl 1]

09:57:48.938164 arenys5.ac.upc.es > aucanada.ac.upc.es: icmp: time exceeded in-transit [tos 0xc0]

09:57:48.938456 aucanada.ac.upc.es.56020 > fonoll.ac.upc.es.33438: udp 1464

09:57:48.940628 fonoll.ac.upc.es > aucanada.ac.upc.es: icmp: fonoll.ac.upc.es udp port 33438 unreachable (DF)

09:57:48.944172 aucanada.ac.upc.es.56020 > fonoll.ac.upc.es.33439: udp 1464

09:57:51.937620 aucanada.ac.upc.es.56020 > fonoll.ac.upc.es.33440: udp 1464

09:57:51.939703 fonoll.ac.upc.es > aucanada.ac.upc.es: icmp: fonoll.ac.upc.es udp port 33440 unreachable (DF)

3030

Tema 2: IP

2.5 Gbps622 Mbps155 Mbps45/34 Mbps2 Mbps

Tipo de enlace

MIL

ROM

SAOLS

SAL

PAR

VIE

MADPE

SJU

Enlace cable/fibraEnlace por satélite

XXXYY

XXXYY

XXXYY

Nodo completo

Sólo MS

Sólo IP

MADRRMA

DDE

NYCNS

NYCCC LON

MIATIC

LIM

SAOSI

LUR

SCLPR

SCLFL

BOG

MON

BUEBA

HOU

MTY

MIASD

BUEC1

3131

Tema 2: IP

· traceroute www.cisco.com

traceroute to cio-sys.cisco.com (192.31.7.130), 30 hops max, 40 byte packets

1 arenys5 (147.83.35.2) 0.768 ms 0.684 ms 0.698 ms

2 phanella.upc.es (147.83.124.128) 2.836 ms 1.406 ms 1.875 ms

3 termcat.cesca.es (193.145.223.9) 2.370 ms 1.332 ms 1.055 ms

4 193.145.223.222 (193.145.223.222) 2.435 ms 3.178 ms 1.793 ms

5 A0-1-1.EB-Madrid00.red.rediris.es (130.206.224.1) 14.021 ms 11.974 ms 15.546 ms

6 A6-0-0-1.EB-Madrid0.red.rediris.es (130.206.224.74) 17.334 ms 26.908 ms 28.304 ms

7 194.69.226.13 (194.69.226.13) 261.393 ms 262.017 ms 258.488 ms

8 194.69.227.37 (194.69.227.37) 251.191 ms 262.695 ms 260.127 ms

9 borderx2-hssi3-0.PompanoBeach.cw.net (204.70.92.121) 532.621 ms 519.488 ms 529.751 ms

10 * * core1-fddi-1.PompanoBeach.cw.net (204.70.92.33) 543.744 ms

11 204.70.12.2 (204.70.12.2) 537.980 ms * *

12 * 204.70.12.1 (204.70.12.1) 512.827 ms 572.145 ms

13 ast-bbn1-nap.Atlanta.cw.net (204.70.10.170) 545.150 ms 531.534 ms 539.311 ms

14 h10-1-0.paloalto-br2.bbnplanet.net (4.0.1.197) 695.972 ms 628.130 ms *

15 * * p2-0.paloalto-nbr2.bbnplanet.net (4.0.2.197) 645.123 ms

16 p0-0-0.paloalto-cr18.bbnplanet.net (4.0.3.86) 694.410 ms * *

17 * h1-0.cisco.bbnplanet.net (4.1.142.238) 716.981 ms 620.717 ms

18 * pigpen.cisco.com (192.31.7.9) 687.278 ms *

19 cio-sys.cisco.com (192.31.7.130) 630.708 ms 678.356 ms *

3232

Tema 2: IP

3333

Tema 2: IP

3434

Tema 2: IP

Direcciones privadas (RFC 1918)• Direcciones privadas definidas por IANA: son direcciones que no son

enrutables en Internet• Clase A: 10.0.0.0 – 10.255.255.255 CIDR 10.0.0.0/8• Clase B:172.16.0.0 –172.31.255.255 CIDR172.16.0.0/12• Clase C:192.168.0.0–192.168.255.255 CIDR 92.168.0.0/16

• Ideales para Labs o Test-home networks• Ideal en Intranets• Ideal en WAN links (core backbones) para ahorrar direcciones globales• Problema: no son enrutables por Internet

3535

Tema 2: IP

NAT (Network Address Translation) (RFC 1631)Permite conectar varios PCs de una misma subred a Internet, utilizando únicamente una dirección IP pública para ello.Mecanismo que permite la traducción de direcciones privadas a públicas para poder acceder a Internet desde una intranetNAT se aprovecha de las características de TCP/IP, que permiten a un PC mantener varias conexiones simultáneas con un mismo servidor remoto. Esto es posible gracias a los campos de las cabeceras que definen unívocamente cada conexión, estos son: dirección origen, puerto origen, dirección destino y puerto destino.Las direcciones identifican los equipos de cada extremo y los puertos cada conexión entre ellos.Necesitamos un Router NAT en la frontera entre las redes que queremos traducirEl mecanismo debe ser transparente a los usuarios finalesCompatibilidad con firewalls y con seguridad en Internet

3636

Tema 2: IP

Intranet

Router NAT

Internet

3737

Router NAT

Src:192.168.0.2:1108 Dst:207.29.19.8:80

192.168.0.2

192.168.0.3

Web server207.29.19.8

FTP server205.4.22.31

Src:192.168.0.3:2401 Dst:205.4.22.31:21

Src:206.16.55.2:1108 Dst:207.29.19.8:80

Src:206.16.55.3:2401 Dst:205.4.22.31:21

192.168.0.1 206.16.55.1

Static NAT Table

Inside Outside192.168.0.x 206.16.55.x

INTRANET INTERNET

Tema 2: IP

NAT estático: consiste en substituir la parte de host de la IP privada en el host de la IP pública

3838

Tema 2: IP

NAT dinámico (Por pool de la dirección IP):Tenemos un pool de direcciones públicas y asignamos IP privada con IP pública

Router NAT

Src:192.168.0.2:1108 Dst:207.29.19.8:80

192.168.0.2

192.168.0.3

Web server207.29.19.8

FTP server205.4.22.31

Src:192.168.0.3:2401 Dst:205.4.22.31:21

Src:206.16.55.2:1108 Dst:207.29.19.8:80

Src:206.16.55.3:2401 Dst:205.4.22.31:21

192.168.0.1 206.16.55.1

Dinamic NAT Table

Inside Outside192.168.0.2 206.16.55.2192.168.0.3 206.16.55.3

Pool: 206.16.55.0 ... 15

INTRANET INTERNET

3939

Tema 2: IP

NAT dinámico ó Overloading (PAT: Port Address Translation):El router tiene una sóla IP pública, y elige un nuevo puerto origen y mapea las IP privadas a partir del puerto designado

Router NAT

Src:192.168.0.2:1108 Dst:207.29.19.8:80

192.168.0.2

192.168.0.3

Web server, 207.29.19.8

FTP server, 205.4.22.31

Src: 192.168.0.3:2401 Dst: 205.4.22.31:21

Src:206.16.55.1:61001 Dst:207.29.19.8:80

Src:206.16.55.1:61002 Dst:205.4.22.31:21

192.168.0.1 206.16.55.1

Dinamic NAT Table

Inside Outside192.168.0.2:1108 61001

192.168.0.3:2401 61002*a partir del puerto 1024

Virtual Server Table

192.168.0.4:80 80

Web server, IP 192.168.0.4:80 Reacheable as 206.16.55.1:80

4040

Tema 2: IP

• Protocolos sensibles a NAT:NAT modifica cabecera IP recalcular el checksum IP y TCPProtocolos que llevan embebida la IP también debe ser modificada ALG (Application-Level Gateway)

ICMP: “Destination unreachable messages” llevan IP embebidasComandos FTP llevan IP embebidas como “strings” (cambiarlas además implica que cambia la longitud del segmento TCP)SNMP (Simle Network Management Protocol)NetBIOS over TCP/IP (NBT)NAT + Firewalls + IPsecDNS, Kerberos, X-Windows, remote-shell, SIP, ... (ver Internet Draft “Protocol Complicaitons with the IP Network Address Translation”)

4141

Tema 2: IP

Routing (encaminamiento):Cada router mantiene una tabla de encaminamiento que indica como llegar a un destino (dirección IP e interficie)En vez de una dirección IP puede haber prefijos de red (NetID) que representen a redes enterasLa tabla es rellenada por un algoritmo de encaminamiento

IPAIPB

eth0

IPC

eth2

eth1

IP addressInterface

IPA eth0

IPB eth1

IPC eth2

NetID atm0

Routing table

atm0

Red ATM

Todos los hosttienen el mismo

NetID

4242

Tema 2: IP

¿Qué hace un router cuando recibe un datagrama?Extraer la dirección IPdest del datagrama recibidoExtraer el NetID y HostID de la dirección IPdest

Si el NetID coincide con alguno de las redes que tiene conectadas directamente a través de una interficie, enviar el datagramadirectamente por esa interficie, sino:

mirar si la dirección IP o el NetID coincide con alguna entrada dentro de la tabla y sacarla por la interficie correspondiente (Longest Match Lookup)Sino coincide entonces enviarla al router por defecto

Default Router (Router por defecto): router dentro de una red al que se le envían aquellos datagramas que un host u otro router no saben donde encaminar. El router por defecto tienen más información que le permite encaminar

4343

Tema 2: IP

Longest Match LookupProceso por el cual el router encuentra una dirección de red en su tabla de encaminamientoEn la tabla se guardan el IP + máscara (NetID)Los NetID se guardan normalmente en orden descendenteCuando llega un paquete IP, se extrae la IP y se compara con cada entrada de la tabla hasta que se encuentra la primera entrada que coincideE.g.; quiero ver que entrada de la siguiente tabla con 3 entradas se corresponde con la llegada 11111100

a) 11111000b) 11110000c) 11100000

Primero se compara con a), coinciden 5 bits, después se compara con b), coinciden 4 bits, ya no sigue comparando. a) es la opción que mejor se aproxima a la llegada

4444

Tema 2: IP

E0

Broadcast

Red A Red B

Red CNetwork Port

A E0B S0C S1

Routing Table

S0

S1

Routers

4545

Tema 2: IP

Routers

E0 S1S0S0 S1 E0

10.1.0.0 10.2.0.0 10.3.0.0 10.4.0.0

Tabla de enrutamiento

10.3.0.0

10.4.0.0

10.2.0.0

10.1.0.0

E0

S0

S0

S0 2

1

0

010.1.0.0

10.2.0.0

10.3.0.0

10.4.0.0

E0

S0

S0

S0 2

1

0

0

Tabla de enrutamiento

10.2.0.0

10.3.0.0

10.4.0.0

10.1.0.0

S1

S0

S0 1

1

0

0

S1

Tabla de enrutamiento

4646

Tema 2: IP

Longest Match Lookup (tabla de un router)Si existe una “correspondencia explicita” a una entrada en la tabla, el router sabe por donde sacar la tramaSi no existe una correspondencia explicita, normalmente habrá una salida por defecto (gateway o router por defecto)Por consiguiente nos falta en la tabla información de a que destino queremos enviar el paquete y porqué interficie sacarla

IPdestino Máscara Gateway Interficie198.5.3.12 255.255.255.255 0.0.0.0 eth0198.5.3.0 255.255.255.0 0.0.0.0 eth0198.5.2.0 255.255.255.0 0.0.0.0 ppp00.0.0.0 0.0.0.0 198.5.2.2 ppp0

198.5.3.12/24 198.5.3.1/24 198.5.2.1/24 198.5.2.2/24 198.5.1.1/24

eth0 ppp1ppp0 ppp0

4747

Tema 2: IP

Tabla de un hostDebe indicar como llegar a su propia subred (haciendo una ARP)Debe indicar como salir de su subred (usando el gateway por defecto)

IPdestino Máscara Gateway Interficie198.5.3.0 255.255.255.0 0.0.0.0 eth00.0.0.0 0.0.0.0 198.5.3.1 eth0

198.5.3.12/24 198.5.3.1/24 198.5.2.1/24 198.5.2.2/24 198.5.1.1/24

eth0 ppp1ppp0 ppp0

4848

Tema 2: IP

Path determination o mejor rutaProceso por el cual un router determina los posibles caminos porlos que puede reenviar un datagrama para que este llegue a su destinoEl camino puede determinarse a partir de información introducidapor el administrador de red (estático) o a partir de información(métricas) intercambiada por los routers (dinámico) Las métricas pueden ser muy variadas: saltos (“hops”), retardos, cargas, ancho de banda, fiabilidad del enlace, coste....La información que se intercambia los routers para permitir la determinación de un camino es particular a cada protocolo de encaminamiento, que define

La periodicidad con que se intercambian los paquetes de encaminamientoEl formato y contenido de estos paquetes de encaminamientoAlgoritmos asociados que permiten calcular el camino óptimo, y por tanto decidir la interfice de salida (e.g algoritmos de mínimo coste)

4949

Tema 2: IP

Concepto de “convergencia” en un protocolo de encaminamientoCuando la topología de la red cambia, los routers deben recalcular las rutas y actualizar las tablas de encaminamientoEl tiempo en que todos los routers alcanzan un conocimiento homogéneo de la red se le llama “tiempo de convergencia”Tiempos de convergencia grandes implican que los routers tendrán mayor dificultad para enviar los datagramas por la interficie más adecuadaConvergencia depende

Distancia en hops desde el punto en que se produjo el cambioCantidad de routers que usan el protocolo dinámicoEl ancho de banda y la carga de tráfico de la redLa carga del router (CPU)El protocolo de encaminamiento usado (el algoritmo)

5050

Tema 2: IP

Protocolos de encaminamientoEstáticos

Son aquellos en los que el administrador de sistemas introduce manualmente las entradas de la tabla de encaminamiento (puertos predeterminados)Útil si la red es muy pequeña o cuando una red sólo puede ser alcanzado por un solo camino (“stub network”)E.g.; en UNIX con el comando “route add/del” se modifica la tabla y con el comando “netstat –rn” se observa el contenido de la tabla

DinámicosSon aquellos que rellenan la tabla de encaminamiento de forma automáticaPermite que la tabla cambie automáticamente cuando hay cambios en topología de la red, por tanto útil en redes grandesSe pueden agrupar en 3 grandes grupos

Vector-distance protocols: determinan la dirección y distancia a que se encuentra cualquier enlace de la red ,(e.g. RIP, IGRP, BGP, ...)Link-state protocols: recrean la topología exacta de la red (e.g.; OSPF, IS-IS)Híbridos: combinan aspectos de los algoritmos de distancias y de los de estado del enlace

5151

Tema 2: IP

Ejemplo de encaminamiento estático

S1

E0

S2 S0

172.16.2.2

S0

172.16.2.1

172.16.1.0 / 24

172.16.2.0

Tabla de Routing

MascaraRed Dirección Interfaz

172.16.1.0 255.255.255.0 172.16.1.1 E0

0.0.0.00.0.0.0 172.16.2.2 S0

Red Stub

BA

5252

Tema 2: IP

Ejemplo en los routers CiscoHabilitación de rutas estáticas

ip route red [máscara] {dirección | interfaz} [distancia] [permanent]red es la red o subred de destinomáscara es la máscara de la subreddirección es la dirección IP del router del próximo saltointerfaz es el nombre de la interfaz que debe usarse para llegar al destinodistancia es un parámetro opcional que define la distancia administrativa (0-255) ( a menor distancia mayor probabilidad de usar el router)permanent es un parámetro opcional que especifica que la ruta no debe ser eliminada, aunque la interfaz deje de estar activa.

Para configurar una ruta estática en el router Arouter(config)#ip route 172.16.1.0 255.255.255.0 172.16.2.1y para configurar la ruta predeterminada del router Brouter(config)#ip route 0.0.0.0 0.0.0.0 172.16.2.2

5353

Tema 2: IP

Ejemplo de encaminamiento estático: comando route (modo root)

Ejemplo: ver la tabla de routing

route [-v] [-A family] add [-net|-host] target [netmask

Nm] [gw Gw] [metric N] [mss M] [window W] [irtt I]

[reject] [mod] [dyn] [reinstate] [[dev] If]

route [ -v] [ -A family] del [ -net| -host] target [ gw Gw]

[ netmask Nm] [ metric N] [[ dev] If]

• route -v

Kernel IP routing table

Destination Gateway Genmask Flags Metric Ref Use Iface

147.83.35.0 * 255.255.255.0 U 0 0 0 eth0

loopback * 255.0.0.0 U 0 0 0 lo

0.0.0.0 arenys5.ac.upc. 0.0.0.0 UG 0 0 0 eth0

5454

Tema 2: IP

Comando “netstat” (modo usuario)Permite observar entre otras cosas la tabla de encaminamiento además del estado de las conexiones, estadísticas, ....

Ejemplo: ver la tabla de routing

netstat { --route|-r} [address_family_options]

[ --extend| -e[ --extend| -e]] [ --verbose| -v] [ --numeric| -n]

[ --continuous| -c]

• netstat -rn

Kernel IP routing table

Destination Gateway Genmask Flags MSS Window irtt Iface

147.83.35.0 0.0.0.0 255.255.255.0 U 0 0 0 eth0

loopback 0.0.0.0 255.0.0.0 U 0 0 0 lo

0.0.0.0 arenys5.ac.upc.es 0.0.0.0 UG 0 0 0 eth0

5555

Tema 2: IP

ARP, Proxy ARP y encaminamientoLos host normalmente siguen la secuencia siguiente cuando quieren comunicarse

Consultan la tabla de encaminamientoLa tabla les indica que la IP pertenece a un host de su misma red, entonces hacen ARP para averiguar su MACLa tabla les indica que la IP no es de la red y deben ir por tanto al router por defecto, entonces hacen ARP del router para averiguar su MAC¿Cuándo hacen Proxy ARP?

SOLO en casos muy especiales. Por ejemplo cuando un host quiere enviar un datagrama a otro host cuya NetID coincide con la suya pero que tiene un router por en medio.Su tabla de encaminamiento le dice que la subred está conectado directamente a su interficie, por lo que envía un ARP en esa interficie con IP la del host destinoEl router sabe que el host destino está en una interficie conectada directamente a él, y además que él no deja pasar ARPs. Por lo que hace un Proxy ARP y responde con su MACEl host origen cree que se está conectando con el host destino directamente cuando en realidad lo está haciendo a través del router

R BA

5656

Tema 2: IP

Name Type Proprietary Function Updates Metric VLSM Summ

RIP DV No Interior 30 sec Hops No Auto

RIPV2 DV No Interior 30 sec Hops Yes Auto

IGRP DV Yes Interior 90 sec Comp. No Auto

EIGRP Adv DV Yes Interior Trig. Comp. Yes Both

OSPF LS No Interior Trig. Cost Yes Man.

IS-IS LS No Int/Ext Trig. Cost Yes Auto

BGP DV No Exterior Trig. N/A N/A Man.

Comparativa de las caracteristicas de los protocolos de routing

DV distancia vectorLS link stateHops saltosComp anchura de banda + retardoCost proporcional al ancho de bandaSumm sumarizaciónTrig solo cuando hay cambios

5757

Tema 2: IP

Vector -DistanciaSon algoritmos que utilizan las pasarelas para actualizar su información de encaminamiento.Cada router comienza con un conjunto de rotas con las que esta directamete conectado que se guarda en la tabla de encaminamiento.Periodicamente cada router manda una copia de su tabla de encaminamiento a cualquier router que pueda alcanzar directamente.Los routers destino actualizaran su tabla de encaminamiento si:

El router origen conoce un camino más corta al destino.El router destino no tiene al origen en su tabla.La distancia del rigen al destino ha cambiado

5858

Tema 2: IP

Vector -Distancia (Desventajas)Cuando las rutas cambian rápidamente la topología de encaminamiento puede inestabilizarse ya que se puede propagar una información incorrecta que tengan algunos routers.Al pasar toda la información de la tabla de encaminamiento a intervalos regulares la carga de la red aumenta lo que provoca problemas de tiempo de respuesta a los cambios de topología.Los algoritmos vector-distancia que usan los “hops” o saltos como métrica no tienen en cuenta la velocidad o la fiabilidad del enlace.Problema de cuenta hasta infinito cuando un router falla

5959

Tema 2: IP

RIP (Routing Information Protocol)Es un protocolo de encaminamiento interiorCada router envía periódicamente (cada 30 segundos) un datagrama de encaminamiento a cada uno de SUS VECINOS con TODA su tabla de encaminamiento, dichos envios no estan sincronizados. Cuando no se envia un Tout expira y el router informa a la red del cambio. Esta tabla indica el coste (métrica son “hops”) para llegar a cada uno de los destinos (IP) desde ese router. Si el número de saltos es mayor de 15 se desecha el paquete.El router calcula con algoritmo de mínimo coste (Algoritmo de Bellman-Ford) la mínima distancia para llegar a los destino y actualiza su tabla (convergencia: debe ser rápido)RIP versión 1: no anuncia máscaras (RFC1058)

Aplica la máscara de la interficieSino tiene, aplica la mascara de la clase por defecto de esa IP

RIP versión 2: anuncia máscaras (RFC2453)UNIX routing daremons

Routed (RIP v1)Gated (RIP v1, v2, v3, OSPF v2, BGP v1, v2)

6060

Tema 2: IP

Algoritmo de Bellman - FordD(i,j) es el coste para llegar directamente de la Red i a la j, y vale infinito si no es posible llegar directamente a una red vecina (D(i,i) = ∞)D(i,j) representa la métrica de la mejor ruta entre dos redes Entonces la mejor métrica se puede describir como:

El mínimo para llegar a la red j-sima a través de mi red vecina k-sima y se calcula como el mínimo de la suma entre el coste de llegar a mi red vecina k-sima y la métrica de llegar desde la red k-sima a la j-sima

D(i,i) = 0 all iD(i,j) = [D(i,k) + D(k,j) ] otherwisekmim

6161

Tema 2: IP

R1

R4

R3R2N3N2N1

N4

N0

Red Hops Ruta

N0N1

Tabla de R1

11

LocalLocal

Red Hops Ruta

N1N2

Tabla de R2

11

LocalLocal

Red Hops Ruta

N2N3

Tabla de R3

11

LocalLocal

Red Hops Ruta

N2N4

Tabla de R4

11

LocalLocal

Ejemplo de routing

* El contador de saltos para redes conectadas directamente es de 1 hop (ya que coste de Gateway consigo mismo es 0)

6262

Tema 2: IP

R1

R4

R3R2N3N2N1

N4

N0

Red Hops Ruta

N0N1

N2

Tabla de R1

112 R2

LocalLocal

Red Hops Ruta

N1N2

N0N3N4

Tabla de R2

11

2

2

2

R1

LocalLocal

R4

R3

Red Hops Ruta

N2N3

N1N4

Tabla de R3

112

2

R2

LocalLocal

R4

Red Hops Ruta

N2N4

N1N3

Tabla de R4

112

2

R2

LocalLocal

R3

Ejemplo de routing

6363

Tema 2: IP

R1

R4

R3R2N3N2N1

N4

N0

Red Hops Ruta

N0N1

N2N3N4

Tabla de R1

11

3

2

3

R2

LocalLocal

R2

R2

Red Hops Ruta

N1N2

N0N3N4

Tabla de R2

11

2

2

2

R1

LocalLocal

R4

R3

Red Hops Ruta

N2N3

N0N1N4

Tabla de R3

11

2

3

2

R2

LocalLocal

R4

R2

Red Hops Ruta

N2N4

N0N1N3

Tabla de R4

11

2

3

2

R2

LocalLocal

R3

R2

Ejemplo de routing

6464

Tema 2: IP

RIP (Routing Information Protocol)Ventajas:

Si la red tiene rutas redundantes, RIP es capaz de detectarlas y escoger la mejor (routing estático no)Corrige fallos de la red automáticamenteProtocolo fácil de configurar, usar y mantenerUtil si la red es sencilla y sin fuertes requerimientos respecto a la buena eficiencia de la red

DesventajasConverge muy lentamente ante fallos de la redPuede crear ciclos (loops) infinitos que hagan que la red sea inconsistenteDebido a la vulnerabilidad ante la lenta convergencia hace que sea muy poco útil en WANs

6565

Tema 2: IP

Problemas del RIPRIP sólo permite 15 saltos. Considera métrica infinita cualquierrouter que esté más lejos de 15 saltos (Límite de la red = 15)No tiene en cuenta métricas importantes como puede ser el retardo o el ancho de bandaNo permite intercambiar información entre subredes (paquete RIP no informa de las máscaras de red)

E.g. Routers CISCO: aplica la máscara de la interficie, SINO la de la clase correspondiente a la IP anunciada

Vulnerabilidad: counting to infinite (Infinito=16 hops en RIP), si una red se alcanza con un valor de 16 se considera una red inalcanzable (ICMP message “network unreachable”). Esto se soluciona con Split horizon consiste en ser más selectivo haciendo que los routers que advierten omitan información de refresco que pueda “confundir” a los routers o con poison reverseno omitas, advierte pero con un coste infinito

6666

Tema 2: IP

R1

R4

R3R2N3N2N1

N4

N0

Red Hops Ruta

N0N1

N2N3N4

Tabla de R1

11

3

2

3

R2

LocalLocal

R2

R2

Red Hops Ruta

N1N2

N0N3N4

Tabla de R2

11

2

2

2

R1

LocalLocal

R4

R3

Red Hops Ruta

N2N3

N0N1N4

Tabla de R3

11

2

3

2

R2

LocalLocal

R4

R2

Red Hops Ruta

N2N4

N0N1N3

Tabla de R4

11

2

3

2

R2

LocalLocal

R3

R2

Ejemplo de cuenta a infinito

6767

Tema 2: IP

R1

R4

R3R2N3N2N1

N4

N0

Red Hops Ruta

N0N1

N2N3N4

Tabla de R1

11

3

2

3

-

Local-

-

-

Red Hops Ruta

N1N2

N0N3N4

Tabla de R2

11

2

4

2

R1

LocalLocal

R4

R3

Red Hops Ruta

N2N3

N0N1N4

Tabla de R3

11

2

3

2

R2

LocalLocal

R4

R2

Red Hops Ruta

N2N4

N0N1N3

Tabla de R4

11

2

3

2

R2

LocalLocal

R3

R2

X

Ejemplo de cuenta a infinito

6868

Tema 2: IP

R1

R4

R3R2N3N2N1

N4

N0

Red Hops Ruta

N0N1

N2N3N4

Tabla de R1

11

3

2

3

-

Local-

-

-

Red Hops Ruta

N1N2

N0N3N4

Tabla de R2

11

2

4

2

R1

LocalLocal

R4

R3

Red Hops Ruta

N2N3

N0N1N4

Tabla de R3

11

2

5

2

R2

LocalLocal

R4

R2

Red Hops Ruta

N2N4

N0N1N3

Tabla de R4

11

2

5

2

R2

LocalLocal

R3

R2

X

Ejemplo de cuenta a infinito

6969

Tema 2: IP

Split Horizon: evitar bucles (counting to infinite)Un router NO envía información a otro router de las redes que le son comunicadas por ese otro routerRouter 3 no envía refrescos de la tablaRouter 2 informa al Router 3 solo de la Ethernet y Token Ring.Router 2 informa al Router 1 solo de la ATMRouter 1 sólo informa de Token Ring

Ethernet

Token Ring Router 3Router 2Router 1

Ethernet: 1 hop

Token Ring 2 hops

ATM Network: 1 hop

Token Ring 1 hop

X ATM network

7070

Tema 2: IP

Poison Reverse: advertir costes infinitos

Ethernet

Token Ring Router 3Router 2Router 1

Ethernet: 1 hop

ATM Network: ∞ hop

Token Ring 2 hops

ATM Network: ∞ hop

Ethernet: ∞ hops

Token Ring ∞ hops

ATM Network: 1 hop

Ethernet: ∞ hops

Token Ring ∞ hops

X ATM network

7171

Tema 2: IP

Poison reverseCuando detecta que su antigua ruta por un interface no es valiadaenvia un mensaje a los otros interfaces en el que se indica que su coste es infinito, por lo que los routers que reciben el mensajetardan menos en saber que esta ruta no es valida. El problema que tenemos es que incrementa el tamaño de los mensajes de encaminamieno.

Triggered updatesConsiste en que si un router ha cambiado su tabla debido a un cambio en la topología tardará 30 segundos en el peor de los casos en avisar del nuevo cambio a un router vecinoEso hace que un el tiempo de convergencia pueda ser muy alto (minutos) ante cambios en la topología de la red“triggered update” consiste en enviar la tabla enseguida de que se produzca un cambio en la red sin tener que esperar los 30 segundos, mejorando por tanto el tiempo de convergencia, el tiempo es de 1 a 5 segundos.

7272

Tema 2: IP

Cambios en la topología de la redUn router con RIP suele enviar mensajes de refresco cada Tout = 30 segundos con la tabla de encaminamiento a todos sus vecinosSi hay un cambio en la topología de la red, e.g.; router cae, este no puede notificar el cambio con un mensaje de refresco (“update”)Si transcurridos 6*Tout = 180 segundos, un router no ha recibido un update de su vecino, el router marcará la ruta a través de ese router como invalidaUna métrica de valor infinito (=16) indica que una ruta NO es valida

7373

Tema 2: IP

RIPv1 (Routing Information Protocol)Se describe en el RFC 1058Descrito en www.isi.edu/in-notes/rfc1058.txtEs una implementación directa del encaminamiento vector-distancia para LANsUtiliza UDP como protocolo de transporte, con el número de puerto 520 como puerto de destino.Los mensajes RIP se envian en los datagramas UDPOperaciones básicas:

Se inicia enviando un mensaje a los routers vecinos pidiendo la copia de la tabla de encaminamiento.Se envia la tabla de encaminamiento a todos los routers vecinos, cada 30segundos.Cuando RIP detecta que la métrica ha cambiado la difunde por broadcast a los routers.Cuando se recibe se valida y si es necesario se actualiza.Las rutas que RIP aprende de otros routers expiran a los 180 segundos ( 6x30) a no ser que se vuelva a difundir.Cuando una ruta expira la métrica se pone a infinito y 60 segundos más arde se borra de la tabla.

7474

Tema 2: IP

Message Format (UDP port = 520)RIP messageIP header UDP header

20 bytes

7575

Tema 2: IP

RIPv2 (Routing Information Protocol)Se describe en el RFC 1721 y RFC 1722Descrito en www.isi.edu/in-notes/rfc1721.txt y www.isi.edu/in-notes/rfc1722.txtEs compatible con RIPv1.No es tan potente como OSPF ni IS-IS pero tiene la ventaja de que necesita una fácil implementación y menores factores de cargaSe puede usar en presencia de subnetting variable.Soporta multicast con preferencia al broadcast, lo que implica una reducción de carga a los host que no estan a la ecucha de mensajes RIPv2.

7676

Tema 2: IP

OSPF (Open-Short Path First)Primero se escoge la ruta más corta.Protocolo de encaminamiento interior.Link-state (estado del enlace entre dos routers) protocolSe dibuja un mapa con toda la topología de la redCada router envía información a TODOS los routers de la red cuando se produzca un cambio en la topología de la redA partir de esa información se recalcula la tabla de encaminamiento usando el algoritmo de DijkstraOPSF se basa en:

Enviar LSAs (Link State Advertisements), el estado de las interfaces y adyacencias del router, con los cambios que se producen en la red (LSAs van encapsulados en IP)Mantener una base de datos con la topología de la red (Link StateDatabase) en cada routerMantener una tabla de encaminamiento con los caminos y puertosUn algoritmo de encaminamiento (Dijkstra) que rellena la tabla a partir del contenido de la base de datos

7777

Tema 2: IP

OSPF (Open-Short Path First)Funcionamiento general:

Los routers intercambian su conocimiento de la red (métricas) con todos los routers de la red (usa un mecanismo llamado flooding) enviando LSAs

Flooding consiste en que un router que recibe un LSA, lo reenvía por todos sus puertos de salida excepto por el que le ha llegadoSi a un router le llega por segunda vez el mismo LSA, entonces no lo reenvía, sino que lo descartaEl LSA llegará (con el tiempo) a todos los routers de la red

Cada vez que hay un cambio en la red, este es advertido a toda la red por medio de un LSA (no se envían LSAsperiódicamente, sólo cuando hay cambios)A partir de los LSAs los routers construyen una base de datos con la topología de la red mediante un algoritmo (Dijkstra) A partir de la base de datos, se rellena la tabla de encaminamiento

7878

Tema 2: IP

OSPF (Open-Short Path First)Desventajas

Flooding implica una gran cantidad de tráfico en la red, degradando la eficiencia de la red temporalmente

Un router recibe demasiados LSAs en vez de datosUn router está demasiado tiempo calculando rutas (Dijkstra) en vez de transmitiendo datos, ....

Eficiencia depende de:El ancho de banda disponibleLa cantidad de rutas que se deben advertir

Los algoritmos consumen gran cantidad de memoria y CPU (routers potentes, y por tanto más caros)

VentajasBuena convergencia y buena reacción a cambios topológicosEscala muy bien (útil en redes grandes y complejas)Usa gran cantidad de métricas (retardos, cargas, ancho de banda, ...)

7979

Tema 2: IP

Sistemas Autónomos (AS)(Autonomous System)Aparecen cuando una empresa tiene un crecimiento muy alto y el tráfico entre sus elementos es también muy alto. La IANA es la responsable de la asignación de los números de ASInternet se organiza como una colección de AS, cada uno de ellosadministrado por una única entidadEl protocolo de encaminamiento que comunica routers dentro de un AS se le llama IGP (Interior Gateway Protocol)(e.g.; RIP, OSPF, IGRP, EIGRP)El protocolo de encaminamiento que comunica routers de distintos AS se le llama EGP (Exterior Gateway Protocol) (e.g.; EGP, BGP)

Autonomous System 65000 Autonomous System 65500

IGPs: RIP, IGRP, OSPF, EIGRP EGPs: BGP

8080

Tema 2: IP

BGP (Border Gateway Protocol)Es un EGP (Exterior Gateway Protocol) usado para comunicar AS

Inicialmente se usó bastante un protocolo llamado EGP (versión 3), pero fue rechazado por su gran ineficienciaHoy en día se usa BGP (versión 4) como EGP

BGP permite conectar Sistemas Autónomos (AS) que pertenezcan a distintas organizaciones

AS1=101 AS2=102

AS3=103

BGPIGP

IGP

IGP

• Puede haber 65535 (16 bits) AS

• Rango 1- 64511 son asignados por IANA para proveedores públicos

• Rango 64512 – 65535 son identificadores para AS privados

• Organizaciones con un único proveedor usa identifprivados

8181

Tema 2: IP

Modelo topológico BGP Stub AS: un AS que sólo tiene una única conexión con otro AS y por tantosólo lleva tráfico localMultihomed AS: un AS que tiene más de una conexión con otros AS y pero rechaza llevar tráfico de transitoTransit AS: un AS con multiples conexiones a otros AS y que lleva tráfico de transito

AS1

AS5AS4

AS3AS2

SharedNetwork

Stub AS

Multihomed AS

Transit AS Transit AS

Transit AS

8282

Tema 2: IP

BGP (Border Gateway Protocol)BGP es un protocolo de encaminamiento que se basa en políticas de red (organizaciones) y no en métricas

Un AS multihomed puede rechazar actuar como AS de tránsito a otro ASUn AS multihomed puede convertirse en un AS de tránsito para un conjunto restrictivo de ASUn AS de tránsito puede desfavorecer ciertos AS para llevar tráfico él mismo

Elección de rutas: elegir un camino basándose en la preferenciaAtravesar menor número de ASConsideraciones administrativasPresencia o ausencia de ciertos AS en el caminoOrigen de la rutaDinámica de los enlaces

8383

Tema 2: IP

BGP (Border Gateway Protocol)BGP usa TCP como protocolo de comunicaciones (puerto 179)BGP es un protocolo de vectores de caminos (“path vector protocol”) que anuncia ASUn mensaje BGP envía una secuencia de números AS que indican el camino completo hasta un destinoBGP envía UPDATES a sus vecinos cada vez que hay un cambio en lared indicando los cambios

AS1

AS5AS4

AS3AS2

SharedNetwork

Stub AS

Multihomed AS

TransitAS

Transit AS

Transit AS

Destino AS1: (AS2,AS1)

8484

Tema 2: IP

Protocolos de encaminamiento y los esquemas de direcciones IP

BGP v4

IS-ISBGP v3

OSPFEGP

EIGRPIGRP

RIP v2RIP v1

Classfull Routing protocols

Classless Routing protocols

Protocolos de encaminamiento que no envían la máscara:

• Si la dirección anunciada pertenece a la misma subred que la interfice por la que se recibe, aplican la mascara de la interficie por donde reciben el mensaje

• Sino pertenecen a la misma subred, aplican la de la clase de la dirección que reciben

8585

Tema 2: IP

Elegir el protocolo de encaminamiento en una red

Protocolos basados en vectores de distancias (RIP(v1-v2), IGRP)Fáciles de configurar pero trabajan mal en redes grandes y complejas debido a la cantidad de tiempo que tardan en convergerRIP cuando balancea cargas lo hace por igual independientemente de la velocidad del enlaceIGRP sí las tiene en cuenta hasta cierto grado

Protocolos de estado del enlace (OSPF, EIGRP, ...)Más difíciles de configurar pero convergen mejor en redes grandes y complejas

8686

Tema 2: IP

Elegir el protocolo de encaminamiento en una red

Elegir el protocolo más sencillo para tu redSi la red no tiene enlaces redundantes o paralelos y no tiene VLSM se puede usar RIPv1 y si usa VLSM entonces RIPv2Si la red tiene enlaces redundantes o paralelos y no requiere VLSM puede usar un protocolo estilo IGRP (CISCO)Si la red tiene enlaces redundantes o paralelos y requiere VLSM entonces usar OSPF, EIGRP, IS-IS , ...

8787

Tema 2: IP

DNS (Domain Name System):Sistema usado en Internet para traducir nombres de nodos de red en direciones IP.A cada máquina se le asigna una dirección IP (e.g. 147.83.35.24) y un nombre (aucanada.ac.upc.es)DNS es una base de datos distribuida que permite realizar un mapeo entre nombres de máquinas y direcciones IPDe esta manera cuando queramos acceder a una máquina (Web, Ftp, Telnet, ...) en vez de recordar la IP, basta recordar el nombreDNS usa un “resolver” para acceder a los nombres desde las IPEn UNIX las aplicaciones usan Llamadas al sistema para acceder a este resolver, estas LLS son

*gethostbyname(char *name): dado un nombre devuelve su IP*gethostbyaddr(char *addr, int len, int type): dado una IP devuelve el nombre del hostEstas LLS consultan inicialmente el fichero /etc/host donde está guardado la correspondencia nombre-IP. Sino está resuelto, entonces se accede al servidor de DNS y se resuelve el nombreLa IP del servidor de nombres (DNS) se guarda en un fichero resolver: /etc/resolv.conf

8888

Tema 2: IP

Asignación de DominiosUn dominio es un mecanismo de identificación utilizado en InternetEl ICANN es la responsable que los nombres de las máquinas sean únicosConsta de varias palabras separadas por un punto: xxx.xxx.comLas primeras palabras xxx.xxx indican un conjunto de nombres queidentifican a la empresa u organización (e.g.; ac.upc designa el departament d’Arquitectura de Computadors de la UPC)Las empresas deben registrar su nombre para que pase a ser su marca en Internet (problemas con marcas ya registradas)En España se encarga del registro RedIris (es-nic)El resto del dominio está organizado en:

Dominios genérico: .com, .org, .net, .edu, ...Dominios geográficos: .es, .fr, .uk, .it, ....

Propuesta (de CORE) para ampliar el número de dominios genericos..firm, .shop, .info, .web, .nom, .arts, .rec

8989

Tema 2: IP

DNS basa su funcionamiento en un espacio jerárquico de nombres

unamed root

org com edu uk es

upm upc

ac lsi

aucanada

e.g.; aucanada.ac.upc.es

7 dominios genéricos

dominios geográficos

arpa

in-addr

arpa es un dominio que permite la resolución

inversa de direcciones

(address-to-names)

147

83

65

139090

Tema 2: IP

DNS se basa en servidores de nombres distribuidos geográficamentePuerto 53 (tanto UDP como TCP)

Cada administrador de sistemas de una zona es responsable de mantener

Un servidor de DNS primario (disk file), tiene la información deuna zona, y la autoridad sobre ella.Uno o varios servidores de DNS secundarios (backups) independientes del primario pero que obtienen la información a partir del primario (normalmente se actualizan cada 3 horas) Cuando se conecta un nuevo usuario hay que añadirlo al primario (IP y nombre), mientras que los secundarios lo obtendrán (“zone transfer”) del primario (hacen “querys” del primario cada 3 horas)Si la información no está en el DNS de la zona, este servidor debe acceder a uno de los servidores “root” para obtenerla (DNSservers deben conocer la IP de los roots)Los servidores DNS (no los resolver de la aplicación) disponen de caches para resolver nombres que han mapeado recientemente

9191

Tema 2: IP

Ejemplo de una “query recursiva”

root DNS server

DNS .upc.es

DNS con dom .es

DNS ftp. upc.es

zone DNS server

1

4

35

2

6

1. Host pregunta por ftp.upc.es a su DNS

2. Zone DNS pregunta al DNS server con dominio .es

3. DNS con dominio .es pregunta a DNS con dominio .upc.es

4. DNS .upc.es le devuelve la IP del servidor ftp.upc.es al dominio .es

5, 6 la IP del servidor ftp.upc.es vuelve al cliente

*Cada DNS guarda en su cache las IP un tiempo indicado por TTL9292

Tema 2: IP

Ejemplo de una “query iterativa”

.upc.es

.es

root

ftp. upc.es

zone DNS server

1 7

6

4

5

3

2

8

1. Host pregunta por ftp.upc.es a su DNS

2. Zone DNS pregunta a su root DNS

3. Root DNS le devuelve la IP del DNS con dominio .es al zone DNS

4. Zone DNS pregunta al DNS .es

5. DNS .es devuelve la IP de DNS .upc.es

6. Zone DNS pregunta a DNS .upc.es

7. DNS .upc.es devuelve IP de serverftp.upc.es

8. Zone DNS devuelve la IP del server al host*Zone DNS guarda en su cache las IP un tiempo indicado por TTL

9393

Tema 2: IP

Mensajes DNS

9494

Tema 2: IP

Mensajes DNSIdentification: permite mapear respuestas con peticiones (activado por el cliente y retornado por el servidor)16-bit flags: dividido en multiples campos (e.g. 1-bit QR: Queries=0, Responses=1; 1-bit RD for iterative/recursive queries, etc)Los siguientes 4 campos indican cuantas peticiones (e.g. QR=0, number of questions (QD) =1, resto=0) y respuestas (e.g. QR=1, number of answers (AN), number of autority (NS), number ofaditional (AR) ≥ 1, resto ≥ 0) hay en el resto del mensajeQuestion contiene las consulytas al servidor de nombres.Answer, Autority, Additional Information contienen un número variable de recursos como TTL, etc...

9595

Tema 2: IP

Comando “nslookup”Permite averiguar en UNIX un nombre o una dirección IP

nslookup [ -option ...] [host-to-find | -[server]]

• nslookup

Default Server: gaudi.ac.upc.es

Address: 147.83.32.3

> aucanada.ac.upc.es

Server: gaudi.ac.upc.es

Address: 147.83.32.3

Name: aucanada.ac.upc.es

Address: 147.83.35.24

> finger joseb

[aucanada.ac.upc.es]

Welcome to Linux version 2.2.18 at aucanada.ac.upc.es!

11:35am up 6 days, 14:34, 3 users,

Login: joseb Name: Jose M. Barcelo

Directory: /home/joseb Shell: /usr/bin/zsh

9696

Tema 2: IP

Resolución inversasConozco la IP y quiero el nombreCada servidor gestiona una rama que comienza con la etiqueta “in-addr” de la que cuelgan las direcciones en sentido númericoinverso

Es decir, las direcciones cuelgan del árbol en orden descendiente: e.g.; la IP 147.83.65.13 estaría como 13.65.83.147.in-addr.arpa

En UNIX se usa el comando gethostbyaddr()Con tcpdump podeis identificar mensajes DNS como

aucanada% ping teix.ac.upc.esaucanada% tcpdump18:29:52.211280 aucanada.ac.upc.es.nimreg > gaudi.ac.upc.es.domain: 20983+ A?

teix.ac.upc.es. (32)18:29:52.214912 gaudi.ac.upc.es.domain > aucanada.ac.upc.es.nimreg: 20983* 1/2/1 A

teix.ac.upc.es (106) (DF)

9797

Tema 2: IP

Gestión en la asignación de DominiosHistoria:

Hasta hace poco tiempo lo gestionaba IANA (Internet AssignedNumbers Authority: http://www.iana.org) - organización del gobierno USAAhora es privado (aunque con una organización sin ánimo de lucro) que recogio las actividades del IANA. Esta organización se llama ICANN (Internet Corporation for Assigned Names andNumbers: http://www.icann.org) y que se encarga de dar tanto dominios genéricos como IP

Los dominios genéricos son registrados por compañías a las que ICANN da el derecho a que actúen como tales bajo ciertas restricciones (Accredited Registrars)

España: (se puede pedir a cualquier entidad) Nominalia (de la Fundació Catalana per a la Recerca: http://www.nominalia.com) o,Interdomain (Compañía internacional de registro de nombres y dominios tanto genéricos como territoriales http://www.interdomain.com)

9898

Tema 2: IP

Gestión en la asignación de DominiosEl dominio territorial de España (.es) los asigna el Ministerio de Fomento: servicio ES-NIC (http://www.nic.es) gestionado por INECO (empresa pública)Se restringe el acceso al dominio territorial (.es) a

“las organizaciones legalmente establecidas en España entendiendo como tal toda persona jurídica de derecho público o privado debidamente constituida de acuerdo con el marco normativo que las regule”Tarifas: (http://www.nic.es/tarifas/ )

Alta o registro de un nuevo dominio: 12.000 ptas (72.12 €)Mantenimiento anual de un dominio: 8.000 ptas (48.08 €)

9999

Tema 2: IP

Gestión en la asignación de DominiosLas empresas pueden:

Hacer uso de los servicios de un ISP sin tener un dominio propio: e.g; www.isp.es/empresa.html y [email protected]“Adquirir” un dominio propio y albergar sus servidores en la empresa: e.g; www.empresa.es y [email protected]“Adquirir” un dominio propio y albergar los servidores en un ISP

100100

Firewalls:Se emplean para proteger una red interna de Internet.No protegen contra los ataques internos.Son puntos entre dos redes por donde todo el tráfico debe pasar (check point).El tráfico puede ser controlado, puede ser autentificado en el dispositivo y todo el tráfico puede ser registrado.Definición del problema :

¿Qué?¿Cómo?¿Quién?¿Cuánto?

Tema 4: Conceptos Avanzados de IP

101101

Tema 4: Conceptos Avanzados de IP

Internet

DMZMZ

FW

RouterRouter

WWWDNSFTP

SMTP

102102

• Metodos de ataques:• Social engineering: Se obtiene información de la buena voluntad de la

gente, información de las papeleras.• Scanning: Se buscan puertos y direcciones IP mediante funciones

como “Ping”. Mediante War dialing se buscan modems que tengan accesos a los host o redes.

• Misadministration: Explota la relación de confianza del administrador.• Non-autenticated/centralized services: Hay que vigilar los servicios

no autenticados como SMTP, DNS, RIP, TFTP / SNMP, registros remotos.

• Malicious data: CD de autoarranque, mala programación, programas maliciosos.

• Spoofing: suplantar usuarios.• Exploit software bugs: utilizar agujeros causados por otros

programas, se cambian los privilegios.• Denial-of-service: estos ataques provocan la inutilización de las redes

o equipos que han sido atacados, discos, redes, tablas etc.

Tema 4: Conceptos Avanzados de IP

103103

• Categorías de firewalls

Packet filtering and screening routers: utiliza un filtro basado en una combinación de la dirección IP del host de la red. También puede añadir el número del puerto y otros datos. Application gateways or proxy servers: efectua de intermediario aceptando los servicios de la red que solicita el usuario, actuan a nivel de aplicación y pueden examinar el contenido de la misma.Stateful inspection (dinamic packet filtering): toma el estado de las sesiones y las cambia las reglas siempre según una política preestablecida.Hybrid firewalls: combinación de las tres categorias.

Tema 4: Conceptos Avanzados de IP

104104

• Firewalls comerciales:

CheckPoint – Firewall-1Cisco – PIX FirewallAxent – RaptorNetwork Associates – GauntletSecure Computing – Sidewinder

Tema 4: Conceptos Avanzados de IP

105105

ACL:Para identificar los bits que han de ser verificados en una dirección IP o rango de direcciones IP es necesario utilizar mascaras y en este caso se llama wildcard.La wildcard funciona al contrario de la máscara IP, un “0” en la mascara indica que hay que comprobar el bit correspondiente a ladirección y si hay un “1” el bit puede ser ignorado.

Tema 4: Conceptos Avanzados de IP

E.g.; 206.153.80.0 /24

• Máscara: 255.255.255.0

• Wildcard Mask: 0.0.0.255

106106

Tema 4: Conceptos Avanzados de IP

Ejemplo: supongamos que deseamos comprobar las subredes IP

206.153.80.0/24 a 206.153.90.0/24

206.153.80. 0Red . Host

01010000 = 8001010001 = 81Coin-Indif…………01011010 = 90

Máscara de wildcard que coinciden con los bits : 0000 comprobar

Máscara de wildcard que no coinciden con los bits : 1111 ignorar, en este caso hasta 1010

Dirección y mascara wildcard 206.153.80.0 0.0.10.255

Máscara wildcard 00001010 = .10

107107

ACL

Tema 4: Conceptos Avanzados de IP

La sintaxis del comando access-list de una lista de acceso extendida:Router(config)#access-list número_lista_de_acceso {permit I deny} protocolo dirección_de_origen máscara_origen [puerto_del_operador] dirección_de_destino máscara_destino [puerto_del_operador][established] [log]Donde:•número_lista_de_acceso: identifica la lista entre 100 y 199•permit I deny: indica si se permitirá o bloqueará una lista especifica•Protocolo: puede ser IP, TCP, UDP, ICMP, GRE, O IGRP•origen y destino: identifican las direcciones IP origen y destino•máscara_origen y máscara_destino: mascara wildcard los “0” las posiciones que deben coincidir y los “1” no importan•puerto_del_operador: puede ser lt(menor que), gt(mayor que), eq(igualque), neq(distinto de) y un número de puerto del protocolo•Established: solo para TCP de entrada, permite que el tráfico TCP pase si el paquete utiliza una conexión preestablecida (ACK)•Log: envia un mensaje de registro a la consola 108108

ACL

Tema 4: Conceptos Avanzados de IP

Ejemplo : bloqueo el tráfico FTP desde una subred específica

Router(config)#access-list 101 deny tcp 206.150.81.0 0.0.0.255 206.150.80.0 0.0.0.255 eq 21Router(config)#access-list 101 deny tcp 206.150.81.0 0.0.0.255 206.150.80.0 0.0.0.255 eq 20Router(config)#access-list 101 permit any any(Any = 0.0.0.0 255.255.255.255)

206.150.80.0 206.150.81.0

E0 E1

206.150.0.0

S0

XTráfico FTP

206.150.81.5