Intro admon-redes-v1.1

download Intro admon-redes-v1.1

If you can't read please download the document

Transcript of Intro admon-redes-v1.1

  • 1. Introduccin a la Administracin de una Red Local basada o o en Internet Charles L. Hedrick Traducido por Juanjo Mar [email protected] n Maquetacin SGML por Paco Brufal [email protected] y Fernando [email protected] v 1.1, 27 de Julio o de 1999 Introduccin para aquellos que pretenden administrar una red basada en los protocolos de red de Internet o (TCP/IP). Indice General1 El problema. 21.1 Terminolog . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .a. 32 Asignacin de direcciones y enrutamiento. o33 Eligiendo una estructura de direcciones. 43.1 Debemos subdividir nuestro espacio en direcciones? . . . . . . . . . . . . . . . . . . . . . . . 53.2 Subredes y mltiples numeros de red . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .u 63.3 Cmo asignar las subredes o los numeros de red. . . . . . . . . . . . . . . . . . . . . . . . . . o73.4 Trabajar con mltiples subredes virtualesen una red. . . . . . . . . . . . . . . . . . . . . . .u 73.4.1 Otra forma de trabajar con mltiples subredes. . . . . . . . . . . . . . . . . . . . . . .u 83.4.2 Mltiples subredes: Consecuencias en el Broadcasting. . . . . . . . . . . . . . . . . . . u93.5 Eligiendo una clase de direccin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .o 93.6 Lineas IP y micro gateways: direcciones asignadas dinmicamente. . . . . . . . . . . . . . . . a 103.6.1 L neas IP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 103.6.2 Micro gateways. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .124 Servicios a nivel de red, nombres.135 Congurando el enrutamiento de cada ordenador 165.1 Como enrutar los datagramas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .175.2 Rutas jas . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 195.3 Reconducir el enrutamiento . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 205.4 Otros mtodos para que los hosts encuentren rutas . . . . . . . . . . . . . . . . . . . . . . . . e 225.4.1 Espiar el enrutamiento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .225.4.2 Proxy ARP. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 235.4.3 Establecer nuevas rutas tras fallos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26

2. 1. El problema.26 Puentes y gateways28 6.1 Diseos alternativos . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . n 29 6.1.1 Una red de l neas punto a punto. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .29 6.1.2 Tecnolog de los circu atos de conmutacin. . . . . . . . . . . . . . . . . . . . . . . . .o30 6.1.3 Redes de un slo nivel. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .o31 6.1.4 Diseos mixtos. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . n 32 6.2 Introduccin a las distintas tecnolog de conmutacin oas o. . . . . . . . . . . . . . . . . . . . . 32 6.2.1 Repetidores. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .33 6.2.2 Bridges y gateways. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33 6.2.3 Ms sobre bridges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .a35 6.2.4 Ms sobre gateways. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .a36 6.3 Comparando las tecnolog de conmutacin . . . . . . . . . . . . . . . . . . . . . . . . . . . .as o37 6.3.1 Aislamiento.. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 6.3.2 Prestaciones. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 6.3.3 Enrutamiento. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 6.3.4 Administracin de Redes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 41 6.3.5 Una evaluacin nal. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . o 437 Congurando gateways43 7.1 Congurando el enrutamiento de los gateways . . . . . . . . . . . . . . . . . . . . . . . . . . . 458 Anexo: Copyright471 El problema. Este trabajo trata fundamentalmente sobre los aspectos lgicosde la arquitectura de red. Lo que puede o o no puede hacer una red est generalmente determinado por los protocolos que dicha red soporta y la calidad a de sus implementaciones, ms que por la tecnolog concreta de red usada, como Ethernet, Token Ring, etc.a a Adems, en la prctica, la eleccin de la tecnolog de red est basada en decisiones puramente pragmticas: a aoaa a qu tipo de red soporta el tipo de ordenadores que queremos conectar, las distancias entre los equipos, lase caracter sticas del cableado, etc. Por regla general, se suele usar Ethernet para sistemas de media escala, Ethernet o una red basada en el cableado de par trenzado para pequeas redes, o redes de alta velocidad n (t picamente Token Ring) para la red principal de un campus y para redes de superordenadores, que ejecutan aplicaciones de altas prestaciones. Por tanto, vamos a asumir que hemos llegado a conectar fsicamentenas redes individuales, del tipo Et- u hernet o Token Ring. Ahora nos enfrentamos a los siguientes problemas interrelacionados: congurar el software necesario, conectar las distintas Redes Ethernet, Token Ring, etc, para formar una unica red de forma coherente, conectar las redes al mundo exterior, o sea, Internet. 3. 2. Asignacin de direcciones y enrutamiento.o 3Las anteriores decisiones requieren un pequeo anlisis. De hecho, la mayor de las redes necesitan unan aa a rquitectura, que determina la manera en que se asignan las direcciones, cmo se hace el enrutado y otras o elecciones, sobre cmo los ordenadores interaccionan con la red. Estas decisiones deben hacerse para la redo en su conjunto, preferiblemente cuando se esta procediendo a su instalacin inicial.o 1.1Terminologa.Vamos a usar el trmino IP para referirnos a las redes diseadas para trabajar con TCP/IP. IP es el protocolo en a nivel de red de la familia de protocolos TCP/IP, usados en Internet. Es una prctica comn usar el trminoau e IP cuando nos referimos a direcciones, enrutamiento y otros elementos a nivel de red. La distincin muchas o veces no es lo sucientemente clara. As que, en la prctica, los trminos Internet TCP/IP e IP puedenae parecer incluso intercambiables. Los trminos paquete y datagrama tambin suelen parecer intercambiables. Conceptualmente, un pa- ee quete es la unidad f sica de ms bajo nivel, mientras que datagrama se reere a la unidad de datos a nivela IP. Sin embargo, en la mayor de las redes no se pueden distinguir porque coinciden, as que la gente suele a usar los dos trminos indistintamente. e Otro trmino conflictivo es el de pasarela (gateway) y enrutador (router). Pasarela es el trminoee original usado en Internet. Sin embargo, la comunidad OSI empez a usar esta palabra con un signicado o distinto, as que la gente empez a usar enrutador para evitar dicha ambigedad. Nosotros, no obstante, o u seguiremos usando el trmino gateway. e2 Asignacin de direcciones y enrutamiento. o Muchas de las decisiones que se necesitan para la conguracin de una red IP depende del enrutamiento. En o general, un datagrama IP pasa a travs de numerosas redes mientras se desplaza entre el origen y el destino.e Veamos un ejemplo t pico: Red 1Red 2Red 3 128.6.4 128.6.21128.121 ============================== ========== ====================|||| ||| ___|______ _____|____ __|____|__ __|____|____ ___|________ 128.6.4.2128.6.4.3128.6.4.1 128.6.21.1 128.121.50.2128.6.21.2 128.121.50.1 _____________________ __________ ____________ ____________ ordenador Aordenador B gateway Rgateway S ordenador C Este grco muestra tres ordenadores, 2 gateways y tres redes. Las redes pueden ser Ethernet, Token Ringa o de cualquier otro tipo. La red 2 podr ser una la nea punto a punto que conecta los gateways R y S. El ordenador A puede enviar datagramas al B directamente, usando la red 1. Sin embargo, no puede llegar al ordenador C directamente, puesto que no estn en la misma red. Hay varias maneras de conectar redes. a En el grco asumimos el uso de gateways (ms adelante veremos otras alternativas). En este caso, los a a datagramas que van desde A a C deben ser enviados a travs del gateway R, red 2 y gateway S. Todose los ordenadores que usan TCP/IP necesitan que se les suministre la informacin y algoritmos apropiados o para que puedan saber cundo un datagrama debe ser enviado a travs de un gateway, y elegir el gateway a e apropiado. El enrutado est a ntimamente relacionado con la asignacin de direcciones. Podemos apreciar que la direccin o o de cada ordenador comienza con el nmero de la red a la que pertenece. Por tanto, 128.6.4.2 y 128.6.4.3 seu 4. 3. Eligiendo una estructura de direcciones. 4encuentran en la red 128.6.4. Luego los gateways, cuyo trabajo es conectar dos redes, tienen una direccin o de ambas redes. Por ejemplo, el gateway R conecta la red 128.6.4 y 128.6.21. Su conexin a la red 128.6.4o tiene la direccin 128.6.4.1. Su conexin a la red 128.6.21 tiene la direccin 128.6.21.2. ooo Debido a esta relacin entre direcciones y redes, las decisiones de enrutado deben basarse estrictamente en o el nmero de red de destino. La informacin de enrutamiento del ordenador A tendr el siguiente aspecto: u oaredgateway mtrica e---------------------------128.6.4- 0128.6.21 128.6.4.1 1128.121128.6.4.1 2En esta tabla, el ordenador A puede enviar datagramas a los ordenadores de la red 128.6.4 directamente, y para los datagramas a los ordenadores de las redes 128.6.21 y 128.121 es necesario usar el gateway R. La mtricaser usada por algn tipo de algoritmo de enrutamiento, como medida de la lejan del destinatario.ea ua En nuestro caso, la mtrica simplemente indica cuantos diagramas tiene que atravesar para llegar a su destinoe (conocida como cuenta de saltos). Cuando el ordenador A est listo para enviar un datagrama se examina la direccin del destinatario. Com-a o paramos el inicio de dicha direccin de red con las direcciones de la tabla de enrutamiento. Las distintaso entradas de la tabla indican si el datagrama debe ser enviado directamente, o a un gateway. Un gateway consiste simplemente en un ordenador conectado a dos redes diferentes, y est habilitado paraa enviar datagramas entre ellos. En muchos casos es ms eciente usar un equipo especialmente diseadoan para desempear el papel de gateway. Sin embargo, es perfectamente posible usar un ordenador, siempre yn cuando tenga ms de un interfaz de red y un software capaz de enviar datagramas.a Un gateway tiene varias direcciones, una para cada red a la que est conectado. Aqu encontramos una e diferencia entre IP y otros protocolos de red: cada interface de un ordenador tiene una direccin. Con otroso protocolos, cada ordenador tiene una unica direccin, aplicable a todos sus interfaces. Un gateway entre o las redes 128.6.4 y 128.6.21 tendr una direccin que comience por 128.6.4 (por ejemplo, 128.6.4.1). Estaao direccin se reere a su conexin a la red 128.6.4. Tambin tendr una direccin que comience con 128.6.21o oea o (por ejemplo, 128.6.21.2). Esta se reere a su conexin a la red 128.6.21. o El trmino redgeneralmente se suele identicar a dispositivos del tipo Ethernet, en la cual varias mquinas ea estn conectadas. Sin embargo, tambin se aplica a lae neas punto a punto. En el grco anterior, las redes a 1 y 3 podr estar en ciudades distintas; la red 2 podr ser una l ana nea serie, un enlace satlite, u otro e tipo de conexin punto a punto. Una lo nea punto a punto es tratada como una red que consta slo de dos o ordenadores. Como cualquier otra red, una lnea punto a punto tiene una direccin de red (en este caso,o 128.6.21). Los sistemas conectados por la lnea (gateways R and S) tienen direcciones en dicha red (en este caso, 128.6.21.1 y 128.6.21.2). Es posible disear software que no necesite distintos nmeros de red para cada l n unea punto a punto. En este caso, el interface entre el gateway y la lnea punto a punto no tiene una direccin. Esta solucinoo es apropiada cuando la red es tan grande que peligra el hecho de que nos quedemos sin direcciones. Sin embargo, tales interfaces annimaspueden dicultar bastante el manejo de la red. Puesto que no tienen o direccin, el software de red no tiene manera de referirse a dicho interface, y, por tanto, no es posibleo obtener informacin sobre el ujo y los errores de la interface. o3Eligiendo una estructura de direcciones. Antes de comenzar a montar una estructura de IP, necesitamos uno o ms nmeros de red ociales. Unaa u direccin IP tiene un aspecto como el siguiente: 128.6.4.3. Esta direccin slo podr ser usada por unoo o a 5. 3. Eligiendo una estructura de direcciones.5ordenador de la Universidad de Marx. La primera parte de dicha direccin, 128.6, es un nmero de red o u asignado a dicha Universidad por una autoridad central. Por tanto, antes de asignar direcciones a nuestros ordenadores, deberemos obtener una direccin ocial de red. Sin embargo, alguna gente congura sus redeso usando, o bien una direccin aleatoria o usando una direccin genrica suministrada por defecto en el equipo. oo e Esta forma de trabajar podr funcionar en pequeas redes, pero seguramente no lo har en una mayor. ana Adems, es posible que quisiramos conectar nuestra red con la red de otra organizacin. Incluso si nuestra aeo organizacin tuviese un gran control de seguridad, es posible que tuviramos un ordenador dedicado a la oe investigacin que estuviese conectado a una universidad u otra organizacin investigadora. Esta universidado o o entidad estar seguramente conectada a una red de nivel nacional. Tan pronto como uno de nuestros a datagramas salga de nuestra red local va a provocar un estado de confusin en la organizacin con la queoo nos comuniquemos, porque la direccin que aparece en nuestros datagramas est probablemente asignada o a ocialmente a alguien distinto. La solucin es simple: obtener una direccin propia desde el principio. Adems, no cuesta nada.oo a La decisin ms importante que tenemos que hacer para congurar una red es, sin lugar a dudas, cmoo ao asignar las direcciones IP a los ordenadores. Esta eleccin debe de hacerse desde el punto de vista de cmooo nuestra red puede crecer. Si no se hiciese as es casi seguro que tendremos que cambiar las direcciones en , un futuro. Y cuando tengamos varios cientos de ordenadores, cambiar tantas direcciones es casi imposible. Las direcciones son muy importantes porque los datagramas IP son enrutados en base a dicha direccin.o Por ejemplo, las direcciones de la Universidad Rutgers tienen una estructura de dos niveles. Una direccino tpica puede ser 128.6.4.3. La direccin 128.6 es la asignada a dicha Universidad. Visto desde el exterior, o 128.6 es una simple red. Cualquier datagrama enviado desde el exterior, que comience por 128.6, se dirigir a al gateway ms cercano de la Universidad Rutgers. Sin embargo, dentro de Rutgers dividimos el espacioa de direcciones en subredes. Usamos los siguientes 8 bits de direccin para indicar a qu subred pertenece o e el ordenador. As 128.6.4.3 pertenece a la subred 128.6.4. Generalmente, las subredes se corresponden con, sicaso reales, por ejemplo una red Ethernet; sin embargo, veremos algunas excepciones ms adelante. redes f a Los sistemas dentro de Rutgers, a diferencia de los de fuera, contienen informacin sobre la estructura deo subredes de Rutgers. As una vez que un datagrama para 128.6.4.3 llega a Rutgers, la red de Rutgers lo , enrutar hacia la Ethernet, Token Ring o cualquier otro tipo de red del departamento que tiene asignado la a subred 128.6.4. Cuando queremos congurar una red, hay varias decisiones de direccionamiento que debemos afrontar: Dividimos nuestro espacio de direcciones? Si lo hacemos, usamos subredes o direcciones de clase C? Cmo debe ser de grande el espacio de direcciones que necesitamos?o 3.1Debemos subdividir nuestro espacio en direcciones?No es absolutamente necesario usar subredes. Hay mecanismos que permiten actuar a un campus o compa na completa como una simple y gran Ethernet, as que no es necesario un enrutamiento interno. Si usamos estas tecnolog entonces no necesitaremos dividir nuestro espacio de direcciones. En este caso, la unica decisin as, o que tenemos que tomar es la de qu clase de direccin debemos de usar. Sin embargo, recomendamos usare o un enfoque de subredes o cualquier otro mtodo de subdividir nuestro espacio de direccin en varias redes: eo En la seccin 6.2. discutiremos que los gateways internos son recomendables para todas las redes, ms o aall de su simplicidad. a Incluso si no necesitamos gateways en estos momentos, podemos descubrir que tarde o tempranonecesitaremos usarlos. De esta manera, probablemente tiene sentido asignar direcciones como si cada 6. 3. Eligiendo una estructura de direcciones. 6Ethernet o Token Ring fuera una subred separada. Esto permitir hacer conversiones a subredes reales, a si esto es necesario. Por razones de mantenimiento, es conveniente tener direcciones cuya estructura corresponda con laestructura de la red. Por ejemplo, si vemos un datagrama extraviado procedente del sistema 128.6.4.3,es de bastante ayuda saber que todas las direcciones que comienzan por 128.6.4 se en cuentran en undeterminado edicio. 3.2Subredes y m ltiples numeros de reduSupongamos que estamos convencidos de que es una buena idea imponer alguna estructura en nuestras direcciones. La siguiente cuestin es cul es la ms adecuada. Hay dos enfoques bsicos: subredes y o a aa mltiples nmeros de red. u u Los estndares de Internet especican el formato de las direcciones. Para las direcciones que comienzan entrea 128 y 191 (las ms usadas actualmente), los dos primeros octetos forman el nmero de red; por ejemplo, ena u 140.3.50.1, 140.3 es el nmero de red. Los nmeros de red estn asignados a una organizacin particular.uuao Qu hacemos con los dos siguientes octetos que le siguen?. Podr e amos optar por hacer al siguiente octeto un nmero de subred, u otro esquema completamente distinto. Los gateways dentro de nuestra organizacinu o deben congurarse para conocer qu esquema de divisin de redes estamos usando. Sin embargo, fuera de la eo organizacin nadie sabr si 140.3.50 es una subred y 140.3.51 es otra; simplemente, fuera se sabe que 140.3 esoa una organizacin. Desafortunadamente, esta habilidad de aadir una estructura adicional a las direcciones,o n mediante el uso de subredes, no estaba presente en las especicaciones originales y, por tanto, un software antiguo ser incapaz de trabajar con subredes. Si una parte importante del software que hemos de usar a tiene este problema, entonces no podremos dividir nuestra red en subredes. Algunas organizaciones usan un enfoque distinto. Es posible que una organizacin use varios nmeros deo u red. En lugar de dividir un simple nmero de red, por ejemplo 140.3, en varias subredes, como de 140.3.1 a u 140.3.10, podr amos usar 10 nmeros distintos de red. De esta manera har uamos una asignacin desde 140.3 o hasta 140.12. Todo el software IP sabr que estas direcciones se corresponden con redes distintas.a A pesar de que usando nmeros de red distintos todo funciona correctamente dentro de la organizacin, hayuo dos serias desventajas. La primera, y menos importante, es que se malgasta un gran espacio de direcciones. Hay solamente sobre unas 16.000 posibles direcciones de clase B. No queremos malgastar diez de ellas en nuestra organizacin, a no ser que sea bastante grande. Esta objeccin es menos seria, porque podro oamos pedir una direccin C para este propsito y hay sobre 2 millones de direcciones C.o o El problema ms serio para usar varias direcciones de red, en lugar de subredes, es que sobrecarga las tablasa de enrutamiento en el resto de Internet. Como comentamos anteriormente, cuando dividimos nuestro nmerou de red en subredes, esta divisin slo es conocida dentro de la organizacin, pero no fuera. Los sistemas o oo externos a la organizacin slo necesitan una entrada en sus tablas para ser capaces de llegar. Por tanto, o o otras Universidades tienen entradas en sus tablas de enrutamiento para 128.6, similar al nmero de la red u de Rutgers. Si usa un rango de redes en lugar de subredes, dicha divisin ser visible en todo Internet. Sio a usamos los nmeros 128.6 a 128.16, en lugar de 128.6, las otras universidades necesitar tener una entradau an para cada uno de estos nmeros de red en sus tablas de enrutamiento. La mayor de los expertos de TCP/IP ua recomiendan el uso de subredes, en lugar de mltiples redes. La unica razn para considerar mltiples redes u o u es el uso de un software que no puede manejar subredes. Esto era un problema hace algunos aos, peron actualmente es poco frecuente. Una ultima indicacin sobre subredes: Las subredes deben ser adyacentes. Esto signica que no podemoso conectar la subred 128.6.4 con la subred 128.6.5 mediante otra red, como la 128.121. Por ejemplo, Rutgers tiene campus en Simon City y Garfunken City. Es perfectamente posible conectar redes en ciudades distintas que sean subred de 128.6. Sin embargo, en este caso, las l neas entre Simon City y Garfunken City deben ser parte de 128.6. Supongamos que decidimos usar una red regional como la RegionaLnet para comunicarnos 7. 3. Eligiendo una estructura de direcciones. 7entre dos campus, en lugar de usar su propia l nea. Puesto que RegionaLnet tiene de nmero de redu 128.121, los gateways y lneas de serie que usar empezar por 128.121. Esto viola las reglas. Noanan est permitido tener gateways o la neas que son parte de 128.121 conectando dos partes de 128.6. As si , queremos usar RegionaLnet entre nuestros dos campus, tendramos que obtener diferentes nmeros de redu para los dos campus. (Esta regla es un resultado de las limitaciones de la tecnolog de enrutamiento.a Eventualmente podr desarrollarse un software para un gateway para manejar conguraciones cuyas redes a no son contiguas). 3.3Cmo asignar las subredes o los numeros de red. oAhora, una vez decidido si vamos a usar subredes o mltiples nmeros de red, tenemos que asignarlos. uu Normalmente es bastante fcil. Cada red f asica, ya sea Ethernet o Token Ring, ..., se le asigna un nmero u distinto de subred. Sin embargo, existen otras opciones. En algunos casos, puede que tenga sentido asignar varios nmeros de subred a una unica red f u sica. En Rutgers hay una unica Ethernet que ocupa tres edicios, usando repetidores. Est claro que a medida quea vayamos aadiendo ordenadores a esta Ethernet se ir dividiendo en varias Ethernets separadas. Para evitarn a tener que cambiar de direcciones cuando esto suceda, hemos asignado tres nmeros de red distintas a esta u Ethernet, una por edicio. (Esto podr ser util, incluso, si no hubisemos dividido la Ethernet con el n de a e ayudar a localizarlos). Pero, antes de hacer esto, debemos estar muy seguros de que el software de todos los ordenadores puede manejar una red que tiene tres nmeros de red. Esta prctica se ver ms detalladamenteuaa a en la seccin 3.4.o Tambin hemos de elegir una mscara de subred, que ser usada por el software del sistema para separar e aa la parte de subred del resto de la direccin. Hasta ahora hemos asumido que los dos primeros octetos son el o nmero de red y el siguiente es el nmero de subred. Para las direcciones de clase B, el estndar especica uua que los dos primeros octetos pertenecen al nmero de red. Y, por otro lado, tenemos libertad para establecer u el lmite del nmero de subred y el resto de la direccin. Es bastante usual utilizar un octeto de nmero u o u de subred, pero no es la unica posibilidad. Veamos de nuevo esta direccin de clase B, 128.6.4.3. Es fciloa deducir que, si el tercer octeto es usado como nmero de subred, entonces habr 256 posibles subredes y, u a en cada subred, habr 256 posibles direcciones. (En realidad es ms acertado decir que disponemos de 254, aa ya que no es buena idea usar 0 255 como nmeros de subred o direccin). Supongamos que sabemos queou o nunca vamos a tener ms de 128 ordenadores por subred, pero es probable que necesitemos ms de 256aa subredes (por ejemplo, un campus con una gran cantidad de pequeos edicios). En ese caso, podrnamos establecer 9 bits como nmero de red, dejando 7 bits para el direccionamiento de cada subred. Esta decisinuo queda plasmada en una mscara de bits, usando unos para los bits usados por los nmeros de red y deau subred y ceros para los bits usados para el direccionamiento individual. La mscara de red ms comn esa a u 255.255.255.0. Si elegimos 9 bits para el nmero de subredes y 7 para las direcciones, la mscara de subred ua ser 255.255.255.128. a Generalmente, es posible especicar la mscara de subred como parte de la conguracin del softwareao IP. Los protocolos IP tambin permiten a los ordenadores que env un mensaje preguntando cul es sue ena mscara de subred. Si nuestra red soporta el env de estos mensajes, y hay, al menos, un ordenador o ao gateway de la red que conoce dicha mscara de subred, posiblemente ser innecesario especicarlo en cadaa a uno de los restantes ordenadores. Pero esta posibilidad puede traer muchos problemas. En caso de que nuestra implementacin TCP/IP diera una mscara de subred errnea, se causar una mala conguracin o aoao en toda la red. Por lo tanto, es ms seguro poner cada mscara de subred expl a acitamente en cada sistema. 3.4Trabajar con m ltiples subredes virtualesen una red.uLa mayor del software est desarrollado bajo el supuesto de que cada red local tiene el mismo nmero dea a u subred. Cuando existe un ujo hacia una mquina con un distinto nmero de subred, el software espera au 8. 3. Eligiendo una estructura de direcciones. 8encontrar un gateway que pueda dirigirlo hacia esa subred. Veamos detalladamente qu ocurre en estee caso. Supongamos que tenemos las subredes 128.6.19 y 128.6.20 en la misma Ethernet. Consideremos las cosas que ocurren desde el punto de vista de un ordenador con direcci`n 128.6.19.3. Dicho ordenador no o tendr problemas para comunicarse con las mquinas de direccin 128.6.19.x. Estas mquinas estn en laaa o aa misma subred, y nuestro ordenador simplemente deber enviar los datagramas al 128.6.20.2. Puesto que esta a direccin indica que est en una subred distinta, la mayor del software esperar encontrar un gateway queoa aa haga de puente entre ambas subredes. Por supuesto, no existe un gateway entre las subredes128.6.19 y 128.6.20, puesto que estn en la misma Ethernet. De aqu se deduce que tenemos que encontrar una maneraa de indicarle al software que el 128.6.20 se encuentra realmente en la misma Ethernet. La mayor de las implementaciones TCP/IP pueden manejar ms de una subred en la misma red. Poraa ejemplo, el Berkeley Unix nos permite hacerlo usando una ligera modicacin del comando usado para o denir gateways. Si, por ejemplo, queremos que para pasar de la subred 128.6.19 a la subred 128.6.4 se use el gateway con direccin 128.6.19.1, podemos usar el comando oroute add 128.6.4.0 128.6.19.1 1 Esto indica que para llegar a la subred 128.6.4 el ujo debe ser enviado a travs del gateway 128.6.19.1.e El 1se reere a la mtrica de enrutamiento. Si usamos la mtrica 0, estamos diciendo que la subred e e de destino est en la misma red y, por consiguiente, no se necesita ningn gateway. En nuestro ejemplo, a u deberemos usar en el sistema 128.6.19.3route add 128.6.20.0 128.6.19.1 0 La direccin usada en el lugar de 128.6.19.1 es irrelevante. La mtrica 0nos informa de que no va a usarseo e ningn gateway, luego no se usar dicha direccin. Sin embargo, deber ampliarse una direcin legal de laua oao red local. 3.4.1 Otra forma de trabajar con m ltiples subredes. uHay otro modo de manejar varias subredes sobre una red fsica. Este mtodo supone la desconguracineo de nuestros antriones o hosts y, por ello, es potencialmente peligrosa, si no sabemos exactamente lo que estamos haciendo. Sin embargo, puede resultar ms cmodo cuando trabajamos con una gran cantidad dea o subredes en una red fsica. Un ejemplo de este tipo ser una instalacin que use bridges, y usa subredes a o simplemente por facilidades de administracin. El truco est en congurar el software de nuestros hosts oa como si no usasen subredes. As nuestros hosts no harn ninguna distincin entre las distintas subredes y, ,a o por tanto, no habr problemas para trabajar con todas ellas. Ahora, el unico problema es cmo comunicarnos ao con subredes que no estn en esta red de mltiples subredes. Pero, si nuestros gateways manejan proxye u ARP, ellos resolvern este problema por nosotros. Este enfoque est especialmente indicado cuando la a a misma red contiene mltiples subredes y, particularmente, si se van a aadir algunas ms en un futuro.u na Desgraciadamente, tiene dos problemas:1. Si tenemos hosts con mltiples interfaces, deberemos ser muy cuidadosos. En primer lugar, slou odeber haber mquinas con un interface en la red con mltiples subredes. Por ejemplo, supongamosaauque disponemos de una red que consta de varias Ethernets conectadas mediante bridges; no podemostener una mquina con interfaces en dos de estas Ethernets, pero podemos tener un sistema con un ainterface en esta red de subredes mltiples y otra en otra subred apartada de sta. En segundo lugar,uecualquier mquina con mltiples interfaces deber conocer la verdadera mscara de subred, y necesitarauaaaestar informada expl citamente de cules de las subredes estn en la red de mltiples subredes. Estasa aurestricciones son consecuencia de que un sistema con mltiples interfaces tiene que conocer qu interface ueha de usar en cada caso. 9. 3. Eligiendo una estructura de direcciones. 92. Tambin deberemos prestar atencin a la facilidad ICMP de la mscara de subredes. Esta facilidad eo apermite a los sistemas emitir una consulta para conocer cul es la mscara de subred. Si la mayor deaaalos hosts piensan que la red no est dispuesta en subredes, pero los gateways y los hosts con variasainterfaces piensan lo contrario, tenemos aqu un foco potencial de confusin. Si un gateway o hosts ocon varios interfaces env una rplica a una ICMP de mscara de red, dando la verdadera mscara a e a ade subred, alguno de los restantes hosts puede interceptarlo. La situacin contraria tambin ser oeaposible. Esto signica que tendremos que: deshabilitar las rplicas a las ICMP de mscara de subred en todos aquellos sistemas que conocen ea la mscara real de subred (esto es especialmente fcil si solamente los gateways lo conocen); a a asegurar que nuestros hosts ignoran las rplicas ICMP.eA medida que establecemos una mscara de subred expl a citamente, se supone que los hosts ignoran los ICMP de mscara de subred, as que deberemos ser capaces de establecer diferentes mscaras en diferentes hostsa a sin causar ningn problema, siempre y cuando podamos establecer la mscara explua citamente en todos ellos. Sin embargo, existen implementaciones IP que cambiarn su mscara de subred cuando vean una rplica dea a e ICMP de mscara de subred. a 3.4.2 M ltiples subredes: Consecuencias en el Broadcasting.uCuando tenemos ms de una subred en una misma red f asica, hay que tener cuidado respecto a las direcciones de broadcasting. De acuerdo con los ultimos estndares, hay dos formas distintas para que un host de a la subred 128.6.20 pueda enviar un broadcast en la red local. Una es usar la direccin 128.6.20.255. Lao otra es usar la direccin 255.255.255.255. La direccin 128.6.20.255 dice, explo ocitamente, todos los hosts de la subred 128.6.20; la 255.255.255.255 expresa todos los hosts de mi red local. Normalmente, ambas tienen el mismo efecto. Pero no lo tienen cuando hay varias subredes en una red f sica. Si la red 128.6.19 est en la misma red, tambin recibir el mensaje enviado a 255.255.255.255. Sin embargo, los hosts con a ea nmeros 128.6.19.x no escucharn los mensajes enviados a 128.6.20.255. El resultado es que ah tenemos dos u a tipos distintos de direcciones de broadcast con dos signicados distintos. Esto conlleva que debemos tener cuidado congurando el software de red, para asegurarnos de que nuestros broadcasting llegan a donde queremos que lo hagan. 3.5Eligiendo una clase de direccin.oCuando solicitamos un nmero ocial de red se nos preguntar qu clase de nmero de red necesitamos. Lasu a eu posibles respuestas son A, B y C. La decisin elegida limitar nuestro espacio de direcciones a usar. Las o a direcciones de clase A ocupan un octeto; las de clase B, dos octetos, y la clase C, tres octetos. Luego, hay ms direcciones de clase C que direcciones de clase A, pero las de clase C no pueden tener muchos hosts. a La idea que podemos sacar de lo anterior es que deber haber pocas grandes redes, un nmero moderadoa u de redes de tamao mediano y bastantes pequeas redes. En la siguiente tabla observamos dicha distincin:nnoClase Rango 1er. octeto redresto direcciones posibles A1 - 126pq.r.s 16777214 B128 - 191p.qr.s 65534 C192 - 223p.q.rs 254 Por ejemplo, la red 10 es de la clase A y por tanto tiene direcciones entre 10.0.0.1 y 10.255.255.254. Esto signca 2543, que son sobre unos 16 millones de posibles direcciones (realmente, la red 10 tiene algunas direcciones con octetos a cero, as que habr algunas direcciones posibles ms). La red 192.12.88, una a a 10. 3. Eligiendo una estructura de direcciones.10direccin de clase C, tendr sus hosts entre el 192.12.88.1 y el 192.12.88.254 y, por lo tanto, habr 254o aa posibles hosts. En general, deberemos elegir la clase menor que nos proporcione sucientes direcciones capaces de direccionar nuestra red, con sus posibles futuras ampliaciones. Aquellas organizaciones que usan ordenadores en varios edicios, probablemente necesitarn una direccin de clase B, suponiendo que vamos a usar subredes. (Ya o si vamos a tratar con distintos nmeros de red, deberu amos solicitar varias direcciones de clase C). Las direcciones de clase A, normalmente, slo se usan en grandes redes pblicas y algunas pocas redes de grandesou corporaciones. En la asignacin de Direcciones IP, la autoridad mxima es la IANA (Internet Assigned Number Authority). o a A escala continental, la IANA delega grandes bloques de direcciones IP a los denominados registros regionales, de los que, de momento, existen tres en el mundo: El RIPE NCC (RIPE Network Coordination Center) es el registro delegado de Internet a nivel europeoy se encarga, entre otras tareas, de la asignacin de bloques de direcciones IP a los proveedores deoservicios Internet en Europa y su rea de inuencia.a El AP-NIC lleva a cabo la tarea de asignacin de bloques de direcciones IP a los proveedores de la oregin del Asia-Pacoco. El InterNIC se encarga de la asignacin de bloques de direcciones IP a los proveedores de Internet en oAmrica del Norte y, de momento, en el resto del mundo.eLas organizaciones y usuarios nales han de obtener las direcciones IP necesarias para conectarse a Internet a travs de su proveedor de acceso a Internet, quien a su vez las habr obtenido bien de su proveedor de e a trnsito, bien del registro regional correspondiente. a 3.6 Lineas IP y micro gateways: direcciones asignadas dinmicamente.aEn la mayor de los casos, cada uno de los ordenadores tendr su propia direccin IP permanente. Noaa o obstante, hay algunas situaciones donde tiene ms sentido asignar direcciones dinmicamente. La mayor aa a neas IP constan de gateways destinados principalmente a microcomputadoras. de los casos que manejan l 3.6.1 Lneas IP.Es posible usar IP sobre l neas telefnicas. Uno de los protocolos para hacer esto es el SLIP (Serial lineo IP). SLIP se usa frecuentemente en, al menos, dos circunstancias distintas: Como una alternativa barata a lneas punto a punto permanentes, para aquellos casos en los que noest sucientemente justicado una l anea dedicada. Como una manera de conectar individualmente un PC a una red, cuando se encuentran localizados enedicios que no tienen Ethernets o cualquier otro tipo LAN.Vamos a usar el trmino servidor SLIPpara referirnos a un sistema de ordenador(es) que incluye unae serie de modems, con los que otros sistemas pueden conectarse usando SLIP. Se trata de un sistema que proporciona un gateway de nuestra red para usuarios de PC, o para otras redes que se conectan usando SLIP. Si tenemos varios PCs conectados mediante SLIP, muchas veces no es prctico usar una direccin IP propia ao para cada PC. Una de las razones puede ser que no haya sucientes direcciones. Para que el enrutamiento funcione correctamente, estos sistemas conectados deben tener sus direcciones en la misma subred que el 11. 3. Eligiendo una estructura de direcciones.11servidor SLIP. Por lo general, hay solamente del orden de 256 direcciones disponibles en cada subred. Si el nmero de PCs que pueden conectarse es mayor que esa cifra, no podremos asignarles su propia direccin.u o Si, adems, tenemos servidores SLIP en ms de una subred, la asignacin permanente de direcciones se hacea ao an ms complicada. Si un usuario es capaz de llamar a dos servidores, su PC necesitar dos direcciones,u a a una para cada subred. Para solucionar estos problemas, la mayor de las implementaciones SLIP asignan las direccionesa dinmicamente. Cuando un PC se conecta con el servidor SLIP, el servidor busca una direccin IP queao no se est usando y se la asigna al PC. La forma ms simple de manejar esto es dando a cada servidor SLIPea un rango de direcciones IP que controle y pueda asignar. Cuando usamos este esquema, el software SLIP debe comunicar al PC, de alguna manera, qu direccineo debe usar. Si cada PC tiene una direccin permanente, tendroamos el problema contrario: cuando un PC se conecta con un servidor debe de haber algn mtodo para que el PC comunique al servidor su direccin. u eo Este problema debe ser estudiado cuidadosamente, porque en otro caso alguien podr usar la direccin dea o otro y tener acceso a sus cheros. Desafortunadamente, no hay un estndar para manejar estos problemas de direccionamiento con SLIP. Hay a varias implementaciones SLIP que lo hacen, pero todav no hay un estndar. Hasta que no se elabore a a ste, deberemos tener cuidado con el software SLIP. Tenemos que asegurarnos de que dicha asignacin de e o direccin se lleva a cabo de la manera que queremos y que nuestro servidor SLIP y los PCs tienen claro lao forma en que se asignan las direcciones. Recomendamos dar direcciones permanentes a los PCs en aquellos casos en que los dems ordenadores tienen a que ser capaces de conocer con qu PC estn hablando. Este podr ser el caso de un PC para recibir correoe aa privado, o cualquier otro servicio con transacciones delicadas. Y recomienda el direccionamiento dinmico a cuando tenemos un gran nmero de PCs y las aplicaciones que utilizan para acceder a la red tienen sus u propios mecanismos de seguridad. Cuando usemos SLIP para conectar dos redes, hay que considerar tres elecciones para el manejo de direcciones (teniendo en cuenta que no todo el software SLIP puede controlar los tres apartados): Tratar a las conexiones SLIP como si se tratasen de lneas punto a punto que no estn disponiblesapermanentemente. Si podemos conectar con ms de un ordenador, cada par de ordenadores que seacomunican tienen un nmero de red distinto del que ellos usar cuando se comunican con el otro.uan Usar un software de enrutamiento que permita interfaces annimos. En este caso, no ser necesariaso anlas direcciones. Asignar direcciones dinmicamente cuando la conexin est abierta, tan pronto como el PC haya ao acontactado.Si hacemos slo una o dos conexiones a otro sistema, es bastante razonable usar un nmero de red para cada o u conexin. Este mtodo es fcil de usar y limita los errores estad oe a sticos. Si tenemos muchas conexiones distintas, probablemente es mejor usar interfaces annimos. Aunque si loso sistemas de enrutamiento no lo soportan, debemos usar asignacin dinmica. o a Al igual que SLIP, PPP Point to Point Protocoles un protocolo serie distinto utilizado para enviar data- gramas a travs de una conexin serie, pero mejora algunas de las carencias del anterior. El PPP permite a e o las partes comunicantes negociar opciones como las direcciones IP y el tamao mximo de los datagramasna al comenzar la conexin, y proporciona permisos de conexin a los clientes (autorizaciones). Para cada una o o de estas capacidades, el PPP tiene un protocolo concreto. A continuacin, citaremos los elementos bsicos que constituyen el PPP. Esta descripcion esta muy lejos o a de ser completa; si quiere saber mas sobre el PPP, lea sus especicaciones en el RFC 1548, asi como en la docena de RFCs que le acompaan.n 12. 3. Eligiendo una estructura de direcciones.12En la parte ms baja del PPP est el protocolo de Control de Conexin de Datos de Alto-Nivel, abrevia- aao damente HDLC. ( En realidad, el HDLC es un protocolo mucho ms general publicado por la Organizacin a o Internacional de Estndares, ISO ) que dene los l a mites de las tramas PPP individuales, y proporciona un control de errores de 16 bit. Al contrario de lo que ocurr en las encapsulaciones SLIP ms antiguas,aa una trama PPP es capaz de llevar paquetes de otros protocolos distintos al IP, como los IPX de Novell o Appletalk. El PPP consigue esto aadiendo a la trama bsica HDLC un campo de control que identica eln a tipo de paquete contenido en la trama. El LCP, Protocolo de Control de Enlace, es utilizado en la parte ms alta del HDLC para negociar lasa opciones concernientes a la conexin de datos, tales como la Unidad Mxima de Recepcin (MRU) que oa o establece el tamao mximo del datagrama que una de las partes de la conexin acepta recibir.n a o 3.6.2 Micro gateways.Es perfectamente posible que un microcomputador forme parte de una red IP. Pero hay una tendencia de que los micros utilicen distintas tecnolog de red que la de los grandes sistemas. Esto es debido a que as muchos de los usuarios de micros empiezan a demandar un software de red diseado espec ncamente para las necesidades de un micro, incluso para un particular tipo de micro. Muchos usuarios estn interesados a en usar TCP/IP sin tener que abandonar su red especial de micro, a la que estn acostumbrados. Por esta a razn, hay un creciente nmero de productos, especialmente gateways, que dan acceso a los PCs tanto aou redes orientadas a micros como a TCP/IP. En esta seccin vamos a hablar del AppleTalk, de Apple, a modo de ejemplo. No obstante, existen productoso similares para otros tipos de redes de micros. Hay que aclarar que el trmino AppleTalk se asocia a lose protocolos de red de Apple, mientras que LocalTalk se asocia a una tecnolog espec a ca de par trenzado, en la que AppleTalk fue inicialmente implementada. Por tanto, el AppleTalk es anlogo a los protocolosa TCP/IP, mientras que LocalTalk es anlogo a medio Ethernet. a Algunas compa ofrecen gateways para conectar una red AppleTalk corriendo sobre LocalTalk, con redes nas IP corriendo sobre Ethernet. A pesar de que hay varios productos de este tipo, la mayor de ellos incluyena los siguientes servicios: Las aplicaciones TCP/IP de un PC pueden conectarnos a sistemas TCP/IP de la Ethernet. Se denenutilidades especiales para permitirnos llevar datagramas IP desde el PC hasta el gateway, a travsedel LocalTalk. Las aplicaciones TCP/IP de PC han sido escritas usando unas librer especiales queasmezclan AppleTalk y TCP/IP. Las utilidades AppleTalk se necesitan para llevar los datagramas hastael gateway, donde se transformarn en datagramas 100% TCP/IP, antes de dejarlos en la Ethernet. a Se pueden escribir aplicaciones AppleTalk para grandes sistemas, de tal manera que un PC podrausarlos como servidores. Dichas aplicaciones tambin han sido escritas haciendo uso de una librereaespecial que mezcla AppleTalk y TCP/IP. Pero, en esta ocasin, son utilidades TCP/IP para dejarodatagramas en el gateway, donde se transformarn totalmente en AppleTalk, antes de dejarlos en laaAppleTalk y lleguen al PC. Una red IP de un campus o una corporacin puede ser usada para conectar redes AppleTalk. Losogateways de cada Apple realizarn las conversiones necesarias antes de enviar los datagramas a la red aIP.Adems, algunos gateways pueden hacer traducciones a nivel de aplicacin. Por ejemplo, algunos gateways ao pueden hacer traducciones entre el sistema de cheros de Apple y el sistema de chero de red de Sun (NFS). Esto permite a un PC acceder al sistema de cheros Unix, donde el PC usa el sistema de cheros Apple, y el acceso al sistema Unix se hace mediante el uso del sistema NFS, o sistema de cheros de red (Network File System ), de Sun. 13. 4. Servicios a nivel de red, nombres. 13Desafortunadamente, la gran exibilidad de estos productos se traduce en una gran complejidad. El tema de direcciones es especialmente complicado. Por las mismas razones que SLIP, y PPP estos gateways usan frecuentemente asignacin dinmica de direcciones IP. Para ello asignaremos un rango de direcciones IP ao a cada gateway. Cuando un PC intenta abrir una conexin TCP/IP, el gateway se hace con una direccin oo IP libre y se la asigna al PC. Al igual que SLIP, en muchos casos necesitaremos elegir si queremos que las direcciones se asignen de esta manera, o bien queremos que cada PC tenga su propia direccin. Otra vez,o la eleccin depender del nmero de PCs que tengamos y de si tenemos aplicaciones capaces de usar laoa u direccin IP para identicar qu PC, en particular, es el que est conectado.oea El direccionamiento es mucho ms complejo, debido a que AppleTalk tiene su propia estructura de direcciones.a Deberemos establecer una correspondencia entre direcciones AppleTalk y nmeros de red IP. Tambin habru ea una correspondencia entre direcciones IP y AppleTalk, que se establecer dinmicamente en los gateways.aa4Servicios a nivel de red, nombres. Si vamos a tener una red TCP/IP, hay algunas tareas importantes que realizar. Algunas de ellas son simplemente de tipo administrativo. La ms importante es crear un registro central de nombres y direccionesa IP. Existen organizaciones que realizan esta labor para toda la red Internet. Si estamos conectados a Internet, el administrador de nuestro sistema necesita registrarse a una de estas organizaciones, para que cualquier demanda por parte de otra institucin sobre nuestros hosts sean dirigidos a nuestros servidores.o Queremos mantener una base de datos que contenga la informacin de cada sistema de la red. Como o mnimo, necesitaremos el nombre y la direccin IP de cada sistema. Probablemente, el registro central ser oa el encargado de asignar las direcciones IP. Si nuestra red est estructurada en subredes, o si usamos varios a nmeros de clase C, el registro posiblemente asignar los nmeros de red a las nuevas redes o subredes.u au Pero, habitualmente, se permitir que los propios administradores de los hosts elijan el nombre del host. a Sin embargo, el registro debe de, al menos, vericar que no haya nombres duplicados. Si estamos trabajando con una gran red, puede que sea buena idea delegar algunas de estas tareas a subregistros, posiblemente uno para cada departamento. Se recomienda asignar las direcciones de la forma ms simple: empezando por 1. As si nuestra red es a , la 128.6, podramos asignar como 128.6.1 a la primera subred; 128.6.2, a la segunda, etc. La asignacino de direcciones IP para hosts individuales podr empezar por 2. De esta manera reservamos la direccin an o 1 de cada subred para que sea usada por el gateway correspondiente. Por consiguiente, el primer host de la subred 128.6.4 ser el 128.6.4.2; el siguiente ser 128.6.4.3, y as sucesivamente. Hay una razna a o bsica para mantener las direcciones tan cortas como sean posibles. Si tenemos una gran organizacin, ao podramos quedarnos sin nmeros de subred. Si esto ocurriera, y nuestros hosts tienen nmeros de red uu bajos, podramos asignar otro bit para el direccionamiento de las subredes. Si, por ejemplo, usamos el tercer octeto como nmero de subred, en tanto en cuanto nuestros hosts tengan unos nmeros inferiores a 128,uu podremos ampliar el nmero de red a 9 bits. As por ejemplo, la subred 128.6.4 podr dividirse en dosu ,a subredes distintas: 128.6.4.0 y 128.6.4.128. Si hubisemos asignado a los hosts nmeros por encima de 128, eu la divisin habr sido imposible.o a La asignacin de nombres de los hosts no es tan sistemtica. Pueden ser cualquier expresin compuesta deo a o letras, nmeros y guiones. Es ms seguro que el primer carcter sea una letra. Y, desde el punto de vistau a a de los usuarios, es recomendable que los nombres sean lo ms cortos posibles (incluso hay software quea tiene problemas trabajando con nombres ms largos de 16 caracteres). Muchas veces, los departamentos oa proyectos eligen un tema o nombre relacionado con ellos. Por ejemplo, las mquinas usadas por los estudiantes a de Informtica de Rutgers tienen nombres de bandas de rock: OASIS, BLUR, IRONMAIDEN, SAVOY, etc.a Nuestro departamento de Matemticas usa el nombre de famosos matemticos: GAUSS, FERMAT, etc. Si aa la institucin no tiene ninguna relacin con el mundo exterior, cualquier nombre es adecuado. o o 14. 4. Servicios a nivel de red, nombres. 14Si estamos conectados a Internet, nuestra organizacin necesitar un nombre de dominio(domain name). o a Al igual que en el caso del espacio de direcciones IP, la autoridad mxima del espacio de nombres de Interneta (DNS, Domain Name System) es la IANA (Internet Assigned Number Authority). La ra del DNS esz gestionada por el InterNIC por delegacin de la IANA. Bajo la ra se encuentran los distintos dominios de o z primer nivel (Top Level Domains o TLDs) gestionados por distintos registros delegados de Internet. Algunos de ellos son: Dominios especialescomo COM, ORG, NET, EDU,... controlados por InterNIC ( nodo central del Network Internet Center ); y dentro de los dominios nacionales, el dominio ES, correspondiente a Espaa, n est delegado a ES-NIC.a A diferencia del nmero de red, podremos arreglrnosla sin l si la red est aislada. Si posteriormente lo u aea necesitamos, es fcil de aadir un nombre de dominio. (Recomendamos usar un nmero de red desde el anu principio, porque cambiar nmeros de red posteriormente puede ser traumtico). Los nombres de dominio, u a normalmente, terminan en .EDU para las instituciones educativas, .COM, para las compa etc. Por ejem- nas, plo, la Universidad de Rutgers tiene como nombre de dominio RUTGERS.EDU. El formato de los nombres completos de dominio consiste en un nombre interno, seguido del nombre de dominio de la organizacin. As o, si un ordenador es conocido internamente como GAUSS, su nombre completo ser GAUSS.RUTGERS.EDU.a Si tenemos una gran organizacin, es posible tener subdominios. Por ejemplo, puede que haya un subdominio o para cada departamento; esto aadir otro trmino en los nombres. Si, por ejemplo, el departamento de Ma- nae temticas decide crear su subdominio, el anterior ordenador se llamar GAUSS.MATHS.RUTGERS.EDU. a a Una vez asignado el nombre de dominio, se procede a cambiar los cheros de conguracin donde aparece o la forma completa del nombre. En algunos casos, se pueden usar apodos o nombres cortos, de manera que no ser necesario incluir el nombre completo.a Si tenemos ms de uno o dos sistemas, necesitaremos tener algn mecanismo para tener al d la informacin au ao de los distintos hosts. El software TCP/IP necesita ser capaz de traducir nombres de hosts en direcciones IP. Cuando un usuario intenta conectarse con otro sistema, generalmente se referir a l usando su nombre. a e El software tendr que traducir el nombre en una direccin IP, para poder abrir la conexin. La mayor a ooa del software incluye dos vias para hacer esta traduccin: una tabla esttica o un servidor de nombres. La oa solucin de la tabla est indicada para pequeas organizaciones, siempre y cuando no estn conectadas a o a n e otra red. Simplemente se crea un chero que lista los nombres y direcciones de todos los hosts. Veamos parte de una tabla de este tipo: HOST: 128.6.4.2, 128.6.25.2: ARAMIS.RUTGERS.EDU, ARAMIS: SUN-3-280: UNIX ::HOST: 128.6.4.3: GAUSS.RUTGERS.EDU, GAUSS: SUN-3-180: UNIX ::HOST: 128.6.4.4, 128.6.25.4: ATHOS.RUTGERS.EDU, ATHOS: SUN-4-280: UNIX :: Como se puede apreciar, el formato es el siguiente: una l nea para cada sistema y listar sus direcciones, nombres y otra informacin sobre l. En el ejemplo, tanto ARAMIS como ATHOS estn en dos redes, as queo e a tienen dos direcciones. Adems, ambos tienen un nombre principal, por ejemplo ARAMIS.RUTGERS.EDU, a y apodos, por ejemplo ARAMIS. En caso de estar conectados a Internet, el nombre principal ser el nombrea de dominio completamente especicado. Se incluyen apodos cortos, para facilitar la tarea a nuestros usuarios. Hay otro formato muy frecuente para las tablas de hosts. Veamos un ejemplo:128.6.4.2 aramis.rutgers.edu aramis 128.6.25.2aramis.rutgers.edu aramis 128.5.4.3 gauss.rutgers.edugauss 128.6.4.4 athos.rutgers.eduathos 128.6.25.4athos.rutgers.eduathos En este formato, cada lnea representa una direccin IP. Si el sistema tiene dos interfaces, hay dos l o neas de l en la tabla. Se debe procurar poner, en primer lugar, aquellas direcciones de uso ms comn. Lae a u documentacin de su sistema le informar sobre el formato usado por l.oae 15. 4. Servicios a nivel de red, nombres.15En la conguracin ms simple, cada ordenador tiene su propia copia de la tabla de hosts en /etc/hosts.oa En caso de elegir esta conguracin, deberemos establecer procedimientos para asegurarnos que todas laso copias son actualizadas regularmente. En una red pequea no es dif mantener una tabla /etc/hosts en ncil cada mquina, y modicarla al agregar, eliminar o modicar nodos. Aunque resulta complicado cuando haya muchas mquinas, ya que, en principio, cada una necesita una copia de /etc/hosts. a Una solucin a esto es compartir sta y otras bases de datos con el NIS, o sistema de informacin de redo e o ( Network Information System ), desarrollado por Sun Microsystems y conocido tambin como pginase a amarillas o YP. En este caso, las bases de datos como la de /etc/hosts se mantienen en un servidor NIS central y los clientes accedern a ellas de forma transparente al usuario. En todo caso, esta solucin slo a o o es aconsejable para redes pequeas o medianas, ya que implican mantener un chero central /etc/hosts que n puede crecer mucho, y luego distribuirlo entre los servidores NIS. En redes grandes, y todos aquellos que estn conectados a Internet, debemos adoptar un nuevo siste-a ma, el DNS o sistema de nombres por dominios (Domain Name System) diseado por Paul Mockapetris. n Tcnicamente, el DNS es una inmensa base de datos distribu jerrquicamente por toda la Internet; exis- eda a ten innidad de servidores que interactan entre si para encontrar y facilitar a las aplicaciones clientes queu los consultan la traduccin de un nombre a su direccion de red IP asociada, con la que poder efectuar lao conexin deseada. Cada parte de la base de datos est replicada en, al menos, dos servidores, lo que asegura oa una debida redundancia. Un servidor de nombres es un programa que se ejecuta en algunos de nuestros sistemas para tener conocimiento de los nombres. Cuando un programa necesita buscar un nombre, en lugar de hacerlo en una copia de la tabla de host, env una peticin al servidor de nombres. Este enfoque tiene a o dos ventajas: Para los grandes sistemas, es ms fcil tener al d las tablas en algunos servidores de nombres que en a aatodo el sistema. Si nuestra red est conectada a Internet, nuestro servidor de nombres ser capaz de dialogar con losaaservidores de nombres de otras organizaciones, para buscar nombres de cualquier sitio.Usar un servidor de nombres es el unico camino para tener un acceso completo a la informacin del resto de o los hosts de Internet. Es importante comprender la diferencia entre un servidor de nombres y un resolvedor. Un servidor de nombres es un programa que tiene acceso a una base de datos de hosts, y responde peticiones de otros programas. Un resolvedor es un conjunto de subrutinas que pueden cargarse con un programa. El resolvedor genera las peticiones que se enviarn al servidor de nombres, y procesa sus correspondientes respuestas. a Cada sistema deber usar un resolvedor (en general, el resolvedor es cargado por cada programa que va a a hacer uso de la red, puesto que slo es un conjunto de subrutinas). Hay que recalcar que slo se necesitarnoo a unos pocos servidores de nombres. Mucha gente confunde los dos enfoques y llega a creer que es necesario tener un servidor de nombres en cada ordenador. Para usar un resolvedor, cada ordenador necesitar un chero de conguracin, u otro mtodo, para espe- aoe cicar la direccin del servidor de nombres al que enviar nuestras peticiones. Por regla general, se puedeno declarar varios servidores de nombres, para el caso de que alguno de ellos no funcione correctamente. En el caso de que nuestro sistema no pudiera contactar satisfactoriamente con ningn servidor, la mayor de ua nuestro software empezar a fallar. Por tanto, hay que ser muy cuidadoso y declarar tantos servidores a como podamos para intentar asegurar un buen funcionamiento. Los servidores de nombres, generalmente, tienen un conjunto de opciones para su conguracin. En lugar de o dar algunos consejos sobre cmo congurar un servidor de nombres, vamos a recomendar dos documentos o ociales de los estndares de Internet. El RFC 1032 contiene las instrucciones sobre cmo conseguir un a o nombre de dominio del Centro de Informacin de Red, incluyendo los formularios necesarios. El RFC 1033 o contiene las instrucciones sobre cmo congurar un servidor de nombres. Todos estos documentos son de tipo o 16. 5. Congurando el enrutamiento de cada ordenador 16conceptual. Seguramente, tambin necesitar documentacin sobre el software espec e ao co de su servidor de nombres. En algunos casos, puede que se necesiten, a la vez, tablas y servidores de nombres. Si tenemos alguna implementacin de TCP/IP que no incluyan resolvers, estamos obligados a instalar tablas de hosts eno estos sistemas. Si nuestra red est conectada a Internet, vamos a tener problemas con aquellos sistemas que a no dispongan de resolvers, ya que Internet es demasiado grande para tener unas tablas de hosts de todos sus hosts. Por lo tanto, lo que se puede hacer es incluir una tabla de hosts con los hosts que realmente se tiene pensado usar. InterNIC tiene a su cargo una tabla de host que puede ser un buen punto de comienzo, aunque no es completa de ningn modo. As que tendremos que aadir los hosts favoritos de los usuarios. un Los sistemas que usan resolvers no tendrn este problema, puesto que un servidor de nombres es capaz dea traducir cualquier nombre legal de host. Los nombres de hosts y la asignacin de nmeros son los unicos elementos que deben de tener una estructura ou centralizada. Sin embargo, puede haber otros elementos susceptibles de centralizacin. Es bastante frecuenteo tener uno o dos ordenadores que se hagan cargo de todo el correo electrnico. Si estamos conectados a o Internet, es bastante simple establecer comunicaciones con otros ordenadores de Internet. No obstante, hay muchas instituciones que quieren comunicarse con sistemas de otras redes, como Bitnet o Usenet. Hay gateways entre varias de estas redes. Pero la eleccin del gateway correcto, y transformar la direccin de oo correo electrnico correctamente, es una tarea muy especializada. Por esto, en muchas ocasiones se congurao el software apropiado slo en un lugar, y todo el correo externo (o todo el correo externo a hosts que no o estn en Internet) se dirige a este sistema.a5 Congurando el enrutamiento de cada ordenador Todas las implementaciones TCP/IP necesitan alguna conguracin en cada host. En algunos casos, esto seo hace durante la instalacin del sistema de forma casi automtica. En otros casos, mediante la conguracino ao de ciertos programas o cheros. Y, por ultimo, otros sistemas obtienen la informacin de conguracin a oo travs de la red de un servidor. e A pesar de que los detalles de la conguracin pueden diferir bastante, existen ciertos datos que deben o incluirse en todos los casos. Entre ellos: parmetros que describan a una mquina en particular, como su direccin IP;aao parmetros que describan la red, como su submscara de red (si hubiera);a a software de enrutamiento y las tablas que use; otros programas necesarios para el funcionamiento de otras tareas de red.Antes de que se instale un ordenador en una red, un coordinador deber asignarle un nombre de red y su a direccin IP, como describimos anteriormente. Una vez otorgado un nombre y una direccin estamos enoo disposicin de congurarlo. En numerosas ocasiones, lo que debemos hacer es poner la direccin y el nombreoo en un chero de conguracin. Sin embargo, algunos ordenadores (especialmente aquellos que no disponen deo un disco propio en el que dicha informacin pueda ser almacenada) deben obtener esta informacin a travso oe de la red. En el momento en que un sistema arranca, se realiza un broadcast a la red con la peticin quino e soy?. En el caso de poseer ordenadores de este tipo, debemos asegurarnos de que nuestra red est preparada a para responder adecuadamente. La pregunta lgica es: cmo otro sistema sabe quin eres?. Generalmente, oo e esto se soluciona haciendo uso de las direcciones Ethernet (o las direcciones anlogas para otro tipo de redes). a Las direcciones Ethernet son asignadas por los fabricantes hardware. Est garantizado que slo una mquinaaoa en todo el mundo tiene una determinada direccin Ethernet. Por lo general, dicha direccin est grabada en o oa una ROM en la tarjeta Ethernet de la mquina. La mquina, probablemente, no conozca su direccin IP, aao 17. 5. Congurando el enrutamiento de cada ordenador17pero sin duda conoce su direccin Ethernet. Por esta razn, la peticin quin soy?incluye la direcci`n o o oeo Ethernet. Y habr sistemas congurados para responder a estas peticiones, buscando en una tabla que a hace corresponder a cada direccin Ethernet su direccin IP. Pero, por desgracia, deberemos congurar yo o actualizar esta tabla periodicamente. Para este n se usa el protocolo de RARP (Reverse Address Resolution Protocol); existe adems otro protocolo, el BOOTP o protocolo de arranque. En general, los ordenadores a estn diseados de tal manera que muestran su direccin Ethernet por pantalla, tan pronto como se enciendeano el mismo. Y, en la mayor de los casos, disponemos de un comando que muestra esta informacin del interfaz ao Ethernet. Generalmente, la mscara de subred debe especicarse en un determinado archivo (en los sistemas Unix, ela comando ifcong , donde ifsignica interface, se usa para especicar tanto la direccin Internet como lao mscara de subred). No obstante, hay previsiones en los protocolos IP para permitir un broadcast de un a ordenador, preguntando por la mscara de red. La submscara de red es un atributo de la red y, por ello, esaa el mismo para todos los ordenadores de una determinada subred. No hay una tabla de subred independiente de la tabla de las correspondencias Ethernet/Internet, usada para consulta de direcciones. Idealmente, slo o determinados ordenadores contestan peticiones de la mscara de red, pero, en muchas implementaciones a TCP/IP, estn diseadas de tal manera que si un ordenador cree conocer la mscara de red debe contestar,a na y, por tanto, en estas implementaciones, la mala conguracin de la mscara de subred en un solo ordenadoro a puede causar un mal funcionamiento de la red. Por regla general, los cheros de conguracin hacen, a grosso modo, las siguientes cosas: o Cargar un driver especial para los dispositivos que sean necesarios (esto es bastante usual en los PCs,donde los accesos a red son controlados por una tarjeta controladora y un software que no formaparte del sistema operativo). Habilitar cada interfaz de red (Ethernet, l neas serie, etc.). Normalmente, esto conlleva la especicacinode una direccin Internet y una mscara de red para cada uno, as como otras opciones especiales deo acada dispositivo. Establecimiento de la informacin de enrutamiento de la red, tanto por comandos que establecen rutas, ocomo ejecucando un programa que las obtiene dinmicamente. a Activar el sistema de dominios (usado para buscar nombres y encontrar la correspondiente direccinoInternet -mirar la seccin del sistema de dominio, en la Introduccin al TCP/IP-). Los detalles depen-oodern del sistema de dominios usado. En la mayor de los casos, slo algunos hosts debern ejecutaraa oael servidor de nombres de dominios. Los otros hosts, simplemente, necesitan cheros de conguracin, oque especican dnde se encuentra el servidor ms cercano.oa Establecer otro tipo de informacin necesaria para el sistema software, como, por ejemplo, el nombre odel propio sistema. Lanzar varios demonios (daemons). Hay programas que proveen de servicios de red a otros sistemasde la red, y a los usuarios de estos sistemas. En el caso de los PCs, que en muchos casos no soportanel multiproceso, y dichos servicios, se establecen mediante los llamados TSR, o mediante los driversdel dispositivo. 5.1Como enrutar los datagramasSi nuestro sistema consiste en una simple Ethernet, o un medio similar, no ser necesario prestar demasiadaa atencin al enrutamiento. Pero, para sistemas ms complejos, cada una de las mquinas necesita una tablaoaa que contenga el gateway y el interfaz necesario para cada posible destino. Vimos un ejemplo simple en una seccin anterior, pero ahora es necesario describir el modo como funciona el enrutamiento, con un poco mso a 18. 5. Congurando el enrutamiento de cada ordenador18de detalle. En la inmensa mayor de los sistemas, la tabla de enrutamiento tendr un aspecto similar (estea a ejemplo ha sido tomado de un sistema con Berkeley Unix, usando el comando "netstat -n -r" ; algunas columnas que contienen informacin estad o stica han sido omitidas): DestinoGateway Bandera Interface 128.6.5.3128.6.7.1 UHGD il0 128.6.5.21 128.6.7.1 UHGD il0 127.0.0.1127.0.0.1 UH lo0 128.6.4128.6.4.61Upe0 128.6.6128.6.7.26Uil0 128.6.7128.6.7.26Uil0 128.6.2128.6.7.1 UG il0 10 128.6.4.27UG pe0 128.121128.6.4.27UG pe0 default128.6.4.27UG pe0El sistema del ejemplo est conectado a dos Ethernet: a ControladorRed Direccion Otras Redesil0128.6.7128.6.7.26128.6.6pe0128.6.4128.6.4.61ningunaLa primera columna muestra el nombre de la interface Ethernet; la segunda, es el nmero de red para esau Ethernet; la tercera columna es la direccin Internet de esa red, y, la ultima muestra otras subredes que o comparten la misma red fsica. Estudiemos la tabla de enrutamiento; por el momento, ignoraremos las tres primeras l neas. La mayor parte de la tabla consiste en un conjunto de entradas describiendo las redes. Para cada red, las otras tres columnas muestran a dnde deben ser enviados los datagramas destinados a dicha red. Si aparece la bandera Gen o la tercera columna, los datagramas tienen que enviarse a travs de un gateway; en caso de no aparecer, el e ordenador est directamente conectado a la red en cuestin. As que los datagramas para dichas redes deben a o enviarse usando el controlador especicado en la cuarta columna. La bandera U, de la tercera columna, slo indica que la ruta especicada por esa lonea est activa (generalmente, se asume que estar abierta, a aa no ser que se produzcan errores tras varios intentos). Las tres primera l neas muestran rutas a hosts, indicndose con Hen la tercera columna. Las tablas dea enrutamiento, normalmente, tienen entradas para redes o subredes. Por ejemplo, la entrada 128.6.2 128.6.7.1 UG il0indica que un datagrama para cualquier ordenador de la red 128.6.2 (es decir, direcciones desde 128.6.2.1hasta 128.6.2.254) debe enviarse al gateway 128.6.7.1, para llevarlo a cabo. En algunas ocasiones, se establecen rutas para un ordenador espec co, en lugar de una red entera. En este caso, se usa una ruta al host. En la primera columna aparece una direccin completa, y la bandera Hest presente en la columna tres; por o a ejemplo, la entrada 128.6.5.21 128.6.7.1 UHGD il0indica que un datagrama, dirigido en concreto a la direccin 128.6.5.21, debe ser enviado al gateway 128.6.7.1. o Al igual que en los enrutamientos a redes, la bandera Gse usa cuando en el enrutamiento se ve involucrado un gateway, y la bandera Dindica que el enrutamiento fue aadido dinmicamente, usando un mensaje na ICMP de redireccin desde un gateway (ms adelante daremos ms detalles).oa a El siguiente enrutamiento es especial: 19. 5. Congurando el enrutamiento de cada ordenador 19 127.0.0.1127.0.0.1UHlo0donde, 127.0.0.1 es el dispositivo de lazo cerrado, o loopback. Cualquier datagrama enviado a travs de e este dispositivo aparece inmediatamente como entrada. Es muy util para hacer pruebas. Las direcciones de lazo cerradopueden, tambin, ser usadas para comunicar aplicaciones que estn en el propio ordenador. e a (Por qu molestarnos en usar la red para comunicarnos con programas que se encuentran en la mismae mquina?). a Por ultimo, hay una ruta por defecto (default), como es default128.6.4.27UGpe0Esta ruta ser seguida por aquellos datagramas que no se correspondan con ninguna de las anteriores. Ena nuestro ejemplo, se enviarn a un gateway de direccin 128.6.4.27. a o Como ultimo ejemplo veamos la tabla de enrutamiento de un sistema Linux conectado a Internet mediante una linea PPP, usando el comando netstat -n -r; algunas columnas que contienen informacin estad o stica han sido omitidas.DestinoGatewayBandera Interface 172.16.1.330.0.0.0UH ppp0 128.0.0.10.0.0.0Ul0 0.0.0.0172.16.1.33UG ppp0Hay que aclarar que 0.0.0.0 representa al enrutamiento por defecto, es el valor numrico de default. En este e ejemplo, al sistema se le ha asignado la direccin IP 172.16.1.3 de forma dinmica, de manera que usa la oa linea PPP para conectarse con Internet, y 127.0.0.1 es el dispositivo loopback. Antes de la conexin PPPo solamente estaba activo el dispositivo de lazo cerrado, pero una vez establecida la conexin PPP se activao el interface ppp0 ( 0 indica un identicativo de interface ppp; es decir, si hubiera otra lnea ppp se etiquetar a como ppp1, etc), se usa el sistema del otro lado de la linea como un gateway por defecto, como se puede apreciar en la ultima linea. En muchos sistemas, los datagramas son enrutados consultando la direcin de destino en una tabla como lao que acabamos de describir. Si la direccin se corresponde con una ruta espec oca a un host, sta ser usada;e a en otro caso, si se corresponde con un enrutamiento a red, se usar sta; y, si nada de lo anterior acontece,ae se usar el enrutamiento por defecto. En caso de no existir uno por defecto, aparecer un mensaje de tipoa a red inalcanzable(network is unreachable). En las siguientes secciones describiremos varias maneras de congurar estas tablas de enrutamiento. Ge- neralmente, la operacin de enviar datagramas no depende del mtodo usado en la conguracin de estasoeo tablas. Cuando un datagrama va a ser enviado, su destino es consultado en la tabla. Los distintos mtodose de enrutamiento son simplemente, ms o menos, una serie de sosticadas formas de congurar y mantener a las tablas. 5.2Rutas jasLa forma ms fcil de congurar el enrutamiento es usar comandos que lo jan. Nuestros archivos de a a inicializacin contienen comandos que conguran el enrutamiento. Si es necesario algn cambio, deber ou a hacerse, normalmente, usando comandos que aaden y borran entradas de la tabla de enrutamiento (cuando n se realice un cambio, no debemos olvidar actualizar el chero de inicializacin tambin). Este mtodo eso ee prctico para redes relativamente pequeas, especialmente cuando los cambios no son muy frecuentes. an Muchos ordenadores conguran automticamente algunas entradas de enrutamiento por nosotros. Unix a aade una entrada para las redes a las que estamos directamente conectados. Por ejemplo, un chero den inicializacin podr ser oa 20. 5. Congurando el enrutamiento de cada ordenador20 ifconfigie0128.6.4.4 netmask 255.255.255.0ifconfigie1128.6.5.35netmask 255.255.255.0 Este especica que hay dos interfaces de red y sus direcciones en ellas. El sistema crea automticamente a estas entradas en la tabla de enrutamiento 128.6.4 128.6.4.4 U ie0128.6.5 128.6.5.35U ie1 y, en sta, se especica que los datagramas para las redes locales 128.6.4 y 128.6.5 deben ser enviados a las e corespondientes interfaces. Adems de stos, el chero de inicializacin podr contener comandos para denir rutas a cualquier otra a e oa red a la que queramos acceder. Por ejemplo, route add128.6.2.0 128.6.4.11route add128.6.6.0 128.6.5.35 0 Estos comandos determinan que para alcanzar la red 128.6.2 debemos usar el gateway de direccin 128.6.5.1, o y esa red 128.6.6 es, realmente, un nmero de red adicional para una red f usica conectada al interface 128.6.5.35. Otro tipo de software puede usar comandos distintos a estos casos. Unix se diferencia de ellos por el uso de una mtrica, que es el nmero nal del comando. La mtrica indica cuntos gateways tiene queeu ea atravesar un datagrama para alcanzar su destino. Rutas de mtrica 1 ms indican que hay en el camino eo a slo un gateway hasta el destino. Rutas de mtrica 0 indican que no hay ningn gateway implicado -es unoe u nmero de red adicional para la red local-.u En ultimo lugar, podemos denir un enrutamiento por defecto, usado cuando el destino no est listado a expl citamente. Normalmente, se suele acompaar de la direccin de un gateway que tiene suciente infor-n o macin como para manejar todos los posibles destinos.o Si nuestra red slo dispone de un gateway, entonces slo necesitaremos una sola entrada por defecto. En oo este caso, no deberemos preocuparnos ms de la conguracin del enrutamiento de los hosts (el gateway, ao en s necesitar ms atencin, como veremos). Las siguientes secciones nos ayudarn para congurar redes , a a o a donde hay varios gateways. 5.3Reconducir el enrutamientoLa mayor de los expertos recomiendan dejar las decisiones de enrutamiento a los gateways. Por tanto,a probablemente, ser una mala idea tener largas tablas estticas de enrutamiento en cada ordenador. Ela a problema est en que cuando algo cambia en la red tenemos que actualizar las tablas en demasiados orde-a nadores. Si el cambio ocurre debido a que cae una lnea, el servicio no se restablecer hasta que alguien se a de cuenta del problema y cambie todas las tablas de enrutamiento. La manera ms fcil de tener actualizado el enrutamiento es depender slo de un unico gateway y actualizar a a o su tabla de enrutamiento. Este gateway debe jarse como gateway por defecto. (En Unix esto signica usar un comando como route add default 128.6.4.27 1, donde 128.6.4.27 es la direccin del gateway). Comoo describimos anteriormente, el sistema enviar todos aquellos datagramas a dicho gateway cuando no hayaa una ruta mejor. En principio, parece que esta estrategia no es demasiado buena cuando poseemos ms de a un gateway; mxime, cuando todo lo que tenemos es slo la entrada por defecto. Cmo usaremos los aoo otros gateways en los casos en los que stos sean ms recomendables? La respuesta es que los datagramase a correspondientes sern redirigidos a estos gateways en estos casos. Un redireccionamientoes una clasea especca de mensaje ICMP (Internet Control Message Protocol), que contiene informacin del tipo En el o futuro, para llegar a la direccin XXXXX, intenta usar YYYYY en lugar de m Las implementaciones o. 21. 5. Congurando el enrutamiento de cada ordenador 21que cumplen completamente los protocolos TCP/IP usan estas tcnicas de redireccionamiento para aadir e n entradas a las tablas de enrutamiento. Supongamos que una tabla inicialmente es como sigue: DestinoGatewayBanderaInterface+------------------------------------------------------------+| 127.0.0.1| 127.0.0.1| UH|lo0 |+--------------+--------------+---------------+--------------+| 128.6.4| 128.6.4.61 | U |pe0 |+--------------+--------------+---------------+--------------+| default| 128.6.4.27 | UG|pe0 |+------------------------------------------------------------+donde hay una entrada para la red local 128.6.4, y una entrada por defecto del gateway 128.6.4.27. Supon- gamos que hay tambin un gateway 128.6.4.30, que es el mejor camino para acceder a la red 128.6.7. Cmo e o podemos llegar a usar este camino? Supongamos que tenemos unos datagramas para enviar a 128.6.7.23. El primer datagrama llegar al gateway por defecto, puesto que es el unico que aparece en la tabla de a enrutamiento, y el gateway se dar cuenta de que el mejor camino debe pasar por 128.6.4.30 (Hay distin- a tos mtodos para que un gateway determine que debe usarse otro para un mejor enrutamiento). Por tanto, e 128.6.4.27 contestar con un mensaje de redireccionamiento especicando que los datagramas para 128.6.7.23 a deben enviarse a travs del gateway 128.6.4.30. El software TCP/IP aadir una entrada a la tabla dee na enrutamiento 128.6.7.23128.6.4.30 UDHG pe0De esta manera, los restantes datagramas al 128.6.7.23 se enviarn directamente al gateway apropiado. a Esta estrategia ser perfecta si no fuera por los siguientes tres problemas:a Necesita que cada ordenador contenga la direccin de un gateway por defecto en los cheros de con- oguracin.o En caso de que un gateway falle, las entradas de las tablas de enrutamiento que usan dicho gatewayno se eliminan. Si la red usa subredes y la implementacin TCP/IP usada no las maneja, esta estrategia no podro aemplearse.El alcance del problema depende del tipo de red de la que disponemos. Para redes pequeas, apenas n supondr un problema cambiar los cheros de conguracin de algunas mquinas. Sin embargo, para algunasaoa organizaciones este trabajo es dif de llevar a cabo. Si, por ejemplo, la topolog de la red cambia y un cila gateway es eliminado, cualquier sistema que tenga dicho gateway por defecto deber ser ajustado. Estea problema ser especialmente grave si el personal encargado del mantenimiento de la red es distinto del a encargado de mantener a los sistemas individualmewnte. La solucin ms simple consiste en asegurarnos deoa que la direccin por defecto nunca cambiar. Por ejemplo, podr o a amos adoptar el convenio de que la direccino 1 de cada subred se corresponde con el gateway por defecto de cada subred; as en la subred 128.6.7, el, gateway por defecto ser siempre el 128.6.7.1. Si dicho gateway es eliminado, habr que asignarle dichaaa direccin a algn otro gateway (siempre tendr que haber, al menos, un gateway, puesto que si no es asoua estaremos completamente incomunicados). Hasta ahora hemos visto cmo aadir rutas, pero no cmo deshacernos de ellas. Qu ocurre si un gateway o noe no funciona correctamente?. Nuestro deseo ser que se recondujera a un gateway operativo, pero desgra- a ciadamente, un gateway en mal funcionamiento no tendr en general esta capacidad de redireccionamiento. a La solucin ms obvia es usar gateways ables. El redireccionamiento puede usarse para controlar distintoso a tipos de fallos. 22. 5. Congurando el enrutamiento de cada ordenador 22La mejor estrategia para controlar gateways averiados es que nuestra implementacin TCP/IP detecte las o rutas que no tienen xito. TCP mantiene varios contadores que permiten al software detectar cundo unaea conexin se ha roto. Cuando esto ocurre, se puede marcar esta ruta como fallida y volver al gateway poro defecto. Una solucin similar puede usarse para manejar fallos en el gateway por defecto. Si conguramos doso gateways por defecto, entonces el software deber ser capaz de cambiar el gateway cuando las conexionesa en uno de ellos empiecen a fallar. Sin embargo, algunas implementaciones TCP/IP no pueden marcar rutas como fallidas y empezar a usar otras. En particular, Berkeley 4.2 Unix no lo hace; pero Berkeley 4.3 Unix s lo que empieza a hacerse cada vez ms comn. Hasta implementaciones de Unix para PC como Linux ya, a u incorporan esta posibilidad (Linux en concreto puede controlar hasta cuatro gateways por defecto). 5.4 Otros mtodos para que los hosts encuentren rutaseEn tanto en cuanto las implementaciones TCP/IP manejan cadas de las conexiones adecuadamente, esta- bleciendo una o ms rutas por defecto en el chero de conguraciones, se produce probablemente la foma a ms simple de controlar el enrutamiento. No obstante, hay otras dos tcnicas de enrutamiento dignas de a e consideracin para algunos casos especiales:o espiar el protocolo de enrutamiento, usar un proxy ARP. 5.4.1 Espiar el enrutamiento.Los gateways, por regla general, tienen un protocolo especial que usan entre ellos. Hay que aclarar que el redireccionamiento no puede ser usado por los gateways, ya que ste es simplemente el mecanismo por el e cul ellos informan a simples hosts que tienen que usar otro gateway. Los gateways deben tener una visin a o completa de la red y un mtodo para para calcular la ruta ptima a cada subred. Generalmente, los gatewayseo mantienen esta visin mediante el intercambio de informacin entre ellos. Hay varios protocolos distintosoo de enrutamiento para este propsito. Una alternativa para que un ordenador siga la pista a los gatewayso esescuchar los mensajes que se intercambian entre ellos. Hay software capaz de hacer esto para la mayor a de los protocolos. Cuando ejecutamos este software, el ordenador mantendr una visin completa de laa o red, al igual que los gateways. Este software normalmente est diseado para mantener dinmicamente las a na tablas de enrutamiento del ordenador, as que los datagramas se enviarn siempre al gateway ms adecuado.a a De hecho, el enrutamiento realizado es equivalente a ejecutar los comandos Unix route addy route deletea medida que la topolog cambia. El resultado suele ser una completa tabla de enrutamiento, en lugar de a una con unas rutas por defecto. (Este enfoque asume que los gateways mantienen entre ellos una tabla completa. Algunas veces los gateways tienen constancia de todas nuestras redes, pero usan una ruta por defecto para las redes ajenas al campus, etc.). Ejecutando el software de enrutamiento en cada host resolveremos de alguna manera el problema de enru- tamiento, pero hay algunas razones por las que normalmente no es recomendable, reservndola como ultimaa alternativa. El problema ms serio incorpora numerosas opciones de conguracin, que deben mantenerse a o en cada ordenador. Adems, los actuales gateways suelen aadir opciones cada vez ms complejas. Pora n a tanto, no es deseable extender el uso de este software en todos los hosts. Hay otro problema ms espec aco referido a los ordenadores sin discos. Como es natural, un ordenador sin discos depende de la red y de los servidores de cheros para cargar los programas y hacer swapping. No es recomendable que estos ordenadores escuchen las emisiones de la red. Por ejemplo, cada gateway de la red debe emitir sus tablas de enrutamiento cada 30 segundos. El problema es que el software que escucha estas emisiones debe ser cargado a travs de la red. En un ordenador ocupado, los programas que no e son usados durante algunos segundos deben guardarse haciendo swapping o paginacin. Cuando se activan o de nuevo, han de recuperarse. Cuando una emisin de un gateway es enviada en la red, cada ordenadoro 23. 5. Congurando el enrutamiento de cada ordenador23activa su software de red para procesar dicha emisin, lo cual signica que todos ellos intentan hacer unao recuperacin al mismo tiempo y, por tanto, es probable que se produzca una sobrecarga temporal de la red. o 5.4.2Proxy ARP.Los proxy ARP son otra tcnica para permitir a los gateways tomar todas las decisiones de enrutamiento. e Son aplicables a aquellas redes que usan ARP (Address Resolution Protocol), o una tcnica similar para e corresponder las direcciones Internet con direcciones de redes especcas, como las direcciones Ethernet. Para facilitar la explicacin, vamos a asumir redes Ethernet. Los cambios necesarios para otros tipos deo redes consistirn en poner la correspondiente direccin de red, en lugar de direccin Ethernet, y protocoloa oo anlogo a ARP para dicha red. a En muchos aspectos, los proxy ARP son semejantes al uso de una ruta por defecto y redireccionamiento, y la mayor diferencia radica en que tienen distintos mecanismos para comunicar rutas a los hosts. Con el redireccionamiento se usa una tabla completa de enrutamiento, de forma que en cualquier momento un host sabe a cual gateway debe enviar los datagramas. En cambio, los proxy ARP prescinden de las tablas de enrutamiento y hacen todo el trabajo a nivel de direcciones Ethernet. Los proxy ARP pueden usarse para todos los destinos, tanto para aquellos que estn en nuestra red como para algunas combinaciones dea destinos. El caso ms sencillo de explicar es el de todas las direcciones; para ello ordenamos al ordenador a que simule que todos los ordenadores del mundo estn conectados directamente a nuestra Ethernet local.a En Unix, esto se hace usando el comando route add default 128.6.4.2 0 donde, 128.6.4.2 es la direccin IP de nuestro host. Como ya hemos visto, la mtrica 0 provoca que todo oe aquello que se identique con esta ruta se enviar directamente a la red local Ethernet. Alternativamente,a otros sistemas nos permiten conseguir el mismo efecto jando una mscara de red de ceros, en cuyo caso a debemos asegurarnos de que no ser alterada por un mensaje ICMP de mscara de subred debido a que unaa sistema conoce la verdadera mscara de red. a Cuando un datagrama va a ser enviado a un destino dentro de la Ethernet local, el ordenador necesita conocer la direccin Ethernet del destino, y para ello, generalmente, se usa la llamada tabla ARP, que contiene las o correspondencias entre las direcciones Internet y las direcciones Ethernet. Veamos un ejemplo tpico de tabla ARP (en la mayor de los sistemas se visualiza usando el comando @.): aFOKKER.RUTGERS.EDU (128.6.5.16) at 8:0:20:0:8:22 temporary CROSBY.RUTGERS.EDU (128.6.5.48) at 2:60:8c:49:50:63 temporary CAIP.RUTGERS.EDU (128.6.4.16) at 8:0:8b:0:1:6f temporary DUDE.RUTGERS.EDU (128.6.20.16) at 2:7:1:0:eb:cd temporary W2ONS.MIT.EDU (128.125.1.1) at 2:7:1:0:eb:cd temporary OBERON.USC.EDU (128.125.1.1) at 2:7:1:2:18:ee temporary gatech.edu (128.61.1.1) at 2:7:1:0:eb:cd temporary DARTAGNAN.RUTGERS.EDU (128.6.5.65) at 8:0:20:0:15:a9 temporary Como dijimos anteriormente, simplemente es una lista de direcciones IP y su correspondiente direccino Ethernet. El trmino temporaryindica que la entrada fue aadida dinmicamente usando ARP, en lugar en a de ser puesta manualmente. Si hay una entrada para una direccin determinada en la tabla ARP, los datagramas sern puestos en lao a Ethernet con su correspondiente direccin Ethernet. Si esto no ocurre, se enviar una peticin ARP,oao solicitando que el host destino se identique. La peticin es, en efecto, una pregunta: Puede decirme elo host con direccin Internet 128.6.4.194 cul es su direccin Ethernet?. Cuando llega una respuesta, esta se oao aade a la tabla ARP y los futuros datagramas con ese destino sern enviados directamente.n a 24. 5. Congurando el enrutamiento de cada ordenador 24Este mecanismo fue diseado inicialmente slo para hosts que estuvieran directamente conectados a unano simple Ethernet. Si necesitamos comunicarnos con un host que se encuentra en otra Ethernet, se supone que la tabla de enrutamiento lo dirigir a un gateway. Dicho gateway, como es obvio, deber tener unaaa interface en nuestra Ethernet. El host deber averiguar la direccin de dicho gateway usando ARP. Este a o procedimiento es ms util que hacer que el ARP trabaje directamente con un ordenador en una red lejana, a puesto que no estn en la misma Ethernet, no disponemos de una direccin Ethernet para poder enviar los a o datagramas y, al enviar peticiones ARPpor ellas, nadie nos responder. a Los proxies ARP se basan en la idea de que los gateways acten como proxies de hosts lejanos. Supongamosu que tenemos un host en la red 128.6.5, con direcciones (es el ordenador A en diagrama siguiente), que va a enviar un datagrama al host 128.6.5.194 (el ordenador C) que se encuentra en una Ethernet distinta (subred 128.6.4). Hay un gateway que conecta ambas subredes, de direcciones 128.6.5.1 (gateway R) red 1red 2128.6.5 128.6.4 ============================ ================== | | || ||___|___________|____ __|____|__ __|____|____128.6.5.2 128.6.5.3128.6.5.1128.6.4.194 128.6.4.1 ___________ ___________ __________ ____________ ordenador A ordenador Bgateway Rordenador C Ahora supongamos que el ordenador A env una peticin ARP al ordenador C, pero C no es capaz de a o responder por s mismo. Al estar en redes distintas, C nunca ver la peticin ARP; sin embargo, el gateway a o actuar en su lugar. En efecto, nuestro ordenador pregunta: Puede decirme el host con direccin de Inter-ao net 128.6.4.194 cul es su direccin Ethernet?, y el gateway contesta: Yo soy 128.6.4.194 es 2:7:1:0:eb:cd, a o donde 2:7:1:0:eb:cd es la direccin Ethernet del gateway. Este pequeo truco funciona correctamente y haceo n pensar a nuestro host que 128.6.4.194 est conectado a la Ethernet local con direccin 2:7:1:0:eb:cd, pero,ao por supuesto, no es cierto. Cada vez que enviamos un datagrama a 128.6.4.194, nuestro host lo env a la a direccin Ethernet especicada y, puesto que es la direccin del gateway R, llega hasta dicho gateway. Y esoo entonces cuando se env a su destino. a Veamos que esto tiene el mismo efecto que tener una entrada en la tabla de enrutamiento diciendo que la ruta de 128.6.4.194 al gateway 128.6.5.1 es: 128.6.4.194128.6.5.1 UGH pe0 Con la excepcin de que, en lugar de tener el enrutamiento hecho a nivel de tabla de enrutamiento, se haceo a nivel de tabla ARP. Generalmente, es mejor usar tablas de enrutamiento, pero hay algunos casos en los que tiene sentido los usar proxyes ARP: cuando tenemos un host que no trabaja con subredes; cuando tenemos un host que no responde adecuadamente al redireccionamiento; cuando no queremos elegir un gateway determinado por defecto; cuando el software no es capaz de recuperarse de un enrutamiento fallido.La tcnica fue diseada originariamente para trabajar con hosts que no soportan subredes. Supongamos en que tenemos una red