Descarga la aplicación para disfrutar aún más
Esta es una vista previa del archivo. Inicie sesión para ver el archivo original
Redes de Ordenadores/4-routers.zip 4_routers_eng.pdf Universidad Carlos III de Madrid Department of Telematic Engineering Computer Networks Practice: Routing Bachelor in Informatics Engineering Computer Networks – Routing 1 1. Objective The main objectives of these practices are to become familiar with the work environment (GNU /Linux) and routers to be used in the course (Linksys WRT54GS). Once familiar with them, you must configure an IP network whose connectivity is achieved initially by assigning static routes and then enabling the RIP routing protocol. For this second part we start from a scenario whose address structure has been already studied and planned beforehand. For these practices, students will work on setting up a simple scenario consisting of a terminal device (PC), two routers Linksys WRT54GS and then two additional router (forming a network with 4 routers Linksys). In the sections corresponding to the IP network configuration, first you must have the addresses and static routes on both routers and the PCs that connect to the routers. Later, we employed a dynamic routing protocol (RIP) on routers. Each PC has the TCP/IP stack available which enables the communication through the network interface. In order to get information about the TCP/IP stack implementation, we recommend to use the manual pages (e.g.. 'man 7 ip'). 2. Laboratory Norms Read the laboratory text fully and carefully before starting. The laboratory evaluation is performed during the laboratory session. It is done by a series of milestones that must be completed. Inform the laboratory teacher when you complete the required configuration and have checked that the scenario fulfills the required functionality at each milestone. In order to do the laboratory it is necessary to have a Telematics Engineering Department teaching lab user account. For some of the commands it is necessary to have superuser (administrator) privileges. For those commands (address configuration, route configuration, etc.) you should place in front of the command the word sudo (your user password will be required). If you have problems, ask the lab teacher. Please consult the Linksys WRT54GS router manual available at http://www.it.uc3m.es/linksys/english Milestone XX The parts of the statement in this format show the milestones of the laboratory. Please let the lab teacher know when you complete each and every one of them. http://www.it.uc3m.es/linksys/english Computer Networks – Routing 2 3. Simple network interconnection The proposed work includes the set up and the configuration of a simple network scenario depicted in figure 1. Once the required network is configured, the next step is to check if it is working properly. 3.1. Part I – Steps to follow 1. Connect one interface of router A with the PC interface tagged as Prácticas1 (eth1) using a hub. Each computer lab has at least 2 Ethernet cards. Typically, the topmost is the one that provides public Internet connection (called eth0). Do not use in the practice eth0. Eth1 interface (labeled Eth-Pract) is to be used in practice. a. Assign an IP address to the Ethernet interface of the computer that is tagged as Prácticas (eth1) and that is connected to the Network A (the address must belong to the 10.0.A.0/24 prefix, A being any valid number that you arbitrarily select). There are several options to configure an IP address to a network interface in Linux. The most commonly used is the ifconfig command, but currently its usage is not recommended but to use the ip command because it is easier to use and more flexible. The ip command has a useful help manual, you are just required to type 'ip help', or: 'man ip'). Computer Networks – Routing 3 b. Assign an IP address to the interface of router A that is connected to the Network A (such IP address must belong to the prefix assigned to Network A, i.e. 10.0.A.0/24). Look up in the router’s manual how to configure IP addresses in the router interface. c. Verify that the router and the host can reach each other using the ping command (either from the PC and/or the router). 2. Connect routers A and B through their Ethernet interfaces. a. Assign IP addresses to the interfaces of the router used to connect to each other. These IP addresses must belong to the 10.0.0.0/30 prefix. b. Verify that the routers can reach each other using the ping command on each router. c. Assign an IP address to the interface of router B connected to Network B (this address must belong to the prefix assigned to the Network B i.e. 10.0.B.0/24 for any valid value of B, different than A). d. Configure in both routers the routing table entries so that router A can reach network B and vice versa. Check the manual of the router to find out how to configure static routes in the router. e. Configure the routing tables in the host in network A so it can reach network B. To configure the IP routing table of a Linux PC (and in general any UNIX machine), we have several options. The most classic is to use the route command, but - as with setting directions - now recommended not to use this command, in favor of the ip command. f. Use the ping command from the host connected to network A to the interface of router B connected to network B. g. Determine the route used by packets using the traceroute command. Milestone 1 Check the connectivity between the network A and B using the ping and traceroute commands from the host connected to network A to the interface of router B connected to network B. NOTE This first milestone is expected to be completed after the first lab session with some support from the teacher. For the rest of the practice, this support will be reduced and you will have to work with your team mate and improve your ability to search information. You will also have the CORE software to help you. The teacher will of course be available for you to solve any theoretical doubts you may have, but no practical doubts will be solved in class. Computer Networks – Routing 4 4. Part II –Network configuration This section is to build and configure the IP network corresponding to the specified in routing exercise. The logical architecture of the scenario is shown in Figure 2. This scenario corresponds to the network topology of a particular branch. Assign addresses to the network based on the results of addressing exercise. The design requirements for the Figure 2 scenario are as follows: The address range available for the branch is 10.0.X.0/24, where ‘X’ indicates the last two digit numbers of the NIA of any of the group The core network interconnecting all branches has the address range 10.0.0.0/24. Linksys WRT54GS routers will be used, each with 5 LAN (Ethernet) interfaces. Each branch has several areas, namely Office 1, Office 2 and a Server room. Because of the nature of the work performed in each area, independent networks are required, and are interconnected as shown in the diagram of Figure 2. This scheme provides a certain redundancy against link failures. Take this redundancy into consideration when designing the routing tables required in the routers. The network of Office 1 must have capacity to service up to 100 connected pieces of equipment (PCs, printers, etc.). Computer Networks – Routing 5 The network of Office 2 must have capacity to service up to 25 connected pieces of equipment (PCs, printers, etc.). The Servers network must have capacity to service up to 10 connected pieces of equipment. Addresses must also be assigned to the different point-to-point networks used to interconnect the routers. 4.1. Part II – Steps to follow The steps to carry out the practice are the following: 1. Build the Office 1, Office 2 and Server networks. For each network, use a hub/switch to connect the PC’s practice interface (eth1) to one of the Linksys router interfaces (R1, R2 o R3). Assign an IP addresses to the router interface and another to the PC practice interface. Check that connectivity exists between the PC and the router using, for example the ping command. 2. Interconnect routers R1, R2 and R3 as indicated in the figure. Assign IP addresses to each of the newly created point-to-point network that interconnects the routers. 3. Configure the required static routes in R1, R2, R3 and in the PCs connected to the different networks to insure total connectivity between all subnets. Check that connectivity exists between the different subnets using, for example, the ping command. Check also that the route taken by the packets is the right one, using the traceroute command (from the routers as well as from the PCs). 4. Connect R4 and configure the necessary routes in all pieces of equipment to insure connectivity of the global scenario. 5. Configure in the routers the additionally required backup routes, in such a way that if a link is broken between R1, R2 y R3, global connectivity is not lost. To simulate a link failure, use the interface configuration command shutdown to disable the interfaces of each of the two routers connected to the link (if you have doubts on this point, consult with the lab teacher). Milestone 2 Check that from any router and PC you have IP connectivity with any network interface of all pieces of equipment of the scenario (and that the route taken by the packets is the best possible). Check that global connectivity is maintained, even in the event of a link failure between R1, R2 y R3. Once the required configuration has been done, and the functionality checked, call the lab teacher to verify this milestone. Computer Networks – Routing 6 6. Remove the static routes previously configured in the routers. Now the RIP routing protocol will used. 7. Enable and configure the dynamic routing protocol RIP in the corresponding router interfaces. Verify, using the router’s visualization commands, that the RIP protocol is working correctly. 8. Disconnect the cable interconnecting routers R1 and R2. Milestone 3 Check that from any router and PC you have IP connectivity with any network interface of all pieces of equipment of the scenario (and that the route taken by the packets is the best possible). Verify, using the router’s visualization commands, that the RIP protocol is working correctly. Once the required configuration has been done, and the functionality checked, call the lab teacher to verify this milestone. Milestone 4 Verify that after some time, the routing protocol restores a path between the two office subnets. Verify that with the link between R1-R2 down – and once the convergence time has elapsed (knowing that the routers used are not capable of detecting the failure/recovery of a link when it happens) – from any router and PC you have IP connectivity with any network interface of all pieces of equipment of the scenario (and that the route followed by the packets is the best possible). Verify, using the router’s visualization commands, that the RIP protocol is working correctly. Once the required configuration has been done, and the functionality checked, call the lab teacher to verify this milestone. Computer Networks – Routing 7 5. References [1] GNU/Linux manual (man <command>) [2] Linksys WRT54GS router configuration manual, http://www.it.uc3m.es/linksys/english [3] Linux Advanced Routing & Traffic Control HOWTO, http://www.lartc.org/howto [4] Linux Networking HOWTO, http://www.tldp.org/HOWTO/Net-HOWTO/ http://www.it.uc3m.es/linksys/english http://www.lartc.org/howto http://www.tldp.org/HOWTO/Net-HOWTO/ 4_routers.pdf Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Redes de Ordenadores Prácticas con routers: configuración básica e interconexión de equipos Grado en Ingeniería Informática Redes de Ordenadores – Prácticas con routers 1 1. Objetivo Los principales objetivos de estas prácticas consisten en familiarizarse con el entorno de trabajo (GNU/Linux) y los routers que se van a emplear en la asignatura (Linksys WRT54GS). Una vez familiarizados con ellos, deberá configurarse una red IP cuya conectividad se logra inicialmente mediante la asignación de rutas estáticas y posteriormente habilitando el protocolo de encaminamiento RIP. Para esta segunda parte se parte de un escenario cuyo direccionamiento ya ha sido estudiado y planificado con anterioridad en el ejercicio de direccionamiento. Para realizar estas prácticas, los alumnos deberán trabajar sobre la configuración de un sencillo escenario formado por un equipo final (el PC del grupo), dos routers Linksys WRT54GS y posteriormente otros dos routers adicionales (formando en total una red con 4 routers Linksys). En los apartados correspondientes a la configuración de la red IP, en primer lugar se deberán configurar las direcciones y las rutas de forma estática tanto en los routers y los PCs que se conectan a los routers. Posteriormente, se empleará un protocolo de encaminamiento dinámico (RIP) en los routers. El sistema operativo accesible en cada PC del Laboratorio contiene la pila de protocolos conocida normalmente como pila TCP/IP. Esta pila de protocolos es la que hará posible la comunicación en red. Puede encontrar información sobre la implementación de la pila consultando las páginas de manual en la línea de comandos (por ej. man 7 ip). 2. Normas de la práctica Lea atentamente el enunciado hasta el final antes de empezar a ejecutar la práctica. La evaluación de la práctica se hace durante la propia sesión de prácticas. La evaluación se realiza en base a una serie de hitos que deben completarse. Avise al profesor de prácticas a medida que complete la configuración necesaria y haya comprobado que el escenario cumple con la funcionalidad que se requiere en cada hito. Para poder realizar la práctica es necesario disponer de una cuenta de usuario en los laboratorios docentes del Departamento de Ingeniería Telemática. Para algunos de los comandos es necesario tener permisos de superusuario (administrador). Para dichos comandos (configuración de direcciones, rutas, etc.), deben anteponer el comando sudo (se os pide vuestra contraseña de usuario). Si tiene problemas, pregunte al profesor de prácticas. Consulte el manual de los routers Linksys WRT54GS empleados en las prácticas, disponible en http://www.it.uc3m.es/linksys/ Hito XX Las partes del enunciado con este formato indican los hitos de los que se compone la práctica. Avise al profesor de prácticas a medida que vaya completando los diferentes hitos de la práctica. http://www.it.uc3m.es/linksys/ Redes de Ordenadores – Prácticas con routers 2 3. Parte I – Interconexión básica de equipos La práctica consiste en el despliegue y configuración de un pequeño escenario de red. La arquitectura del escenario de red a construir y configurar en la práctica aparece en la Figura 1. Una vez construido el escenario, se comprobará la correcta configuración del mismo. Figura 1 - Diagrama de interconexión (parte I) 3.1. Parte I – Pasos a seguir 1. Conecte, mediante la utilización de un hub, una interfaz del Router A con la Interfaz de Prácticas (eth1) de su PC. Cada ordenador del laboratorio dispone de al menos 2 tarjetas de red Ethernet. Normalmente, la situada más arriba es la que proporciona conexión a la Internet pública (llamada eth0). NO debe utilizar en esta práctica la interfaz eth0. La interfaz eth1 (etiquetada como Eth- Práct) es la que debe emplear en la práctica. a. Asigne una dirección IP a la interfaz de Prácticas del PC (eth1) conectada a la Red A (dicha dirección debe pertenecer al rango 10.0.A.0/24, donde A es cualquier número que usted elija). Para configurar la dirección IP de una interfaz de red en Linux, existen varias opciones. La más clásica es utilizar el comando ifconfig, pero en la actualidad se recomienda no usar dicho comando, en favor del comando ip, más versátil y fácil de usar. El comando ip tiene una ayuda en línea muy potente (basta con teclear en un terminal ip help, o utilizar las páginas de manual: man ip). b. Asigne una dirección IP a la interfaz del Router A conectada a la Red A (dicha dirección IP debe pertenecer al rango asignado a la Red A, es decir, 10.0.A.0/24). Consulte el manual del router para averiguar cómo se configuran direcciones en el router. c. Compruebe que existe conectividad entre el PC y el router utilizando el comando ping (desde el PC y/o el router). Redes de Ordenadores – Prácticas con routers 3 2. Interconecte los routers A y B, mediante un cable Ethernet. a. Asigne direcciones IP a las interfaces de los routers empleadas para interconectarlos. Dichas direcciones IP deben pertenecer a la subred que aparece en la figura (10.0.0.0/30). b. Compruebe que existe conectividad entre los dos routers, utilizando el comando ping del router. c. Asigne una dirección IP a la interfaz del Router B perteneciente a la Red B (dicha dirección debe pertenecer al rango asignado a la Red B, es decir, 10.0.B.0/24, donde B es cualquier número válido que usted elija, distinto de A). d. Configure en los dos routers las entradas necesarias en sus tablas de encaminamiento para que el Router A pueda alcanzar la Red B y viceversa. Consulte el manual del router para averiguar cómo se configuran de manera estática rutas IP en el router. e. Configure en el PC perteneciente a la Red A las entradas necesarias en su tabla de encaminamiento para poder alcanzar la Red B. Para configurar la tabla de encaminamiento IP de un PC Linux (y en general cualquier máquina de tipo UNIX), tenemos varias opciones. La más clásica es utilizar el comando route, pero – al igual que con la configuración de direcciones – se recomienda en la actualidad no utilizar dicho comando, en favor del comando ip. f. Haga un ping desde el PC conectado a la Red A a la interfaz del Router B perteneciente a la Red B. g. Compruebe la ruta que siguen los paquetes IP, utilizando el comando traceroute. Hito 1 Compruebe la conectividad entre las redes A y B del escenario, haciendo un ping y traceroute desde el PC conectado a la Red A a la interfaz del Router B perteneciente a la Red B. NOTA Este Hito 1 está previsto que se realice durante la primera sesión con apoyo del profesor. Para el resto de la práctica dicho apoyo se reducirá y habrá que confiar en el valor del equipo y ejercitar la habilidad de búsqueda de información. Se dispone también del software CORE como apoyo complementario. El profesor estará por supuesto para resolver todo tipo de dudas conceptuales que se puedan tener, pero a no se solucionarán problemas de carácter práctico. Redes de Ordenadores – Prácticas con routers 4 4. Parte II – Configuración de red IP En esta parte se debe construir y configurar la red IP correspondiente a la especificada en el ejercicio de direccionamiento. La arquitectura lógica de dicho escenario se puede apreciar en la Figura 2. Dicho escenario se corresponde a la topología de red de una sucursal en concreto. Asigne las direcciones a la red en base a los resultados del ejercicio de direccionamiento. Figura 2 – Diagrama de interconexión (parte II) A continuación se resumen los requisitos de diseño del escenario mostrado en la Figura 2: Para la sucursal dispone del rango de direcciones 10.0.X.0/24, donde ‘X’ indica los dos últimos dígitos del NIA de uno de los componentes. La red troncal que interconecta las sucursales tiene asignado el rango 10.0.0.0/24. Se utilizarán routers Linksys WRT54GS que cuentan con 5 interfaces de red LAN (Ethernet). Cada sucursal cuenta con varias dependencias, a saber la Oficina 1, la Oficina 2 y la sala dónde se alojan los diversos servidores de los que hace uso la sucursal. Por la naturaleza de las distintas tareas realizadas en cada dependencia, es necesario contar con redes independientes en cada uno de ellos. La unión entre las diversas redes se realiza tal y como figura en el esquema de la Figura 2. Dicho esquema proporciona cierta redundancia ante algunos fallos/roturas de enlaces. Tenga en cuenta dicha redundancia a la hora de diseñar las tablas de encaminamiento necesarias en los routers. Redes de Ordenadores – Prácticas con routers 5 La red de la Oficina 1 debe tener capacidad para albergar hasta 100 equipos finales (PCs, impresoras, etc.) conectados. La red de la Oficina 2 debe tener capacidad para albergar hasta 25 equipos finales (PCs, impresoras, etc.) conectados. La red de servidores debe tener capacidad para albergar hasta 10 equipos finales conectados. Se tienen que asignar direcciones también para las diferentes redes utilizadas para interconectar los diferentes routers. 4.1. Parte II – Pasos a seguir Para completar esta parte se deben realizar los siguientes pasos: 1. Construya las redes de la Oficina 1, Oficina 2 y Servidores. Para cada red, utilice un hub/switch o simplemente un cable Ethernet para conectar la interfaz de Prácticas (eth1) de un PC a una de las interfaces del router Linksys (R1, R2 o R3). Asigne direcciones IP a la interfaz del router y a la interfaz de Prácticas del PC. Compruebe que existe conectividad entre el PC y el router utilizando, por ejemplo, el comando ping. 2. Interconecte los routers R1, R2 y R3 entre sí como se indica en la figura. Asigne direcciones IP a cada una de las redes creadas para interconectar los routers. 3. Configure las rutas estáticas necesarias en R1, R2, R3 y en los PCs conectados a las diferentes redes, para asegurar una conectividad total entre todas las subredes formadas. Compruebe que existe conectividad entre las diferentes subredes utilizando, por ejemplo, el comando ping. Compruebe también que la ruta seguida por los paquetes es la correcta, utilizando el comando traceroute (tanto desde los routers como desde los PCs). 4. Conecte R4 y configure las rutas necesarias en todos los equipos para asegurar la conectividad del escenario global. 5. Configure en los routers las rutas de respaldo adicionales necesarias, de forma que si se rompe alguno de los enlaces entre R1, R2 y R3, no se pierda la conectividad global en el escenario. Para simular la rotura de un enlace, utilice el comando de configuración de interfaz shutdown para deshabilitar las interfaces de cada uno de los dos routers conectados al enlace cuya caída se quiere emular (si tiene dudas sobre este punto, consulte con el profesor de prácticas). Hito 2 Compruebe que desde cualquier router y PC tiene conectividad IP con cualquier interfaz de red de todos los equipos del escenario (y que la ruta seguida por los paquetes es la más óptima posible). Compruebe que la conectividad global se mantiene, a pesar de la caída de un enlace entre R1, R2 y R3. Una vez realizada la configuración necesaria y comprobada la funcionalidad requerida, avise al profesor de prácticas para que verifique este hito. Redes de Ordenadores – Prácticas con routers 6 6. Elimine las rutas estáticas configuradas anteriormente en los routers. A continuación procederemos a configurar los routers utilizando el protocolo de encaminamiento RIP. 7. Active y configure adecuadamente el protocolo de encaminamiento dinámico RIP en las interfaces de los routers en las que sea necesario. Compruebe, utilizando los comandos de visualización del router, que el protocolo de encaminamiento está funcionando como espera, redistribuyendo la información de encaminamiento necesaria. 8. Desconecte el cable que interconecta los routers R1 y R2. Hito 3 Compruebe que desde cualquier router y PC tiene conectividad IP con cualquier interfaz de red de todos los equipos del escenario (y que la ruta seguida por los paquetes es la más óptima posible). Verifique, utilizando los comandos de visualización de los que dispone el router, que el protocolo RIP está funcionando adecuadamente. Una vez realizada la configuración necesaria y comprobada la funcionalidad requerida, avise al profesor de prácticas para que verifique este hito. Hito 4 Compruebe que, transcurrido un tiempo, el protocolo de encaminamiento restaura un camino entre las dos subredes de oficinas. Compruebe con el enlace R1-R2 caído – y una vez transcurrido el tiempo de convergencia necesario (tenga en cuenta que los routers empleados no son capaces de detectar el fallo/recuperación de un enlace cuando éste se produce) – que desde cualquier router y PC tiene conectividad IP con cualquier interfaz de red de todos los equipos del escenario (y que la ruta seguida por los paquetes es la más óptima posible). Verifique, utilizando los comandos de visualización de los que dispone el router, que el protocolo RIP está funcionando adecuadamente. Una vez realizada la configuración necesaria y comprobada la funcionalidad requerida, avise al profesor de prácticas para que verifique este hito. Redes de Ordenadores – Prácticas con routers 7 5. Referencias y enlaces de interés [1] Páginas de manual de GNU/Linux (man <comando>) [2] Manual de configuración de los routers Linksys WRT54GS: http://www.it.uc3m.es/linksys/ [3] Linux Advanced Routing & Traffic Control HOWTO, http://www.lartc.org/howto En español: http://almacen.gulic.org/lartc/lartc.pdf [4] Linux Networking HOWTO, http://www.tldp.org/HOWTO/Net-HOWTO http://www.it.uc3m.es/linksys/ http://www.lartc.org/howto http://almacen.gulic.org/lartc/lartc.pdf http://www.tldp.org/HOWTO/Net-HOWTO Redes de Ordenadores/5_wireshark.pdf Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Redes de Ordenadores Prácticas de captura de tráfico Grado en Ingeniería Informática Redes de Ordenadores – Prácticas de captura de tráfico 2 1. Objetivo El objetivo de esta práctica es profundizar en el conocimiento de los protocolos más importantes del modelo TCP/IP vistos en la asignatura, empleando diversas aplicaciones del sistema operativo que las implementan, así como el capturador de tráfico / analizador de paquetes (Wireshark - http://www.wireshark.org/ ) utilizado en la práctica de concepto 1 (DNS). Tras la realización de esta práctica NO SERÁ NECESARIO PRESENTAR MEMORIA ALGUNA (aunque algunas preguntas de la práctica están redactadas como si hubiese que proporcionar respuestas en una memoria). Los conceptos aprendidos en esta práctica se evaluarán mediante una pequeña prueba durante el examen de prácticas (sesión “Lab eval” en el cronograma detallado de la asignatura). 2. Descripción A lo largo de la práctica se va a profundizar en conceptos fundamentales de protocolos correspondientes a distintos niveles del modelo TCP / IP. Concretamente, se estudiarán protocolos del nivel de enlace, del nivel de red y del nivel de transporte. En el nivel de enlace nos centraremos en Ethernet y ARP. Para el nivel de red, el análisis se realizará sobre IPv4. Finalmente para el nivel de transporte se estudiarán características del protocolo TCP. Con el objetivo de hacer esta práctica fácil de realizar se han elegido una serie de aplicaciones existentes en los sistemas operativos GNU Linux y Microsoft Windows (la práctica puede hacerse en ambos sistemas operativos). Cabe destacar que el uso de algunos de los comandos es diferente en base al sistema operativo empleado. La práctica ha sido dividida en varias dos partes independientes, entre las que se reparten una serie de pruebas, correspondientes a cada uno de los niveles expuestos anteriormente. 2.1. Parte I [Niveles de transporte y red] 2.1.1. – Nivel de transporte En este apartado se va a analizar uno de los principales protocolos del nivel de transporte empleado en Internet, el Transmission Control Protocol (TCP). Siga los siguientes pasos: 1.- Acceda a la siguiente dirección web: http://www.testdevelocidad.es/ 2.- Abra Wireshark y póngalo a capturar en la interfaz correspondiente. 3.- Ejecute el test de velocidad de la página. 4.- Una vez finalizado el test detenga la captura. Responda las siguientes preguntas: http://www.wireshark.org/ http://www.testdevelocidad.es/ Redes de Ordenadores – Prácticas de captura de tráfico 3 P1) Identifique los mensajes correspondientes al proceso de “three-way-handshake”. ¿Qué información se intercambia en cada uno de ellos? ¿Cuáles son los números de secuencia y de ACK en cada mensaje? P2) Identifica el primer mensaje enviado una vez realizado el “three-way-handshake”. ¿Cuáles son la IP y puerto de origen del mensaje? ¿Y la IP y puerto de destino? ¿Qué número de secuencia tiene el mensaje? ¿Cuál será el número de ACK esperado en la respuesta a este mensaje? P3) Identifique el primer mensaje enviado en el test de bajada. ¿Cuál es el puerto de destino de la conexión? ¿Y el puerto origen? Adjunte una captura de pantalla. P4) Identifique el primer mensaje enviado en el test de subida. ¿Cuál es el puerto de destino de la conexión? ¿Y el puerto origen? ¿Son los mismos puertos que en la prueba de bajada? Adjunte una captura de pantalla. P5) Seleccione el primer mensaje enviado en el test de bajada. Adjunte una captura de pantalla con la gráfica del “Throughput” (Statistics TCP Stream Graph …). Sobre la gráfica obtenida en la P5: P6) ¿Cuánto tiempo ha durado el test de bajada? P7) ¿Se corresponde la velocidad media de descarga con la obtenida en el test? ¿Qué velocidad es esa (en KBytes/s)? ¿Ha sido la velocidad más o menos constante a lo largo de la prueba? ¿Por qué cree que ha sido así? Justifique todas las respuestas. 2.1.2. – Nivel de red En este apartado se va a analizar uno de los principales protocolos del nivel de red, el Internet Protocol (IP). Más concretamente IPv4. Los pasos a seguir para poder contestar a las preguntas correspondientes son los siguientes: 1.- Abrir Wireshark y a continuación una consola de comandos. 2.- Escribir en la consola el comando necesario para realizar un ping a la puerta de enlace predeterminada del equipo (IP del router que brinda al equipo acceso a la red). ¡No ejecutar todavía! 3.- Poner a capturar Wireshark en la interfaz correspondiente. 4.- Ejecutar el comando que estaba escrito en la consola de comandos. 5.- Tras capturar unos cuantos mensajes de ping, detener la captura. P1) ¿Cuál es el tamaño total del mensaje ICMP? ¿Cuántos datos se envían dentro del mensaje ICMP? Describa cuánto ocupa cada parte del mensaje. P2) ¿Cuál es el puerto origen y destino del mensaje ICMP? ¿Por qué cree que es así? Justifique las respuestas. Redes de Ordenadores – Prácticas de captura de tráfico 4 Repita los pasos anteriores, pero esta vez envíe 60000 bytes en cada mensaje. Conteste las siguientes preguntas: P3) Explique detalladamente cómo ha cambiado la situación ahora con respecto a la prueba anterior. P4) Localice el fragmento en el que está la cabecera del mensaje ICMP (adjunte captura de pantalla significativa). P5) ¿Por qué no se recibe ninguna respuesta hasta que el destino no ha recibido todos los fragmentos en lugar de contestar uno a uno? P6) ¿Cuál es el contenido del campo de datos? Indique el sistema operativo sobre el que ha realizado la prueba. Redes de Ordenadores – Prácticas de captura de tráfico 5 2.2. Parte II [Nivel de enlace] 2.2.1. Ethernet Para poder contestar las preguntas lleve a cabo los siguientes pasos: 1.- Abrir Wireshark y a continuación una consola de comandos. 2.- Escribir en la consola el comando necesario para realizar un ping a la puerta de enlace predeterminada del equipo (IP del router que brinda al equipo acceso a la red). ¡No ejecutar todavía! 3.- Poner a capturar Wireshark en la interfaz correspondiente. 4.- Ejecutar el comando que estaba escrito en la consola de comandos. 5.- Tras capturar unos cuantos mensajes de ping, detener la captura de paquetes en Wireshark. Conteste las siguientes preguntas: P1) ¿Cuál es la dirección MAC de origen y de destino en el mensaje ICMP? P2) ¿Puede ver en el mensaje la dirección IP de la puerta de enlace? ¿Y su MAC? Justifique todas las respuestas. P3) ¿Qué significan los flags del mensaje ICMP en la capa Ethernet? Vuelva a repetir los pasos del 1 al 5, pero esta vez, realice el ping a www.google.com. Conteste las siguientes preguntas: P4) ¿Cuál es la dirección MAC de origen y de destino en el mensaje ICMP? P5) ¿Puede ver en el mensaje la dirección IP de Google? ¿Y su MAC? Justifique todas las respuestas. 2.2.2. ARP P6) Haciendo uso del comando arp, obtenga la tabla ARP de la máquina. Describa los distintos campos y adjunta una captura de pantalla. Siga los siguientes pasos: 1.- Abrir la aplicación Wireshark y poner a capturar en la interfaz correspondiente. 2.- Ejecute un ping a www.google.com. 3.- Tras capturar unos cuantos mensajes de ping, detener la captura. P7) Localice todos los mensajes que han permitido obtener la IP de Google (tanto DNS como ARP), y justifique cómo se ha podido llevar a cabo, paso a paso, la identificación del mismo. http://www.google.com/ http://www.google.com/ Redes de Ordenadores – Prácticas de captura de tráfico 6 Ahora siga los siguientes pasos: 1.- Abrir la aplicación Wireshark y poner a capturar en la interfaz correspondiente. 2.- Ejecutar en una consola de comandos lo siguiente: En Windows: netsh interface ip delete arpcache ipconfig /flushdns En Linux: sudo ip neigh flush dev eth0 sudo /etc/init.d/nscd restart 3.- Ejecutar un ping a www.google.com 4.- Tras unos cuantos mensajes de ping, detener la captura. P8) Explique para qué sirven los comandos del paso 2. P9) Localice todos los mensajes que han permitido obtener la IP de Google (tanto DNS como ARP). ¿Ha cambiado algo respecto al caso analizado en la P6? Justifique la respuesta. 2.2.3. Envenenamiento ARP Abra un terminal e introduzca, mediante los comandos apropiados, una entrada en la tabla ARP de forma que a la hora de hacer ping desde el host ‘A’ a otro host del aula ‘B’, en vez de llegar el mensaje a ‘B’ (como sería lógico) llegue a ‘A’. Capture esto con Wireshark. P10) Adjunte capturas de pantalla significativas en las que se muestre la nueva tabla ARP y los mensajes capturados por Wireshark. Describa el procedimiento empleado para conseguir el desvío de tráfico propuesto, indicando los comandos utilizados y justificando su uso. http://www.google.com/ Redes de Ordenadores – Prácticas de captura de tráfico 7 3. Consejos y buenas prácticas A la hora de hacer las capturas, intentar tener el mínimo número de aplicaciones corriendo que hagan uso de la red. Es inevitable que existan servicios corriendo en segundo plano, como el que se ocupa de mantener el sistema de fichero en red bajo las cuentas de Linux, pero siempre se pueden cerrar otras aplicaciones innecesarias que lo único que van a hacer es meter “ruido” en la captura y hacer más complejo el proceso de análisis. Utilizar la herramienta de filtros incorporada en Wireshark. Se pueden consultar cómo construir filtros tanto en el manual de usuario de la aplicación como en la ayuda on-line. El uso de esta herramienta os va a ahorrar muchos problemas y tiempo. Revisar bien los comandos que necesitáis (así como sus opciones) y aseguraros de tener un plan de acción antes de empezar con la práctica “a lo loco”. Pensad qué datos necesitáis para hacer según qué cosas, qué comandos pueden resultar más útiles y llevaros menos tiempo y finalmente probarlo. Redes de Ordenadores/p3.pptxTHE EXERCISE Consider the topology shown in Figure 4.17. Denote the three subnets with hosts (starting clockwise at 12:00) as Networks A, B, and C. Denote the sub-nets without hosts as Networks D, E, and F. a) Assign network addresses to each of these six subnets, with the follow-ing constraints: All addresses must be allocated from 214.97.254/23; Subnet A should have enough addresses to support 250 interfaces; Sub-net B should have enough addresses to support 120 interfaces; and Subnet C should have enough addresses to support 120 interfaces. Of course, subnets D, E and F should each be able to support two interfaces. For each subnet, the assignment should take the form a.b.c.d/x or a.b.c.d/x – e.f.g.h/y. b) Using your answer to part (a), provide the forwarding tables (using longest prefix matching) for each of the three routers. 1 ISP assigns: 214.97.254.0/23 Requirements: Network A: 250 hosts Network B: 120 interfaces Network C: 120 end systems Networks D, E and F: 2 interfaces A B C D E F RA RB RC Network A: /24 Network B: /25 Network C: /25 Not enough addresses!! DO NOT follow existing solution out there Not a good solution for this course Really weird solution… 2 THE EXERCISE Consider the topology of the following picture. a) Assign addresses to the each one other 6 subnets taking into account the following requirements: all the addresses must be assigned from 128.119.252.0/23; subnet A must be able to hold up to 126 hosts; subnet B must be able to hold up to 62 interfaces and subnet C must hold up to 15 end systems. Of course subnets D, E and F should support two interfaces. Assign the addresses using the format a.b.c.d/x. b) Using your answer to part (a), provide the forwarding tables (using longest prefix matching) for each of the three routers using the following format: destination IP / prefix / next hop (write the IP address using decimal numbers and the prefix using ’/[0..32]’). 3 Redes de Ordenadores/Preguntas y Problemas.txtLas preguntas y los problemas son del libro "Redes de computadoras: un enfoque descendente", 5ed. Kurose-Ross, cuyos enunciados tengo (no puedo subirlos aquí). Redes de Ordenadores/Práctica Direccionamiento.zip nodes.conf # nodes.conf: CORE node templates customization file. # format: index {name normal-icon tiny-icon services type metadata} 1 { router router.gif router.gif {StaticRoute IPForward} netns {built-in type for routing} } 2 { host host.gif host.gif {StaticRoute} netns {built-in type for servers} } 3 { PC pc.gif pc.gif {StaticRoute} netns {built-in type for end hosts} } 4 { mdr mdr.gif mdr.gif {zebra OSPFv3MDR vtysh IPForward} netns {built-in type for wireless routers} } 5 { prouter router_green.gif router_green.gif {zebra OSPFv2 OSPFv3 vtysh IPForward} physical {built-in type for physical nodes} } 6 { xen xen.gif xen.gif {zebra OSPFv2 OSPFv3 vtysh IPForward} xen {built-in type for Xen PVM domU router} } prefs.conf # CORE 4.5 GUI preference file set g_mrulist "/home/core/.core/configs/cutre.imn /home/core/.core/configs/sample1.imn" array set g_prefs { default_conf_path "/home/core/.core/configs" gui_3d_path "/usr/local/bin/sdt3d.sh" gui_canvas_refpt "0 0 47.5791667 -122.132322 2.0" gui_canvas_scale "150.0" gui_canvas_x "1000" gui_canvas_y "750" gui_ipv4_addr "10.0.0.0" gui_ipv4_addrs "10.0.0.0 192.168.0.0 172.16.0.0" gui_ipv6_addr "2001::" gui_ipv6_addrs "2001:: 2002:: a::" gui_num_canvases "1" gui_save_pos "0" gui_save_size "0" gui_show_tooltips "1" gui_snap_grid "0" gui_term_prog "lxterminal -e" gui_text_editor "nano" log_path "/tmp/core_logs" num_recent "4" shell "bash" } 3_direccionamiento.pdf Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Redes de Ordenadores Ejercicio de direccionamiento Grado en Ingeniería Informática 1. Objetivo El objetivo fundamental de este ejercicio es familiarizarse con el problema de diseño y asignación de direcciones IP en un escenario de red determinado, con una serie de requisitos particulares. Es necesario ENTREGAR UNA SOLUCIÓN DE DISEÑO ANTES DE COMENZAR LA SESIÓN DE CLASE EN LA QUE SE RESUELVE LA PRÁCTICA (se habilitará un entregador en Aula Global para subir la solución). Es importante destacar que en la práctica de encaminamiento con routers, el plan de direccionamiento NO será facilitado en el enunciado de la práctica, por lo que se deberá utilizar uno basado en el diseño que realice como resultado de este ejercicio. El ejercicio debe ser realizado POR PAREJAS. Es importante leer atentamente el enunciado hasta el final antes de empezar a realizar la asignación de direcciones IP, teniendo en cuenta todos los requisitos que se exigen en el diseño. Una vez que se haya hecho el diseño de la red se procederá a su implementación en el programa CORE, para comprobar que todo es correcto antes de pasar a la práctica de routers. 2. Descripción Una importante empresa necesita interconectar sus equipos de una determinada manera. Para ello necesita el diseño completo de su red real. La empresa dispone de varias sucursales, conectadas todas ellas entre sí. Cada una de las sucursales cuenta con un número dado de equipos (ordenadores, impresoras, etc.) conectados en red. Las sucursales se comunican entre sí gracias a una red troncal (backbone) a la cual se conecta un router de cada sucursal. 2.1. Requisitos de diseño global La empresa en su conjunto dispone del rango de direcciones 10.0.0.0/16, el cual se divide entre las sucursales de la siguiente forma: • Todas las sucursales están conectadas a una red troncal que tiene asignado el rango 10.0.0.0/24. • Cada sucursal tiene el rango 10.0.X.0/24, donde ‘X’ indica el número de la sucursal. Por ejemplo, la sucursal 1 dispone del rango 10.0.1.0/24, la sucursal 2 del rango 10.0.2.0/24 y así sucesivamente. • Cada grupo tiene que diseñar UNICAMENTE UNA SUCURSAL y usarán los dos últimos dígitos del NIA de cualquiera de los componentes del grupo como valor para la 'X'. 2.2. Requisitos de diseño para las redes de la sucursal • Se utilizarán routers que cuentan con 5 interfaces de red LAN (Ethernet). No es necesario usar todas las interfaces (sobran interfaces). • La sucursal a diseñar cuenta con varias dependencias, a saber, la Oficina 1, la Oficina 2 y la sala donde se alojan los diversos servidores de los que hace uso la sucursal. Por la naturaleza de las distintas tareas realizadas en cada dependencia, es necesario contar con redes independientes en cada una de ellas. • La red de la Oficina 1 debe tener capacidad para albergar hasta 120 equipos finales (PCs, impresoras, etc.) conectados. • La red de la Oficina 2 debe tener capacidad para albergar hasta 27 equipos finales (PCs, impresoras, etc.) conectados. • La red de Servidores debe tener capacidad para albergar hasta 12 equipos finales conectados. • Los routers de la redes de Oficinas deben estar interconectados entre sí mediante una línea dedicada punto a punto. • Cada uno de los routers de las redes de Oficinas está conectado, mediante una línea dedicada punto a punto diferente, con el router de la red de Servidores. • La conexión de la sucursal con el backbone de interconexión central entre sucursales se realiza a través de un router independiente, que se conecta mediante una línea dedicada al router que da servicio a la red de Servidores. No es necesario configurar para esta práctica una ruta por defecto para este router, pero SÍ para los demás. • La topología diseñada debe proporcionar cierta redundancia ante algunos fallos/roturas de enlaces. Tened en cuenta dicha redundancia a la hora de diseñar las tablas de encaminamiento necesarias en los routers (es necesario introducir rutas alternativas). • También es necesario asignar direcciones y las rutas correspondientes en las redes utilizadas para interconectar los diferentes routers. • Es obligatorio realizar el direccionamiento desde el mayor rango (es decir, empezando por las redes que necesitan albergar un mayor número de equipos) hasta el menor. Es decir, asignando direcciones SUCESIVAMENTE empezando por la 10.0.X.0 usando los prefijos adecuados en el siguiente orden: /24, /25, /26 … según el diseño realizado. De esta manera las direcciones libres quedarán al final del rango. 2.3. Metodología para el diseño Los pasos a seguir para la realización del ejercicio son los siguientes: 1. Diseñar la topología de la red, definiendo el número de subredes necesario. 2. Definir el número de direcciones que necesita cada subred. 3. Asignar el rango mínimo necesario de direcciones a cada subred. 4. Definir las tablas de rutas de todos los equipos. En los routers, las rutas deben configurarse de forma que se aproveche la redundancia física existente, de manera que la comunicación sea tolerante a algunos fallos que puedan producirse en determinados enlaces entre routers. 5. Probar el diseño con el programa CORE. Para ello se implementará el diseño utilizando esta herramienta y se comprobará la correcta conexión entre los distintos elementos mediante el comando ping/traceroute. 3. Programa CORE CORE es una herramienta que permite implementar y emular redes complejas. Dispone de una interfaz visual para el diseño de la red e introducir los distintos elementos: host, routers, etc. y conectarlos entre ellos. Se puede instalar fácilmente bajándolo del siguiente enlace: http://cs.itd.nrl.navy.mil/work/core/. Sólo está disponible para Linux, pero puede usarse también en Windows por ejemplo, instalando un gestor de máquinas virtuales como por ejemplo VMWare o Virtual Box: https://www.virtualbox.org/. En la página de descarga del CORE puede bajarse tanto el paquete de Linux como directamente la imagen a cargar en el gestor de máquinas virtuales. Aunque se recomienda instalarlo en una máquina personal para mayor flexibilidad, el programa CORE está disponible en los laboratorios de Telemática (4.1.B01y 4.1.B02 en Leganés y 1.1.A16 en Colmenarejo). Para tener acceso a esos laboratorios es necesario abrirse una cuenta es necesario abrir una cuenta en el departamento (en http://www.etl.it.uc3m.es/Apertura_de_cuentas_de_Alumnos_y_Master ) Para lanzar la máquina virtual en el laboratorio se ejecuta el siguiente comando desde un terminal: /usr/dist/bin/core.sh start Dentro de la máquina virtual y antes de ejecutar el programa CORE es necesario: • Descargar los ficheros nodes.conf y prefs.conf proporcionados en AulaGlobal. • Guardar estos ficheros en la carpeta /home/core/.core/ (sobreescribir los ficheros existentes). Dentro de la máquina virtual pinchar en el icono CORE que se encuentra en el Escritorio. Antes de comenzar tenga en cuenta las siguientes consideraciones: 1. Cada elemento es configurable (direcciones IP y tabla de rutas) independientemente: 2. DIRECCIONES IP: botón derecho sobre el elemento → configure. Modificamos la IPv4 de cada interfaz según nuestro diseño. 3. TABLAS DE RUTAS: botón derecho sobre el elemento → services → icono derecha de StaticRoute (ver figura 1). Escribir los comandos para introducir las rutas necesarias y pulsar Apply. Los comandos aquí introducidos se ejecutarán automáticamente al comienzo de la simulación, generando así las tablas de rutas de cada elemento. 4. Una vez definidas TODAS las direcciones IP y tablas de rutas según el direccionamiento realizado, se procede a la emulación de la red. 5. EMULACIÓN: tras presionar el botón de emulación (play) esperar hasta que la red sea estable (cuando desaparezcan los cuadros verdes). 6. COMPROBAR TABLAS: dentro de la emulación, comprobar mediante ip route/ping/traceroute que las tablas son correctas. Ejecute estos comandos en una terminal individual para cada elemento (doble click sobre un elemento o click botón derecho → shell window → bash) Puede usarse también la herramienta de CORE, Two-Node, integrada en el panel izquierdo de navegación. No obstante es muy recomendable usar directamente la terminal puesto que es lo que se tendrá disponible en la práctica de routers. 7. GUARDAR FICHERO CONFIGURADO: es posible guardar toda la red configurada (topología, tablas de rutas, etc.) en un fichero .IMN. Para ello: File → Save as imn. IMPORTANTE: en estas terminales es posible configurar los elementos bien gráficamente (doble click en cada elemento) o bien como si se tratara de elementos reales (accediendo en modo terminal durante la emulación y modificando mediante los comandos correspondientes las direcciones IP, las tablas de rutas, activar y desactivar interfaces, hacer pings o traceroutes). Sin embargo, los cambios realizados durante la simulación (modo terminal) son temporales y se pierden al pararla. Para hacer los cambios permanentes (y que queden almacenados en el fichero .IMN), deben hacerse directamente en la herramienta gráfica. Figura 1: Ejemplo para añadir una ruta mediante Static Route 4. Requisitos Para aprobar la práctica es necesario realizar las siguientes tareas: 1. Diseñar la topología física de la red de una sucursal. 2. Diseñar la asignación de direcciones IP para una sucursal incluyendo qué direcciones y máscaras están asociadas a cada subred en el escenario. 3. Calcular las tablas de rutas de los routers y sistemas finales conectados a cada una de las redes. 4. La asignación de direcciones IP debe ser la más eficiente posible (es decir, debe dejar bloques de direcciones sin asignar para un uso futuro, siempre que sea posible). 5. Adjuntar un fichero .imn con la implementación de la red (direcciones IP asignadas y tablas) y un documento .pdf las siguientes capturas de pantallas para cada uno de los apartados anteriores: A) TOPOLOGÍA DE LA SUCURSAL (obligatorio mostrar) • Todos los routers • 1 equipo por red independiente (NO hace falta dibujar todos los equipos finales de cada subred) • Direcciones IPv4 de cada interfaz utilizada. • Rango de direcciones asociado a cada red independiente. (Recuerde añadir también los rangos de las redes de interconexión) CORE: View → Show → Todo menos IPv6 y Link Labels B) TABLA DE RUTAS DE CADA DISPOSITIVO (obligatorio mostrar) • Una captura, por dispositivo, mostrando las rutas definidas en el dispositivo tal como se muestra en el ejemplo de la Figura 2. Figura 3: Ejemplo para captura de tabla de rutas de un equipo en la red de servidores C) Comando Traceroute: • Una captura de la ejecución del comando traceroute entre un elemento de la oficina 1 y un elemento de la red de servidores (bien una captura de la ventana del Two-node Tool o una captura del traceroute efectuado desde la terminal). Figura 4: Ejemplo para captura del comando traceroute D) GUARDAR FICHERO .IMN: File → Save as imn... Una vez completada las anteriores tareas y parada la emulación se debe guardar el fichero en formato .imn. Este fichero debe subirse a la tarea habilitada en AulaGlobal junto al .pdf de las capturas (subir ambos ficheros en un .zip). 4. Entregas El fichero .imn y el .pdf con las captura de pantalla especificadas en la sección 3 serán entregados a través de la actividades habilitadas al efecto en Aula Global. El nombre de dicho fichero debe seguir el siguiente formato: RO-PdC3-[Campus][Grupo]-[NIA].[imn|pdf|zip] donde NIA es el NIA que se ha utilizado como valor para la sucursal. Ejemplo válido: RO-PdC3-L81-100055221.zip No es necesario entregar memoria de la práctica. NOTA: la práctica la entregará únicamente el alumno cuyo NIA coincida con el nombre del fichero (que será el usado como valor para la sucursal). Evidentemente en la portada del .pdf que se entrega se incluirá el nombre y el NIA de cada uno de los miembros de la pareja. 5. Referencias y enlaces de interés [1] Páginas de manual de GNU/Linux (man <comando>) [2] Manual de configuración de los routers Linksys WRT54GS: http://www.it.uc3m.es/linksys/ [3] Linux Advanced Routing & Traffic Control HOWTO, http://www.lartc.org/howto [4] En español: http://almacen.gulic.org/lartc/lartc.pdf [5] Linux Networking HOWTO, http://www.tldp.org/HOWTO/Net-HOWTO 3_direccionamiento_eng.pdf Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Computer Networks IP Address Assignment Exercise Grado en Ingeniería Informática 1. Goals The main objective of this exercise is to get used to the problem of designing and assigning IP addresses in a given networking scenario, with room for customization. It is NECESSARY TO PROVIDE A DESIGN SOLUTION BEFORE THE CLASS WHERE THE EXERCISE IS SOLVED (using Aula Global). It is important to realize that NO routing plan will be provided in this assignment; hence you must create one based on the design choices you make during this exercise. This exercise is done in pairs. It is important to read through the entire document before starting the IP addressing process, in order to take all the requirements into account for your design. Once the network design is ready, you will proceed to implement it under CORE program, in order to check everything is correct before starting the next assignment (routers). 2. Problem description You are in charge of interconnecting the equipment of a large company. The company has several branches, all connected to each other. Each branch has a given number of devices (computers, printers, routers, etc.) to be connected through the network. Branches communicate with each other through a backbone network that connects to the router of each branch. 2.1. Global requirements The enterprise "owns" the 10.0.0.0/16 address range, which is divided between the branches as follows. • All the branches are connected to a backbone network that must be addressed within the 10.0.0.0/24 range. • Each branch has 10.0.X.0/24 range, where 'X' indicates the number of the branch. For example, the branch 1 has 10.0.1.0/24 range, the branch 2, 10.0.2.0/24 range, and so on. • Every group must ONLY DESIGN ONE BRANCH and will use the last two digit numbers of the NIA of any of the group components as the value for 'X'. 2.2. Requirements for the design of the branch networks • Routers can be configured with a maximum of 5 LAN interfaces. It is not necessary to use them all (some of them will remain unused). • The branch to be designed has three units, namely, the Office 1, Office 2 and the room that hosts the various servers used by the branch. Due to the nature of the various tasks performed in each unit, it has been decided to have one separate network for each one. • The network for Office 1 must be able to accommodate up to 120 terminal devices (PCs, printers, etc.). • The network for Office 2 must be able to accommodate up to 27 terminal devices (PCs, printers, etc.). • The network dedicated to the servers must be able to accommodate up to 12 terminal devices. • The routers of the three branch networks must be interconnected together with a dedicated point-to-point link between them. • Each one of the routers of the office networks’ is connected through a dedicated point-to-point link with the router of the network that hosts the servers. • The connection of the branch to the central backbone is done through a separate router, which connects via a dedicated line to the router that serves the network hosting the servers. It is not necessary for this practice to configure a default route for this router (but it IS necessary for the rest of the routers). • The topology design should provide redundancy against faults / broken links. Please note that redundancy must also be taken into account when configuring the routing tables (redundant routes are required in the forwarding table). • It is necessary to also assign addresses (and the corresponding routes) to the networks that are "only" used to interconnect the different routers. • It is mandatory to perform the addressing from the largest range (i.e. starting with the networks that require a larger number of end systems) to the lowest. That is, SUCCESIVELY assigning addresses starting with the 10.0.X.0 using the corresponding prefixes in the following order: /24, /25, /26,… depending on the design. This way, the unused addresses with remain at the end of the range. 2.3. Design methodology The steps for the realization of this project are the following: 1. Design the network topology, defining the number of subnets needed. 2. Define the number of addresses required for each subnet. 3. Assign the minimal required range of addresses for each subnet. 4. Define the routing tables of all devices. Routers must be configured to take advantage of the existing physical redundancy, protecting services against link failures. 5. Check the design under CORE program. Design will be implemented in CORE and the correctness of the connections among the elements will be checked by using ping/traceroute. 3. CORE program CORE is a tool that allows implementation and emulation of complex networks. It offers a graphical interface to design the network and introduce the different elements: hosts, routers, etc… and interconnect them. This program can be easily installed from the following link http://cs.itd.nrl.navy.mil/work/core/. It is only available for Linux, but can also be used in Windows for instance installing a Virtual Machine manager (like VMWare or Virtual Box https://www.virtualbox.org/). From the CORE download page you can download both the Linux installation package or the image you can directly load into the virtual machine manager of your choice. Although it is recommended to install it under a personal machine for more flexibility, CORE is available in the labs of the Telematics Department (4.1.B01 and 4.1.B02 in Leganés and 1.1A16 in Colmenarejo). To access the lab you should open an account in the Department (in http://www.etl.it.uc3m.es/Apertura_de_cuentas_de_Alumnos_y_Master ). In order to launch the virtual machine in the lab, you need to execute the following command: /usr/dist/bin/core.sh start Once inside the virtual machine and before executing CORE you need to: • Download the files node.conf and prefs.conf available in Aula Global. • Store these files in the folder /home/core/.core/ (overwriting the files already there) Once inside the virtual machine, click in the CORE icon you may find in the desktop. Before starting to implement your design take into account the following considerations: 1. Each device is independently configurable (IP, address and routing table): 2. IP addresses: right-click on the device � configure. Modify the IPv4 of each interface depending on your design. 3. Routing tables: right-click on the device �services�icon on the right of StaticRoute (Figure 1). Write all the command required to introduce the routes for the device and click on Apply. Commands introduced here will be automatically executed upon simulation start, generating the routing tables for the device. 4. Once ALL IP address and routing tables have been assigned, you can proceed to emulate the network. 5. EMULATION: after pressing emulation button (play), wait until the network becomes stable (green squares disappear). 6. Check routing tables: during the emulation, check by commands ip route/traceroute/ping that everything is correct. Execute these commands on an individual terminal for each device: right-click on the element �shell window �bash. You can also use the CORE tool ‘Two Node’ integrated in the left navigation panel. However it is highly recommended to use the terminal directly since this is what will be later on available during the lab practice with real routers. 7. Save configuration file. It is possible to save all the configured network (topology, routes, etc.) in an IMN file. To do this: File → Save as imn IMPORTANT: under these terminals it is possible to configure the devices graphically (double- clicking on them) or as if they were real network elements (accessing with a terminal with double click during the emulation and modifying by means of the corresponding commands the IP addresses, routing tables, enable and disable interfaces, execute ping or traceroute). However, all the different changes performed during a emulation (with the terminal) are just temporal and they are lost when stopping it. If you want to make the changes permanent (so that you can store them in the IMN file), you must do them using the graphical tool. Figure 1: Example to add a route with Static Route 4. Requirements To pass this assignment, you must perform the following tasks: 1. Design the physical topology of a branch network. 2. Allocate IP addresses to a branch: include the full addressing plan, i.e., addresses and masks associated with each subnet being deployed. 3. Obtain the routing tables of routers and end systems connected to each network. 4. The assignment of IP addresses must be performed in the most efficient way (i.e., address blocks should be left unassigned for future use, whenever possible). 5. Store the implementation (IP addresses and routing tables assigned) in a .imn file and prepare a .pdf file enclosing the following screenshots for each of the previous points: A) BRANCH TOPOLOGY (it is mandatory to show the whole network) • All the routers • 1 terminal per independent network (it is NOT necessary to include all the terminals of each subnet) • IPv4 addresses of each interface • Address range associated to each independent network (don’t forget to add the interconnecting networks’ ranges too) CORE: View → Show → Everything but IPv6 and Link Labels Figure 1: Screenshot example for the network topology (hidden network) B) ROUTING TABLE FOR EACH DEVICE (it is mandatory to show the whole network) • A screenshot per device, showing the routes defined in it as done in Figure 2. Figure 3: Screenshot example for the routing table of a device in the server network. C) Traceroute command: • A screenshot of the execution of the traceroute command from an element in Office 1 and an element in the server network (both a screenshot of the Two-node Tool or a screenshot of a traceroute performed from the terminal is fine). Figure 4: traceroute screenshot example D) STORE FILE .IMN: File → Save as imn... Once all these tasks have been completed and the emulation has been stopped, you have to store the file in .imn format. This file must be uploaded to the activity enabled for it in Aula Global, along with the .pdf file with the screenshots (upload them all into a zip file). 4. Delivery The .imn and the .pdf files together with the screenshots specified in section 3 will be delivered through Aula Global. The name of the uploaded file should follow this format: RO-PdC3-[Campus][Group]-[NIA].[imn|pdf|zip] where NIA is the NIA used to configure the branch. Valid example: RO-PdC2-L81-100055221.zip It is NOT necessary to deliver any physical memory. NOTE: the exercise will only be delivered by one student (the one whose NIA is included in the name of the file that is the same used to configure the branch). Obviously in the cover page of the .pdf delivered, both names and NIAs will be included. 5. References [1] GNU/Linux manual (man <comando>) [2] Routers Linksys WRT54GS configuration manual: http://www.it.uc3m.es/linksys/ [3] Linux Advanced Routing & Traffic Control HOWTO, http://www.lartc.org/howto [4] In Spanish: http://almacen.gulic.org/lartc/lartc.pdf [5] Linux Networking HOWTO, http://www.tldp.org/HOWTO/Net-HOWTO Redes de Ordenadores/Práctica_DNS.pdf Universidad Carlos III de Madrid Departamento de Ingeniería Telemática Redes de Ordenadores Práctica de concepto 1 – DNS Grado en Ingeniería Informática Redes de Ordenadores – Práctica de concepto 1 2 1. Objetivo El objetivo de esta práctica es profundizar en el conocimiento del protocolo DNS, utilizando aplicaciones del sistema operativo (nslookup, ipconfig, ifconfig) así como un capturador de tráfico / analizador de paquetes (Wireshark). 2. Descripción DNS juega un papel fundamental en el uso que hacemos de Internet, ya que su misión consiste en traducir los nombres de host a sus direcciones IP correspondientes. Esto nos facilita, entre otras cosas, recordar las direcciones de sitios web al permitir representar los hosts una forma intuitiva en el ámbito global de la red de redes. Con el objetivo de hacer esta práctica fácil de realizar se han elegido una serie de aplicaciones existentes en los sistemas operativos GNU Linux y Microsoft Windows (la práctica puede hacerse en ambos sistemas operativos). En primer lugar se explicará brevemente cómo utilizar la aplicación nslookup, relacionada con peticiones DNS. Tras dicha explicación y algunos ejemplos, se presentarán una serie de cuestiones a resolver. Seguidamente se explicarán las aplicaciones ifconfig (Linux) e ipconfig (Windows), relacionadas con la configuración del adaptador de red en los diferentes sistemas operativos. Finalmente se procederá a realizar una serie de capturas de tráfico con Wireshark a fin de analizar el comportamiento del protocolo DNS cuando se realizan peticiones a los servidores de nombres. Tras este punto se presentarán el resto de cuestiones evaluables para aprobar la práctica. 2.1. nslookup La aplicación nslookup, presente en diversos sistemas operativos, permite preguntar a los servidores de nombres del Domain Name System (DNS) por registros DNS, a fin de conocer, por ejemplo, la dirección IP de un servidor en base a su nombre, o si el DNS que tenemos configurado está funcionando correctamente. En este apartado vamos a aprender a utilizar la aplicación nslookup y a realizar pruebas con ella para averiguar la dirección IP de algunos servidores en Internet. Para ejecutar nslookup sólo hay que hacer lo siguiente: En GNU Linux utilizando Gnome como gestor de ventanas o Pulsar Alt+F2 o Escribir gnome-terminal y pulsar intro o Escribir en el terminal nslookup y pulsar intro. En Microsoft Windows o Pulsar el botón de inicio Redes de Ordenadores – Práctica de concepto 1 3 o Si es Windows XP o anterior, pulsar ejecutar o Si es Vista o superior, hacer click en el campo de búsqueda o Escribir cmd y pulsar intro o Escribir en la consola de comandos nslookup y pulsar intro. A continuación se muestran un par de capturas con la ejecución de nslookup y la resolución de la dirección IP para el sitio www.uc3m.es en GNU Linux y en Microsoft Windows. Fig. - Ejecución de nslookup en Linux Fig. - Ejecución de nslookup en Windows Para finalizar la ejecución de nslookup, sólo hay que escribir exit y pulsar intro. En las capturas se puede apreciar que el cliente está utilizando la infraestructura de Telefónica de España, donde el servidor predeterminado es 80.58.61.250. Si se ejecuta el comando nslookup sin Redes de Ordenadores – Práctica de concepto 1 4 especificar el servidor DNS, entonces se manda la petición al servidor DNS configurado por defecto en el sistema operativo (ver apartado 2.2). Existen varias formas de ejecutar nslookup. Ahora vamos a ver algunas de ellas: nslookup nombre_de_host Ejemplo: nslookup www.uc3m.es Al ejecutar este comando, nslookup está pidiendo al servidor de nombres por defecto “por favor, envíame la dirección IP para el host www.uc3m.es”. Como se puede apreciar en las anteriores capturas de pantalla, la respuesta a este comando muestra dos tipos de información: 1. El nombre y la dirección IP del servidor DNS que proporciona la respuesta. 2. La respuesta en sí, que consiste en el nombre y la dirección IP de www.uc3m.es. nslookup –type=tipo_registro nombre_de_dominio Ejemplo: nslookup –type=NS uc3m.es En el ejemplo se ha utilizado como tipo de registro NS (Name Servers), es decir, se han solicitado los registros correspondientes a los servidores de nombres para el dominio uc3m.es (authoritative servers). Al igual que en el caso anterior, la respuesta muestra una serie de tipos de información: 1. El nombre y la dirección IP del servidor DNS que proporciona la respuesta. 2. Los servidores de nombres del dominio sobre el que se ha preguntado. Aunque estos sean authoritative servers para dicho dominio, se puede dar el caso que en la respuesta aparezca non-authoritative. Esto es así porque la respuesta a nuestra query procede de la caché de algún servidor en lugar de venir de algún servidor de tipo authoritative. 3. La dirección IP de los authoritative servers. nslookup nombre_de_host servidor_DNS Ejemplo: nslookup www.uc3m.es vortex.uc3m.es En el ejemplo se está indicando a nslookup que envíe la petición al servidor DNS pasado por parámetro (vortex.uc3m.es). De esta forma, la petición DNS se ejecutará sobre ese servidor en lugar del servidor configurado por defecto en el sistema operativo. NOTA: para ver las diferentes opciones soportadas por nslookup, ejecutar nslookup, y en el prompt de la aplicación (‘>’) introducir help y pulsar intro. También puede resultar útil la siguiente referencia: http://elouai.com/nslookup-reference.php Redes de Ordenadores – Práctica de concepto 1 5 NOTA2: existe otra herramienta más avanzada que nslookup utilizada para el mismo propósito. Su nombre es “dig” (Domain Information Groper) y aunque viene por defecto en muchas de las distribuciones GNU Linux, no lo hace con los sistemas operativos de Microsoft. Es por ello el motivo de elegir nslookup en lugar de dig para la realización de la práctica. 2.1.1. Cuestiones (parte 1 de 5) 1) Ejecuta nslookup para obtener la dirección IP del dominio de la Agencia Tributaria Española. 2) Ejecuta nslookup para obtener los authoritative servers de Yahoo. 3) Ejecuta nslookup para determinar los servidores de correo de la Universidad Carlos III. 2.2. ifconfig / ipconfig Las aplicaciones de línea de comandos ifconfig (GNU Linux / UNIX) e ipconfig (Windows) permiten, entre otras cosas, mostrar información específica, como la correspondiente a la configuración de TCP/IP, los servidores DNS configurados, la dirección física, etc. de uno o varios adaptadores de red pertenecientes al equipo en el que se ejecuta el comando. 2.2.1. ipconfig Al igual que nslookup, existen varias formas de ejecutar ipconfig. A continuación se mostrarán algunas opciones que pueden resultar útiles: ipconfig /all Muestra la información completa para todos los adaptadores del sistema. Esto es, aparte del nombre y tipo de adaptador, muestra la información de configuración TCP/IP (IP, máscara, puerta de enlace predeterminada), los servidores DNS configurados, posible duración de concesiones (leases) DHCP, etc. Redes de Ordenadores – Práctica de concepto 1 6 Fig. - Ejemplo de ejecución ipconfig Redes de Ordenadores – Práctica de concepto 1 7 ipconfig /displaydns Muestra las entradas almacenadas en la caché local de DNS junto con su tiempo de vida (TTL) o de validez, tipo de registro, longitud de los datos, etc. ipconfig /flushdns Vacía todas las entradas de la caché local de DNS y una vez hecho eso, carga las entradas almacenadas en fichero de hosts. 2.2.2. ifconfig Para ifconfig también existen una serie de parámetros que pueden resultar de utilidad. Muchos de ellos requieren privilegios administrativos (superusuario) para poder ser ejecutados, pero en concreto, los que sirven para obtener información de uno o varios adaptadores se pueden utilizar desde cualquier usuario del sistema. Si escribimos en un terminal ifconfig y pulsamos intro, obtendremos la lista de los adaptadores de red del sistema y su configuración asociada. Si escribimos en el terminal ifconfig nombre_adaptador, lo que obtendremos será únicamente la configuración del adaptador de red cuyo nombre es “nombre_adaptador”. Para conocer las direcciones de los servidores DNS configurados en el sistema en la mayoría de las distribuciones GNU Linux, se puede consultar el fichero /etc/resolv.conf. O lo que es lo mismo, ejecutar en un terminal cat /etc/resolv.conf Una forma de limpiar la caché DNS almacenada en el sistema consiste en reiniciar el servicio de red. Para ello hacen falta permisos de superusuario. Para reiniciar el servicio de red, escribir en un terminal sudo /etc/init.d/networking restart. Hay que tener en cuenta que en los laboratorios no se disponen de los permisos necesarios para llevar a cabo esta acción. Fig. - Ejecución de ifconfig y consulta de resolv.conf Redes de Ordenadores – Práctica de concepto 1 8 2.3. Captura de tráfico DNS con Wireshark Wireshark es un potente analizador de paquetes y capturador de tráfico open source y multiplataforma. Puede obtenerse gratuitamente desde: http://www.wireshark.org/download.html En este apartado lo vamos a utilizar para observar el comportamiento del protocolo DNS en varios escenarios. Fig. - Ventana principal de Wireshark v1.2.7 en GNU Linux NOTA: Normalmente para realizar capturas de paquetes hace falta cambiar el modo de funcionamiento del adaptador de red a lo que se conoce como modo “promiscuo”. Wireshark lleva a cabo esta acción de manera automática (siempre que el adaptador lo soporte), pero para ello requiere permisos de administrador. En los laboratorios de Telemática se han configurado una serie de políticas de seguridad de forma que los alumnos puedan capturar paquetes mediante Wireshark (al menos en las cuentas de Linux). Para ejecutar Wireshark, ejecutar en un terminal: xhost + sudo wireshark En cualquier caso se recomienda la instalación de la aplicación en los PCs propios para evitar problemas. Redes de Ordenadores – Práctica de concepto 1 9 2.3.1. Escenario 1: Web-surfing En este apartado vamos a realizar una captura de tráfico mientras accedemos a una dirección web mediante un navegador de Internet. Una vez realizada la captura, analizaremos los resultados. Pasos a seguir: 1. Abrir un navegador (Internet Explorer, Firefox, Opera, IceApe…) y limpiar la caché. 2. Limpiar la caché DNS del sistema, ya sea mediante ipconfig o reiniciando el servicio de red. 3. Abrir Wireshark e introducir “ip.addr==ip_del_equipo” en el campo filtro, donde ip_del_equipo es la IP asociada al computador en el que se está ejecutando Wireshark. Este filtro elimina los paquetes que ni son originados ni están destinados al equipo. 4. Iniciar la captura de paquetes con Wireshark. 5. Con el navegador, visitar la dirección: http://www.ietf.org 6. Detener la captura de paquetes. NOTA: si no se ha visitado previamente el sitio, no hace falta llevar a cabo los pasos 1 y 2. 2.3.2. Cuestiones (parte 2 de 5): Web-surfing 4) Localiza los mensajes de petición y respuesta DNS. ¿Son enviados sobre TCP o sobre UDP? 5) ¿Cuál es el puerto de destino para el mensaje de petición DNS? ¿Cuál es el puerto de origen del mensaje respuesta? 6) ¿A qué dirección IP se envió la petición DNS? Utiliza alguna de las aplicaciones del sistema comentadas anteriormente para determinar la dirección IP del servidor DNS configurado en el equipo. ¿Coinciden ambas direcciones? 7) Examina el mensaje de petición DNS. ¿De qué tipo es el registro DNS? ¿Contiene el mensaje de petición alguna respuesta (answer)? 8) Examina el mensaje de respuesta DNS. ¿Cuántas respuestas contiene? ¿Qué contiene cada una de esas respuestas? 9) Considera el siguiente paquete TCP SYN enviado por tu host. ¿Se corresponde la IP de destino a alguna de las direcciones IP contenidas en el mensaje de respuesta DNS? 10) Esta página web contiene imágenes. ¿Antes de descargar cada imagen se realizan nuevas peticiones DNS? Redes de Ordenadores – Práctica de concepto 1 10 2.3.3. Escenario 2: nslookup Ahora vamos a probar con nslookup. Sigue las siguientes instrucciones: 1. Comienza una captura de paquetes nueva, indicando el mismo filtro que en el escenario 1 (ip.addr==ip_del_equipo). 2. Introduce en un terminal el comando nslookup www.uc3m.es 3. Detén la captura de paquetes. Deberías obtener una traza parecida a la que se muestra en la siguiente captura de pantalla. Fig. - Traza del escenario 2 en Wireshark 2.3.4. Cuestiones (parte 3 de 5): escenario 2 (nslookup) 11) ¿Cuál es el puerto destino para el mensaje de petición DNS? ¿Cuál es el puerto origen del mensaje respuesta DNS? 12) ¿A qué dirección IP se envía el mensaje de petición DNS? ¿Se corresponde esa IP con la configurada en el equipo para el servidor DNS por defecto? 13) Examina el mensaje de petición DNS. ¿De qué tipo es el registro DNS? ¿Contiene dicho mensaje alguna respuesta (answer)? Redes de Ordenadores – Práctica de concepto 1 11 14) Examina el mensaje de respuesta DNS. ¿Cuántas respuestas contiene? ¿Qué contiene cada una de esas respuestas? 15) Adjunta una captura de pantalla. 2.3.5. Escenario 3: nslookup Repite el experimento del escenario 2, pero en esta ocasión utiliza el comando: nslookup –type=NS uc3m.es 2.3.6. Cuestiones (parte 4 de 5): escenario 3 (nslookup) 16) ¿A qué dirección IP se envía el mensaje de petición DNS? ¿Se corresponde esa IP con la configurada en el equipo para el servidor DNS por defecto? 17) Examina el mensaje de petición DNS. ¿De qué tipo es el registro DNS? ¿Contiene dicho mensaje alguna respuesta (answer)? 18) Examina el mensaje de respuesta DNS. ¿Qué servidores de nombres aparecen en el mensaje de respuesta para la Universidad Carlos III? ¿Proporciona esta respuesta las direcciones IP de dichos servidores? 19) Adjunta una captura de pantalla. 2.3.7. Escenario 4: nslookup Repite el experimento del escenario 3, pero en esta ocasión utiliza el comando: nslookup www.uc3m.es vortex.uc3m.es 2.3.8. Cuestiones (parte 5 de 5): escenario 4 (nslookup) 20) ¿A qué dirección IP se envía el mensaje de petición DNS? ¿Se corresponde esa IP con la configurada en el equipo para el servidor DNS por defecto? Si no lo es, ¿a qué dirección IP se corresponde? 21) Examina el mensaje de petición DNS. ¿De qué tipo es el registro DNS? ¿Contiene dicho mensaje alguna respuesta (answer)? 22) Examina el mensaje de respuesta DNS. ¿Cuántas respuestas contiene? ¿Qué contiene cada una de esas respuestas? 23) Adjunta una captura de pantalla.
Compartir