Sei sulla pagina 1di 9

Redes de Datos Laboratorio 7 Instructivo

Laboratorio 7 Address Resolution Protocol (ARP)


Instrucciones generales
Para poder realizar exitosamente la prctica, deber cumplir las siguientes etapas:

Previo al laboratorio
Estudiar la informacin contenida en este instructivo. Se recomienda consultar las referencias sugeridas u otras de su preferencia. Al comienzo del laboratorio se realizar un cuestionario sobre los temas tratados en este instructivo. Se recomienda realizar los ejercicios sugeridos al final del instructivo. mprimir ! leer el procedimiento de la prctica incluido en el nforme. Se recomienda imprimir una pgina por faz. "raer un dis#uete$memoria %S& para guardar resultados.

Durante el laboratorio
Seguir el procedimiento indicado en el nforme ! completarlo en forma grupal. El nforme deber ser entregado al finalizar la prctica. '( SE A)EP"A E'"*E+A ,E '-(*.ES E' ("*( .(.E'"(.

Despus del laboratorio


Agradecemos #ue nos env/e sus aportes al foro espec/fico creado en la pgina 0eb del curso.

Objetivos
Al finalizar la prctica el estudiante ser capaz de: ,escribir el proceso de descubrimiento de las direcciones de capa .A) mediante A*P. 1isualizar e interpretar el intercambio de mensajes A*P en una red local.

Preparacin
Address Resolution Protocol (ARP)
)uando una m#uina A #uiere enviar datos a la m#uina &, la capa de red de la m#uina A constru!e un pa#uete con direccin P de origen la de A ! con direccin P de destino la de &, e inserta la carga 2til a enviar a &. ,espu3s, pasa este pa#uete a la capa de enlace de A para su transferencia 4acia &. Sin embargo, las capas de enlace no entienden las direcciones P5 necesitan una direccin propia del medio de transmisin en uso. En una red Et4ernet u 678.9, por ejemplo, cada tarjeta Et4ernet tiene una direccin de :6 bits asignada en fbrica, exclusiva de esa tarjeta ;2nica<, de modo #ue la colocacin de dos tarjetas Et4ernet cuales#uiera en la misma red local no producir/a nunca una colisin de direcciones, !a #ue no 4abr nunca dos direcciones iguales ;al menos si los fabricantes se ci=en a los conjuntos de direcciones #ue se

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 1 de 9

les 4an asignado<. @as tarjetas Et4ernet se comunican entre s/ referenciando estas direcciones de :6 bits. Se 4ace patente entonces la necesidad de manejar alg2n tipo de mapeo entre direcciones P ! direcciones de capa de enlace, en lo posible con poco o ning2n trabajo administrativo. El protocolo A*P es capaz de manejar ese mapeo sin intervencin administrativa. A*P, Address *esolution Protocol o protocolo de resolucin de direcciones ;definido en la *-) 68B<, resuelve el problema de direccionamiento de capa de enlace en medios de difusin: establece un mapeo entre direcciones de capa de red ;direcciones P en ")P$ P< ! direcciones de capa de enlace, cu!a naturaleza depende del medio f/sico #ue soporta la subred. En las redes de difusin la subcapa .A), .edium Access )ontrol o subcapa de control de acceso al medio, es la encargada de arbitrar el uso del medio compartido, !a sea disponiendo turnos de transmisin o manejando colisiones5 es usual denominar las direcciones usadas en medios de difusin como direcciones de capa .A) o simplemente direcciones .A). @as direcciones de :6 bits de las redes Et4ernet son las direcciones .A) de estas redes. El protocolo A*P funciona por s/ solo, no re#uiere administracin. )uando la m#uina A precisa enviar un pa#uete a la m#uina &, el protocolo A*P es capaz de averiguar la direccin .A) de & conociendo slo el n2mero P de &5 el pa#uete es enviado sin ms trmite. Para entender mejor esto, veamos el caso en #ue se usaran tablas completadas manualmente por el administrador de la red: nicialmente se deber/an cargar en todas las m#uinas de la red una tabla guardando la correspondencia de direcciones ; P, .A)<. @legado el momento de cambiar la correspondencia entre n2mero P ! direccin .A) asociadas a una m#uina ;por ejemplo: cada vez #ue se cambie tanto una tarjeta de red como una direccin P<, ser/a necesario actualizar esta informacin en todas las m#uinas de la red, trasformndose en una tarea pesada ! propensa a error ;sobre todo si la red es grande<.

or!ato del pa"uete ARP

El mensaje A*P va como carga 2til de la trama. El pa#uete A*P va como carga 2til en la trama de capa .A). )ontiene, entre otros campos, las direcciones P ! .A) de origen ! destino5 no 4a! otra forma de 4acer llegar esta informacin al otro extremo, por#ue las direcciones de capa .A) contenidas en los encabezados de la capa de enlace no llegan al proceso #ue se encarga de procesar A*P !a #ue cada capa suprime su encabezado al pasar el contenido a la capa superior.

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 2 de 9

-ormato de mensaje A*P ,etalle de los campos del mensaje A*P: Hardware Type: tipo de 4ard0are ? cdigo del tipo de interfaz de 4ard0are para el cual el interrogador busca respuesta, es > para Et4ernet. Protocol Type: tipo de protocolo ? cdigo de tipo de direccin proporcionada por el transmisor, es 7x7677 para la direccin P. Operation: operacin ? indica el tipo de operacin: > para solicitud A*P, 8 para respuesta A*P, 9 para solicitud *A*P, : para respuesta *A*P. HLEN: longitud de la direccin de 4ard0are ? permite usar A*P en distintos tipos de redes, B en Et4ernet. PLEN: longitud de la direccin de protocolo ;de capa 9< ? permite usar A*P en distintos tipos de redes, : en caso de P. Sender HA: direccin 4ard0are del emisor. Sender IP: direccin P del emisor. Target HA: direccin 4ard0are del destinatario. "arget P: direccin P del destinatario.

unciona!iento de ARP
Analizaremos los casos de transferencia de pa#uetes P dentro de una misma @A' ! entre dos @A's distintas. @a figura muestra dos redes @A' pertenecientes a departamentos distintos de una organizacin. Ambas redes estn unidas a un bacCbone corporativo de fibra ptica interno a la organizacin, posiblemente uniendo varios edificios separados cada uno con su @A', o los diferentes pisos de un edificio, cada piso con su @A'.

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 3 de 9

,os redes @A' ! el bacCbone de una organizacin. #o!unicacin entre !$"uinas de una !is!a LA%& @a m#uina > con direccin P> desea enviar un pa#uete a la m#uina 9 con direccin P9 >: >. Primeramente, la m#uina > consulta su tabla de ruteo, detectando #ue la m#uina 9 ;con direccin P9< se encuentra directamente conectada ; P> A', .ASD E P9 A', .ASD<. 8. %tilizando el protocolo A*P ;protocolo distinto de P<, la m#uina > arma una trama con direccin .A) origen la su!a propia ;.A) origen E E><, .A) destino la direccin de difusin de 678.9 ;Et4ernet< ;.A) destino E --:--:--:--:--:--< ! como contenido un pa#uete de consulta A*P cu!o contenido podemos interpretar como la pregunta FGHui3n tiene la direccin P P9IF. Adems inclu!e la direccin .A) e P origen en el contenido del pa#uete A*P ;E>, P><. 9. El pa#uete A*P enviado por la m#uina > es recibido por todas las m#uinas de la red @A', incluida la m#uina 9, #ue reconoce su propia direccin P en la pregunta. @a m#uina 9 responde enviando una trama con direccin .A) origen E9, direccin .A) destino E>, ! un pa#uete A*P de respuestaa la pregunta, F P9 tiene direccin .A) E9F. ,ado #ue la correspondencia ; P>, E>< de la m#uina > ven/a en el pa#uete A*P recibido por la m#uina 9, esta dispone de dic4a informacin, almacenndola. :. @a m#uina > recibe la respuesta, dirigida espec/ficamente 4acia ella, 4acia la direccin .A) E>. Por el contenido del pa#uete A*P dispone a4ora de la direccin .A) de la m#uina 9 ;E9<, ! puede intercambiar pa#uetes P con ella directamente. ,ispone tambi3n de la direccin P de la m#uina 9, presente en el pa#uete recibido5 tiene conocimiento entonces de la correspondencia ; P9, E9<. @a m#uina > 4a obtenido la direccin Et4ernet de la m#uina 9 ;E9< sin intervencin administrativa alguna5 el protocolo A*P 4a logrado averiguarla interrogando en la propia red. A partir de a4/ los pa#uetes P intercambiados utilizan como direccin P de origen P> e P9 como direccin de destino, a nivel de la trama Et4ernet la direccin .A) de origen es E> ! la .A) de destino E9. Algunas optimizaciones mejoran la eficiencia del proceso: ,ado #ue el pa#uete A*P de interrogacin difundido en la red contiene el mapeo ; P>, E>< de la m#uina > ;emisora de la pregunta<5 la m#uina 9 no necesita usar A*P para averiguar la direccin de subcapa .A) de la m#uina > cuando #uiera responderle.

>

@as direcciones P las supondremos conocidas ;pueden ser el resultado de una consulta al ,'S<.

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 4 de 9

#ac' de ARP( las parejas de direcciones ;direccin P, direccin .A)< se guardan en memoria por un cierto tiempo5 ulteriores consultas se realizan primero sobre este cac43. Existe un tiempo de validez de las entradas en esta tabla, previendo un cambio de tarjeta Et4ernet ;implica un cambio de direccin, no 4a! dos tarjetas Et4ernet con la misma direccin<, ! para evitar mantener indefinidamente en la tabla entradas inactivas. "ranscurrido ese tiempo de validez la entrada se borra del cac43 ! la consulta a la red, por difusin, debe repetirse. @as entradas en la tabla se actualizan en dos instancias: cuando se recibe una difusin o cuando se recibe una pregunta por la direccin P propia: o )uando la m#uina A de direccin Pa recibe una difusin ;broadcast< de A*P, si la m#uina A tiene una entrada ; Px, Ex< en su tabla de A*P, al recibir una difusin A*P originada por Px, actualiza su tabla de A*P con la nueva ;o eventualmente la misma< direccin Ex. Si la m#uina A no ten/a una entrada ; Px, Ex< ! la difusin de A*P no buscaba la P de A ;FGHui3n tiene paIF<, entonces se ignora ! no se introduce la entrada en la tabla. )uando la m#uina A recibe una pregunta por su propia direccin Pa desde una m#uina con direccin P!, guarda en su tabla la correspondencia ; P!, E!< extra/da de la trama donde viene la pregunta, asumiendo la alta probabilidad de pronta comunicacin con la m#uina #ue realiz la pregunta.

ARP gratuito( cuando una m#uina se prende, env/a un pa#uete A*P de interrogacin de su propia P, por difusin. 'adie deber/a contestar, puesto #ue no deber/a 4aber otra m#uina con la misma direccin P5 sin embargo, si fuese contestado, la m#uina anunciar/a al usuario el conflicto ! no 4abilitar/a la interfaz de red 4asta #ue el administrador resuelva la colisin asegurando la inexistencia del mismo n2mero P en dos e#uipos de la red. Adems de esta comprobacin, como el pa#uete de interrogacin se envi por difusin, todas las m#uinas de la @A' lo recibieron5 el pa#uete contiene el n2mero P ! la direccin .A) del emisor, por lo #ue todas las m#uinas de la red #ue tuvieran una entrada para esa P en su tabla de A*P la actualizan con la nueva direccin .A). @os pa#uetes A*P viajan dentro de la red local como carga 2til de una trama Et4ernet, el campo F"ipoF en capa .A) tiene el valor 7x767B8, distinto del correspondiente a P ;7x7677<. #o!unicacin entre !$"uinas de di)erentes LA%s& @a m#uina > en la red local A desea comunicarse con la m#uina 6 en la red local &. El es#uema corriente funciona as/: >. @a m#uina > ve la direccin P destino de la m#uina 6, P65 por la b2s#ueda en su tabla de ruteo reconoce #ue ese destino no pertenece a su red local, sino #ue el prximo salto es ;en el ejemplo< la direccin P:, correspondiente al enrutador de conexin al bacCbone corporativo de la red local A. @a direccin P: del enrutador est en la propia red local de la m#uina >, por lo #ue la direccin Et4ernet E: del enrutador se obtiene por comunicacin A*P en la propia red como se describi anteriormente. @os pa#uetes P intercambiados utilizan como direccin P de origen P> e P6 como direccin de destino, a nivel de la trama Et4ernet la direccin .A) de origen es E> ! la .A) de destino E: perteneciente a la interfaz del enrutador en el medio de difusin compartido con la m#uina >. 8. El enrutador de la red local A recibe el pa#uete, verifica #ue la direccin P de destino pertenece a otra red, ! lo reenv/a seg2n la informacin de sus tablas de ruteo, en este caso 4acia el bacCbone, por su interfaz ->, con destino al enrutador de la red local &, interfaz -8.

F7xF indica notacin 4exadecimal

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 5 de 9

9. El enrutador de red local & recibe el pa#uete en la interfaz -8, consulta su tabla de ruteo ! lo reenv/a 4acia la m#uina 6. El enrutador de la red local &, ; PA, EJ< est en la red de la m#uina 6 ; P6, EB<5 la resolucin de direcciones Et4ernet por A*P es la descrita anteriormente. El pa#uete P dentro del ,epartamento & utiliza como direccin P de origen P> e P6 como direccin de destino, a nivel de la trama Et4ernet la direccin .A) de origen es EJ ;perteneciente a la interfaz del enrutador en el medio de difusin compartido con la m#uina 6< ! la .A) de destino E6. :. @a m#uina 6 responde a la m#uina > dirigiendo su pa#uete P al enrutador de la red local &, siguiendo un camino inverso al descrito. @as direcciones en el bacCbone de fibra ptica se obtienen igualmente por A*P dentro del bacCbone. @os pa#uetes P entre redes locales A ! & viajan dentro del bacCbone como carga 2til de una trama -,, de acuerdo al ejemplo. "ener presente #ue las direcciones P de origen ! destino nunca se modifican durante el tra!ecto de la m#uina > a la m#uina 6, pero las direcciones .A) #ue intervienen depende de los medios de difusin locales a cada tramo.

Pro*+ ARP
Se 4ace necesario a veces implementar una misma red P ;un conjunto de n2meros P determinados por una cierta red ! mscara< sobre varias @A's f/sicamente diferentes. %n ejemplo es una m#uina * con dos tarjetas de red Et4ernet5 en una de ellas se encuentra una m#uina A, en la otra una m#uina &. A #uiere comunicarse con &, ambas estn en la misma red P pero en distintas @A's. Es posible configurar la m#uina * para responder directamente consultas A*P relativas a cual#uiera de las dos @A's5 esta t3cnica se denomina prox! A*P: >. @a m#uina A pide por A*P la direccin .A) de la m#uina &, de la cual conoce la P. 8. @a m#uina * responde con su propia direccin .A). 9. A arma su trama con la direccin .A) de *. :. )uando la m#uina * recibe esta trama la enruta 4acia la red @A' donde est la m#uina &.

,abla de ARP
@as m#uinas almacenan los mapeos ;direccin P, direccin .A)< de las m#uinas #ue conocen. Esto mejora muc4o la eficiencia: no es necesario ejecutar el protocolo en cada comunicacin. @os mapeos se capturan reteniendo la informacin seg2n se explic el funcionamiento de A*P. @as entradas de la tabla se borran transcurrido su tiempo de validez ;t/picamente 87 minutos<. "ambi3n pueden ingresarse entradas espec/ficas, o borrarse, por comandos emitidos por el supervisor. El comando %nix arp permite conocer el contenido de la tabla A*P de la m#uina local: # arp -a c3.ls.iie.edu.uy (172.16.0.11) at 00:03:B3:00:5B:87 [ether] on eth1 d3.ls.iie.edu.uy (172.16.0.12) at 00:E0:06:E :20:2E [ether] on eth1 ! (172.16.0.253) at 52:5":" :1#:16:$2 [ether] on eth1 %&'380.(in%.edu.uy (16".73.38.1) at 00:)0:#5:#1:36:2 [ether] on eth0

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 6 de 9

@a salida de este comando muestra los datos almacenados en una entrada A*P: direccin P, la direccin de 4ard0are ;direccin de capa .A): en este caso una direccin Et4ernet de :6 bits<, tipo de 4ard0are ;Et4ernet en este caso< ! el nombre de la interfaz ;et47 o et4> en este caso<. Es posible borrar entradas de la tabla de arp utilizando el comando arp con la opcin d ! luego la P del e#uipo. Adicionalmente el comando arp trata de averiguar los nombres asociados a las direcciones P incluidas en la tabla usando el ,'S. Este comportamiento se puede evitar con la opcin Kn.

RARP
En algunas circunstancias, en particular cuando se trata de m#uinas sin disco, es necesario obtener un n2mero P correspondiente a una direccin .A) determinada. Este es el caso inverso de A*P5 el protocolo #ue lo resuelve se denomina *A*P, *everse Address *esolution Protocol ;definido en la *-) L79<. %na m#uina sin disco carga su sistema operativo desde una m#uina remota #ue act2a como servidor. Para comunicarse con esta m#uina remota se necesita su direccin P, adems de la propia. Al carece de disco, ninguna de estas direcciones se encuentran disponibles5 lo 2nico disponible es la direccin .A) de la propia interfaz de red. A trav3s del protocolo *A*P, por difusin, la m#uina puede obtener su direccin P, mediante una pregunta tal como F"engo la direccin .A) E>, Gsabe alguien mi direccin PIF El servidor *A*P recibe este pa#uete, como todos los de la red, ! responde a la direccin .A) E> de la m#uina emisora. @a principal limitacin de *A*P es #ue obliga a tener un servidor *A*P en cada red local, por#ue al igual #ue A*P dirige sus mensajes a la direccin de difusin de la red, ! estos mensajes no son reenviados por los enrutadores. Adems, solo informa la direccin P de la m#uina #ue se est iniciando pero no brinda datos del servidor de arran#ue ni la mscara a utilizar, entre otras cosas.

-OO,P
&(("P ;descrito en las *-)s LJ>, >7:6 ! >76:< es un protocolo similar a *A*P en su funcin, pero usa mensajes %,P, #ue s/ son reenviados por los enrutadores. Adems de permitir a una m#uina sin disco obtener su propia P, &(("P provee informacin adicional como la direccin P del servidor donde est su imagen de memoria con sistema operativo, la direccin P del enrutador por defecto ! la mscara de subred a usar.

D.#P
&(("P presenta el inconveniente de re#uerir administracin para cada nueva m#uina ingresada a la red: el mapeo ;direccin .A), direccin P< de la nueva m#uina debe ingresarse a mano. Para superar esta limitacin fue desarrollada una extensin de &(("P llamada ,M)P, ,!namic Most )onfiguration Protocol o protocolo dinmico de configuracin de m#uinas ;descrito en las *-)s 8>9> ! 8>98<. ,M)P permite tanto la asignacin manual como automtica de n2meros P. Este protocolo 4a desplazado a *A*P ! &(("P en la ma!or/a de las instalaciones. Se basa en un servidor ,M)P capaz de asignar n2meros P ;! otros parmetros< a m#uinas #ue lo soliciten. El servidor ,M)P puede estar en una @A' diferente a la m#uina #ue solicita el P5 esto lo 4ace inalcanzable por difusin, 4aciendo necesario disponer de un agente rela! ,M)P en cada @A'. El proceso de descubrimiento del n2mero P de una m#uina re#uiere lo siguientes pasos: >. @a m#uina A arranca ! desea obtener su n2mero P. Para ello, emite por difusin un pa#uete llamado ,M)P , S)(1E*.

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 7 de 9

8. Este pa#uete es recibido por todas las m#uinas de la red @A' de A, en particular por el agente rela! ,M)P. 9. El agente rela! ,M)P reconoce el pa#uete ,M)P , S)(1E* ! lo env/a al servidor ,M)P en exclusiva ;unicast<, posiblemente en una red remota. El 2nico dato necesario para este env/o es el n2mero P del servidor ,M)P. :. El servidor ,M)P responde con un mensaje (--E* conteniendo una direccin P ! otros parmetros. El servidor obtiene un n2mero P de un conjunto ;pool< de direcciones P disponibles, llevando el control de cules estn asignadas. J. @a m#uina A recibe el pa#uete (--E* a trav3s del agente rela! ,M)P. *esponde al servidor ,M)P con un pa#uete *EH%ES" en el cual acepta la oferta. B. El servidor ,M)P responde con un pa#uete A)D ! asigna la direccin. El pa#uete A)D inclu!e varios parmetros configurables, entre otros la duracin de la asignacin. A. @a m#uina A dispone de su n2mero P5 lo verifica mediante A*P: si alguien responde ;el P recibido !a est siendo usado< la m#uina A se #ueja al servidor emitiendo un pa#uete ,E)@ 'E, recomenzando las negociaciones. Si el P no est siendo usado ;nadie responde< la m#uina A puede iniciar comunicaciones normalmente. 6. )uando se acerca el fin del tiempo de validez del P la m#uina env/a al servidor un nuevo pa#uete *EH%ES" para renovar su asignacin ! continuar usando el n2mero P asignado. L. )uando la m#uina A desea terminar su uso del P env/a al servidor un pa#uete *E@EASE. El servidor libera ese P para asignarlo a otra solicitud. El tiempo de validez de la direccin P resuelve el problema de m#uinas #ue no devuelven correctamente sus n2meros P: la m#uina se desconecta pero el servidor no se entera, ! no puede reasignar el n2mero. @a t3cnica de asignar n2meros P con un cierto tiempo de validez se denomina FleasingF.

/jercicios
Estudiar los comandos de %' N: arp, ping, traceroute.

Procedi!iento
En el informe.

#onclusiones
En el informe.

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 8 de 9

Para conocer !$s


Tanenbaum, Andrew. "Computer networks", :a. edicin, PrenticeKMall, 87795 9a. edicin,
PrenticeKMall, >LLB. Ma! traduccin al espa=ol de ambas ediciones. Comer, Douglas. "Redes Globales de informacin con Internet TC!"I!" , 9a. edicin, PrenticeKMall, >LLB. )ap/tulos: J, A*P5 B, *A*P5 8>, &(("P ! ,M)P. #uper $an !ages. Pginas FmanF de unix en l/nea ;4ttp:$$linuxcommand.org$supermanOpages.p4p <. %ire#&ark '(t&ereal). Analizador de protocolos de red. Pgina principal: 4ttp:$$000.0ires4arC.org$ Curso *+sico de ,ni-. %n curso introductorio al sistema operativo %nix, orientado a @inux. nt3rprete de comandos, sistema de arc4ivos, editor vi, expresiones regulares, filtros, programacin del s4ell. 4ttp:$$iie.fing.edu.u!$Pvagonbar$unixbas$index.4tm . T&e Internet .ab $anual. Es una coleccin de instructivos para realizar prcticas de laboratorio en redes de datos. Si bien el e#uipo re#uerido es inalcanzable, el contenido de los instructivos es altamente aprovec4able. Pgina principal: 4ttp:$$000.cs.virginia.edu$Pitlab$booC$ Enlaces: 4ttp:$$000.cs.virginia.edu$Pitlab$booC$linCs$ Para la presente prctica son 2tiles los siguientes instructivos:

Introduccin: 4ttp:$$000.cs.virginia.edu$Pitlab$booC$pdf$)4O7Ov:.pdf Lab 1: Introduccin al laboratorio Internet: 4ttp:$$000.cs.virginia.edu$Pitlab$booC$pdf$lab>ne0Ov8:.pdf

Redes de Datos - C rso !"#! P$gina del c rso: %ttp:&&iie'(ing'ed ' y&c rsos&co rse&)iew'p%p*na+e,redes Instit to de Ingenier-a El.ctrica - /ac ltad de Ingenier-a - 0DELAR - .ontevideo, %rugua!.

*edes de ,atos 87>8 ? nstructivo @aboratorio A

Pgina 9 de 9

Potrebbero piacerti anche