Sistemas Operativos y Redes Alumno: Verdile, Santiago Nicolas Numero de Alumno: 55562/1 Practica Numero 2 – La Consola de Windows Xp-Utilitarios de Red. Protocolos TCP/IP. Diagnósticos Configuración e Información. Ejercicio No 1: Uso de la Consola de Windows Xp Estudie el funcionamiento de los comandos help, dir, sort, more, type, copy, del, md y rd. Investigue las distintas opciones de estos comandos. Comando help: Proporciona información de ayuda para los comandos de Windows Xp. help [comando] comando – muestra información de ayuda del comando especificado. Comando dir: Muestra la lista de subdirectorios y archivos de un directorio. DIR [unidad:][ruta][archivo] [/A[[:]atributos]] [/B] [/C] [/D] [/L] [/N] [/O[:]orden]] [/P] [/Q] [/S] [/T[[:]fecha]] [/W] [/X] [/4] [unidad:][ruta][nombre de archivo] Especifica la unidad, la ruta de acceso, el directorio, y los archivos que se listarán. /A Muestra los archivos con los atributos especificados. atributos D Directorios R Archivos de sólo lectura H Archivos ocultos A Archivos para archivar S Archivos de sistema - Prefijo que significa no /B Usa el formato simple (sin encabezados ni sumarios). /C Muestra el separador de miles en el tamaño de los archivos. Esto es lo predeterminado. Use /-C para deshabilitar la aparición de dicho separador. /D Como el listado ancho pero los archivos aparecen clasificados por columnas. /L Usa letras minúsculas. /N Nuevo formato de lista larga donde los archivos aparecen en el lado derecho. /O Lista los archivos según lo indicado en orden. Orden N Por nombre (orden alfabético) E Por extensión (orden alfabético) S Por tamaño (orden creciente) D Por fecha y hora (el más antiguo primero) G Agrupar primero los directorios - Prefijo para invertir el orden /P Hace una pausa después de cada pantalla completa de información. /Q Muestra el propietario del archivo. /S Muestra los archivos del directorio especificado y todos sus subdirectorios. /T Controla el campo de fecha que se mostrará o usará para realizar la clasificación fecha C Creación A Último acceso W Última modificación /W Use el formato de listado ancho. /X Muestra los nombres cortos generados para los nombres de archivo que no tienen el formato 8.3. El formato es el de /N con el nombre corto especificado antes del nombre largo. Si no existe un nombre corto, se muestran espacios en blanco en su lugar. /4 Muestra el año con 4 dígitos Los modificadores pueden estar preestablecidos en la variable de entorno DIRCMD. Éstos se pueden anular precediendo cada modificador con - (guión), por ejemplo: /-W. Comando sort: Ordena los datos de entrada. SORT [/R] [/+n] [/M kilobytes] [/L locale] [/REC recordbytes][[drive1:][path1]filename1] [/T [drive2:][path2]][/O [drive3:][path3]filename3] /+n Specifies the character number, n, to begin each comparison. /+3 indicates that each comparison should begin at the 3rd character in each line. Lines with fewer than n characters collate before other lines. By default comparisons start at the first character in each line. /L[OCALE] locale Overrides the system default locale with the specified one. The ""C"" locale yields the fastest collating sequence and is currently the only alternative. The sort is always case insensitive. /M[EMORY] kilobytes Specifies amount of main memory to use for the sort, in kilobytes. The memory size is always constrained to be a minimum of 160 kilobytes. If the memory size is specified the exact amount will be used for the sort, regardless of how much main memory is available. The best performance is usually achieved by not specifying a memory size. By default the sort will be done with one pass (no temporary file) if it fits in the default maximum memory size, otherwise the sort will be done in two passes (with the partially sorted data being stored in a temporary file) such that the amounts of memory used for both the sort and merge passes are equal. The default maximum memory size is 90% of available main memory if both the input and output are files, and 45% of main memory otherwise. /REC[ORD_MAXIMUM] characters Specifies the maximum number of characters in a record (default 4096, maximum 65535). /R[EVERSE] Reverses the sort order; that is, sorts Z to A, then 9 to 0. [drive1:][path1]filename1 Specifies the file to be sorted. If not specified, the standard input is sorted. Specifying the input file is faster than redirecting the same file as standard input. /T[EMPORARY] [drive2:][path2] Specifies the path of the directory to hold the sort's working storage, in case the data does not fit in main memory. The default is to use the system temporary directory. /O[UTPUT] [drive3:][path3]filename3 Specifies the file where the sorted input is to be stored. If not specified, the data is written to the standard output. Specifying the output file is faster than redirecting standard output to the same file. Comando more: Displays output one screen at a time. MORE [/E [/C] [/P] [/S] [/Tn] [+n]] < [drive:][path]filenamecommand-name | MORE [/E [/C] [/P] [/S] [/Tn] [+n]]MORE /E [/C] [/P] [/S] [/Tn] [+n] [files] [drive:][path]filename Specifies a file to display one screen at a time. command-name Specifies a command whose output will be displayed. /E Enable extended features /C Clear screen before displaying page /P Expand FormFeed characters /S Squeeze multiple blank lines into a single line /Tn Expand tabs to n spaces (default 8) Switches can be present in the MORE environment variable. +n Start displaying the first file at line n files List of files to be displayed. Files in the list are separated by blanks. If extended features are enabled, the following commands are accepted at the -- More -prompt: P n Display next n lines S n Skip next n lines F Display next file Q Quit = Show line number ? Show help line <space> Display next page <ret> Display next line Comando type: Muestra el contenido de uno o más archivos de texto. TYPE [unidad:][ruta]archivo Comando copy:Copia uno o más archivos en otra ubicaciónción. COPY [/V] [/N] [/Y | /-Y] [/Z] [/A | /B ] origen [/A | /B] [+ origen [/A | /B] [+ ...]] [destino [/A | /B]] origen Especifica el archivo o archivos que deben copiarse. /A Indica un archivo de texto ASCII. /B Indica un archivo binario. /D Permite al archivo de destino que se cree descifrado Destino Especifica el directorio y el nombre de archivo de los nuevos archivos. /V Verifica que los nuevos archivos se escriben correctamente. /N Si es posible, usa un nombre de archivo corto al copiar un archivo cuyo nombre no tiene el formato 8.3. /Y Suprime la petición de confirmación cuando se va a sobrescribir un archivo destino existente. /-Y Realiza la petición de confirmación cuando se va a sobrescribir un archivo destino existente. /Z Copia archivos de red en modo reiniciable. El modificador /Y puede estar preestablecido en la variable de entorno COPYCMD. Esto puede anularse con el modificador /-Y en la línea de comando. Está predeterminado el pedir la confirmación del usuario antes de sobrescribir, excepto si el comando COPY se ejecuta desde un archivo de comandos por lotes. Para anexar archivos, especifique un único archivo de destino, pero varios archivos de origen (usando caracteres comodines o el formato archivo1+archivo2+archivo3). Comando del: Elimina uno o más archivos. DEL [/P] [/F] [/S] [/Q] [/A[[:]atributos]] nombres ERASE [/P] [/F] [/S] [/Q] [/A[[:]atributos]] nombres nombres Especifica una lista de uno o más archivos o directorios. Se puede utilizar comodines para eliminar varios archivos. Si se especifica un directorio todos sus archivos se eliminarán. /P Pide confirmación antes de eliminar cada archivo. /F Fuerza la eliminación de archivos de sólo lectura. /S Elimina archivos especificados en todos los subdirectorios. /Q Modo silencioso. No pide confirmación con comodín global /A Selecciona los archivos que se van a eliminar basándose en los atributos atributos R Archivos de sólo lectura S Archivos de sistema H Archivos ocultos A Archivos preparados para almacenamiento - Prefijo de exclusión Si las extensiones de comando están activadas DEL y ERASE cambian de la siguiente manera: La semántica que se muestra para el modificador /S está invertida de tal modo que le muestra solamente los archivos eliminados y no los que no se encontraron. Comando md: Crea un directorio. MKDIR [unidad:]ruta MD [unidad:]ruta Si las extensiones de comandos están habilitadas, MKDIR cambia así: MKDIR crea cualquier directorio intermedio de la ruta de acceso siempre que sea necesario. Por ejemplo, si \a no existe: mkdir \a\b\c\d es lo mismo que: mkdir \a chdir \a mkdir b chdir b mkdir c chdir c mkdir d que es lo que hubiese tenido que escribir si no se hubiese habilitado las extensiones. Comando rd: Quita un directorio. RMDIR [/S] [/Q] [unidad:]ruta RD [/S] [/Q] [unidad:]ruta /S Quita todos los directorios y archivos del directorio además del mismo directorio. Se utiliza principalmente cuando se desea quitar un árbol. /Q Modo silencioso, no pide confirmación para quitar un árbol de directorio con /S Estudie la utilidad de los operadores > >> | < << Basándose en el hecho de que las órdenes de la Consola de Windows XP solicitan información a través del teclado resulta ser útil definir: Redirección de la entrada. Operador “<” : Con este operador hacemos que la información de entrada proceda desde un fichero o un dispositivo. Aplicaciones: Mostrar un fichero de texto con pausa en cada pantalla. A:\>more <recuerdo.txt (More toma como entrada el fichero RECUERDO.TXT y como salida, el monitor) Ordenar un fichero alfabéticamente y verlo en la pantalla. A:\>sort <personal.txt (Sort toma como entrada el fichero PERSONAL.TXT y como salida, el monitor) Ordenar un fichero alfabéticamente a partir de una columna. Ejemplo: Si el fichero PERSONAL.TXT contiene nombres y datos del personal de una empresa, podemos ordenarlo por la columna que indica el puesto ejercido por cada empleado. A:\>sort /+40 <personal.txt Encontrar las filas que contienen una cadena de caracteres. A:\>find "JIMENEZ" <personal.txt (Find considera como entrada el fichero PERSONAL.TXT y muestra por pantalla todas las filas que contienen la cadena «JIMENEZ») Redirección de la salida. Operador “>”: Con este operador dirigimos la salida desde la pantalla a un fichero o dispositivo. Suele tener dos usos principales: Enviar la salida de una orden a la impresora. A:\>type romance.txt >prn (imprime el fichero ROMANCE.TXT en impresora) C:\>vol >prn (imprime la etiqueta y el número de serie en impresora) Enviar la salida de una orden a un nuevo fichero. Si el fichero existe, se pierde su contenido anterior. C:\>dir >director.txt (crea el fichero DIRECTOR.TXT con el directorio raíz de C:) C:\>ver >version.txt (crea el fichero VERSION.TXT conteniendo la versión actual de ms-dos) El operador `>' también se puede combinar con los filtros de la Consola de Windows XP. Ordenar un texto introducido por teclado en un fichero. El cursor se sitúa debajo de la orden esperando las filas de texto. Al terminar cada fila debemos pulsar Enter y para terminar la introducción de texto, Ctrl+Z y luego Enter. B:\>sort >amigos.txt (Sort asume como entrada el teclado y como salida el fichero AMIGOS.TXT) Ordenar un fichero en otro. B:\>sort <listin1.txt >listin2.txt (Sort asume como entrada el fichero LISTIN1.TXT y como salida, el fichero LISTIN2.TXT) Ordenar un fichero en la impresora. B:\>sort <listin1.txt >prn (Sort toma como entrada el fichero LISTIN1.TXT y como salida, la impresora) Buscar una cadena en un fichero y crear otro con el resultado de la búsqueda. B:\>find "CONTABLE" <personal.txt >contable.txt Redirección de la salida a un fichero existente “>>”: Se utiliza para dirigir la salida de una orden a un fichero existente. Al contrario que el operador “>”, el operador de adicción “>>” no sobrescribe sino añade al fichero existente. La siguiente orden añade al fichero SOS.TXT la ayuda de la orden Time. Si no existe, se crea el fichero. A:\>time /? >>sos.txt La siguiente añade al fichero SOS.TXT la ayuda suministrada por ms-dos para la orden Date. A:\>date /? >>sos.txt Si ahora visualizamos el fichero SOS.TXT, comprobamos que contiene la ayuda de ambas órdenes. A:\>type sos.txt Muestra o establece la hora del sistema. TIME [hora] Escriba TIME sin parámetros para consultar o cambiar la hora actual. Presione ENTRAR para conservar la misma hora. Presenta o establece la fecha. DATE [dd-mm-aa] dd-mm-aa Establece la fecha que se especifique. Escriba DATE sin parámetros para ver la fecha actual y poder escribir una nueva. Presione ENTRAR para conservar la misma fecha. D:\> Redirección de la salida a entrada de otra orden ( | ): El uso del operador `|' guarda la siguiente sintaxis: orden1 |orden2 Nota: El símbolo de tubería o símbolo de canalización “|” se obtiene pulsando AltGr+1. La lectura de esta sintaxis es: "tomar la salida de orden1 como entrada de orden2". Cada vez que utilizamos el símbolo tubería, ms-dos necesita crear un fichero temporal. Para ello utiliza la variable de entorno TEMP. Si esta variable no está bien definida, puede ocurrir algún error. Aplicaciones: Mostrar con pausa en cada pantalla la salida de una orden. B:\>type informe.txt |more C:\DOS>dir |more C:\>tree |more Obtener una línea determinada de la salida de una orden. C:\>dir |find "bytes libres" 20.443.136 bytes libres (muestra los bytes libres de la unidad C:) C:\>set |find "TEMP" TEMP=C:\DOS (muestra el valor de la variable TEMP o nada si no existe) a) Usando los operadores, genere un archivo de texto con la salida del comando dir. Ordene el archivo obtenido utilizando el comando sort, de manera que quede ordenado por hora de modificación. dir > archivo.txt sort /+13 archivo.txt > ordenado.txt b) Cómo utilizaría los comandos type, sort y more para visualizar el archivo obtenido en a) por páginas y ordenado por fecha? sort ordenado.txtmore type|sort ordenado.txt c) Cree un directorio (o carpeta) llamado mi_dir. Copie todos los archivos que tengan extensión doc o txt y que estén en el directorio actual a ese nuevo directorio. Verifique que fueron copiados listándolos mediante el comando dir. Ahora elimine todos los archivos y el directorio mi_dir usando el comando rd con la opción /s. Elabore un archivo por lotes ( .bat) que realice todo lo solicitado. md mi_dir copy *.txt \mi_dir copy *.doc \mi_dir cd mi_dir dir mi_dir cd.. rd /s \mi_dir Ejercicio No 2: Explique el funcionamiento de los siguientes comandos ipconfig, netstat, ping, route y tracert de Windows XP. Tenga en cuenta para la explicación las diferentes opciones de cada uno de los comandos. Ipconfig Displays all current TCP/IP network configuration values and refreshes Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS) settings. Used without parameters, ipconfig displays the IP address, subnet mask, and default gateway for all adapters. Syntax ipconfig [/all] [/renew [Adapter]] [/release [Adapter]] [/flushdns] [/displaydns] [/registerdns] [/showclassid Adapter] [/setclassid Adapter [ClassID]] Parameters /all : Displays the full TCP/IP configuration for all adapters. Without this parameter, ipconfig displays only the IP address, subnet mask, and default gateway values for each adapter. Adapters can represent physical interfaces, such as installed network adapters, or logical interfaces, such as dial-up connections. /renew [Adapter] : Renews DHCP configuration for all adapters (if an adapter is not specified) or for a specific adapter if the Adapter parameter is included. This parameter is available only on computers with adapters that are configured to obtain an IP address automatically. To specify an adapter name, type the adapter name that appears when you use ipconfig without parameters. /release [Adapter] : Sends a DHCPRELEASE message to the DHCP server to release the current DHCP configuration and discard the IP address configuration for either all adapters (if an adapter is not specified) or for a specific adapter if the Adapter parameter is included. This parameter disables TCP/IP for adapters configured to obtain an IP address automatically. To specify an adapter name, type the adapter name that appears when you use ipconfig without parameters. /flushdns : Flushes and resets the contents of the DNS client resolver cache. During DNS troubleshooting, you can use this procedure to discard negative cache entries from the cache, as well as any other entries that have been added dynamically. /displaydns : Displays the contents of the DNS client resolver cache, which includes both entries preloaded from the local Hosts file and any recently obtained resource records for name queries resolved by the computer. The DNS Client service uses this information to resolve frequently queried names quickly, before querying its configured DNS servers. /registerdns : Initiates manual dynamic registration for the DNS names and IP addresses that are configured at a computer. You can use this parameter to troubleshoot a failed DNS name registration or resolve a dynamic update problem between a client and the DNS server without rebooting the client computer. The DNS settings in the advanced properties of the TCP/IP protocol determine which names are registered in DNS. /showclassid Adapter : Displays the DHCP class ID for a specified adapter. To see the DHCP class ID for all adapters, use the asterisk (*) wildcard character in place of Adapter. This parameter is available only on computers with adapters that are configured to obtain an IP address automatically. /setclassid Adapter [ClassID] : Configures the DHCP class ID for a specified adapter. To set the DHCP class ID for all adapters, use the asterisk (*) wildcard character in place of Adapter. This parameter is available only on computers with adapters that are configured to obtain an IP address automatically. If a DHCP class ID is not specified, the current class ID is removed. /?: Displays help at the command prompt. Netstat Displays active TCP connections, ports on which the computer is listening, Ethernet statistics, the IP routing table, IPv4 statistics (for the IP, ICMP, TCP, and UDP protocols), and IPv6 statistics (for the IPv6, ICMPv6, TCP over IPv6, and UDP over IPv6 protocols). Used without parameters, netstat displays active TCP connections. Syntax netstat [-a] [-e] [-n] [-o] [-p Protocol] [-r] [-s] [Interval] Parameters -a : Displays all active TCP connections and the TCP and UDP ports on which the computer is listening. -e : Displays Ethernet statistics, such as the number of bytes and packets sent and received. This parameter can be combined with -s. -n : Displays active TCP connections, however, addresses and port numbers are expressed numerically and no attempt is made to determine names. -o : Displays active TCP connections and includes the process ID (PID) for each connection. You can find the application based on the PID on the Processes tab in Windows Task Manager. This parameter can be combined with -a, -n, and -p. -p Protocol : Shows connections for the protocol specified by Protocol. In this case, the Protocol can be tcp, udp, tcpv6, or udpv6. If this parameter is used with -s to display statistics by protocol, Protocol can be tcp, udp, icmp, ip, tcpv6, udpv6, icmpv6, or ipv6. -s : Displays statistics by protocol. By default, statistics are shown for the TCP, UDP, ICMP, and IP protocols. If the IPv6 protocol for Windows XP is installed, statistics are shown for the TCP over IPv6, UDP over IPv6, ICMPv6, and IPv6 protocols. The -p parameter can be used to specify a set of protocols. -r : Displays the contents of the IP routing table. This is equivalent to the route print command. Interval : Redisplays the selected information every Interval seconds. Press CTRL+C to stop the redisplay. If this parameter is omitted, netstat prints the selected information only once. /? : Displays help at the command prompt. Ping Verifies IP-level connectivity to another TCP/IP computer by sending Internet Control Message Protocol (ICMP) Echo Request messages. The receipt of corresponding Echo Reply messages are displayed, along with round-trip times. Ping is the primary TCP/IP command used to troubleshoot connectivity, reachability, and name resolution. Used without parameters, ping displays help. Syntax ping [-t] [-a] [-n Count] [-l Size] [-f] [-i TTL] [-v TOS] [-r Count] [-s Count] [{-j HostList | -k HostList}] [-w Timeout] [TargetName] Parameters -t : Specifies that ping continue sending Echo Request messages to the destination until interrupted. To interrupt and display statistics, press CTRL-BREAK. To interrupt and quit ping, press CTRL-C. -a : Specifies that reverse name resolution is performed on the destination IP address. If this is successful, ping displays the corresponding host name. -n Count : Specifies the number of Echo Request messages sent. The default is 4. -l Size : Specifies the length, in bytes, of the Data field in the Echo Request messages sent. The default is 32. The maximum size is 65,527. -f : Specifies that Echo Request messages are sent with the Don't Fragment flag in the IP header set to 1. The Echo Request message cannot be fragmented by routers in the path to the destination. This parameter is useful for troubleshooting path Maximum Transmission Unit (PMTU) problems. -i TTL : Specifies the value of the TTL field in the IP header for Echo Request messages sent. The default is the default TTL value for the host. For Windows XP hosts, this is typically 128. The maximum TTL is 255. -v TOS : Specifies the value of the Type of Service (TOS) field in the IP header for Echo Request messages sent. The default is 0. TOS is specified as a decimal value from 0 to 255. -r Count : Specifies that the Record Route option in the IP header is used to record the path taken by the Echo Request message and corresponding Echo Reply message. Each hop in the path uses an entry in the Record Route option. If possible, specify a Count that is equal to or greater than the number of hops between the source and destination. The Count must be a minimum of 1 and a maximum of 9. -s Count : Specifies that the Internet Timestamp option in the IP header is used to record the time of arrival for the Echo Request message and corresponding Echo Reply message for each hop. The Count must be a minimum of 1 and a maximum of 4. -j HostList : Specifies that the Echo Request messages use the Loose Source Route option in the IP header with the set of intermediate destinations specified in HostList. With loose source routing, successive intermediate destinations can be separated by one or multiple routers. The maximum number of addresses or names in the host list is 9. The host list is a series of IP addresses (in dotted decimal notation) separated by spaces. -k HostList : Specifies that the Echo Request messages use the Strict Source Route option in the IP header with the set of intermediate destinations specified in HostList. With strict source routing, the next intermediate destination must be directly reachable (it must be a neighbor on an interface of the router). The maximum number of addresses or names in the host list is 9. The host list is a series of IP addresses (in dotted decimal notation) separated by spaces. -w Timeout : Specifies the amount of time, in milliseconds, to wait for the Echo Reply message that corresponds to a given Echo Request message to be received. If the Echo Reply message is not received within the time-out, the "Request timed out" error message is displayed. The default time-out is 4000 (4 seconds). TargetName : Specifies the destination, which is identified either by IP address or host name. /? : Displays help at the command prompt. Route Displays and modifies the entries in the local IP routing table. Used without parameters, route displays help. Syntax route [-f] [-p] [Command [Destination] [mask Netmask] [Gateway] [metric Metric]] [if Interface]] Parameters -f : Clears the routing table of all entries that are not host routes (routes with a netmask of 255.255.255.255), the loopback network route (routes with a destination of 127.0.0.0 and a netmask of 255.0.0.0), or a multicast route (routes with a destination of 224.0.0.0 and a netmask of 240.0.0.0). If this is used in conjunction with one of the commands (such as add, change, or delete), the table is cleared prior to running the command. -p : When used with the add command, the specified route is added to the registry and is used to initialize the IP routing table whenever the TCP/IP protocol is started. By default, added routes are not preserved when the TCP/IP protocol is started. When used with the print command, the list of persistent routes is displayed. This parameter is ignored for all other commands. Persistent routes are stored in the registry location HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\Tcpip\Parameters\Persist entRoutes. Command : Specifies the command you want to run. The following table lists valid commands. Command Purpose add Adds a route. Change Modifies an existing route. delete Deletes a route or routes. print Prints a route or routes. Destination : Specifies the network destination of the route. The destination can be an IP network address (where the host bits of the network address are set to 0), an IP address for a host route, or 0.0.0.0 for the default route. mask Netmask : Specifies the netmask (also known as a subnet mask) associated with the network destination. The subnet mask can be the appropriate subnet mask for an IP network address, 255.255.255.255 for a host route, or 0.0.0.0 for the default route. If omitted, the subnet mask 255.255.255.255 is used. Because of the relationship between the destination and the subnet mask in defining routes, the destination cannot be more specific than its corresponding subnet mask. In other words, there cannot be a bit set to 1 in the destination if the corresponding bit in the subnet mask is a 0. Gateway : Specifies the forwarding or next hop IP address over which the set of addresses defined by the network destination and subnet mask are reachable. For locally attached subnet routes, the gateway address is the IP address assigned to the interface that is attached to the subnet. For remote routes, available across one or more routers, the gateway address is a directly reachable IP address that is assigned to a neighboring router. metric Metric : Specifies an integer cost metric (ranging from 1 to 9999) for the route, which is used when choosing among multiple routes in the routing table that most closely match the destination address of a packet being forwarded. The route with the lowest metric is chosen. The metric can reflect the number of hops, the speed of the path, path reliability, path throughput, or administrative properties. if Interface : Specifies the interface index for the interface over which the destination is reachable. For a list of interfaces and their corresponding interface indexes, use the display of the route print command. You can use either decimal or hexadecimal values for the interface index. For hexadecimal values, precede the hexadecimal number with 0x. When the if parameter is omitted, the interface is determined from the gateway address. /? : Displays help at the command prompt. Tracert Determines the path taken to a destination by sending Internet Control Message Protocol (ICMP) Echo Request messages to the destination with incrementally increasing Time to Live (TTL) field values. The path displayed is the list of near-side router interfaces of the routers in the path between a source host and a destination. The near-side interface is the interface of the router that is closest to the sending host in the path. Used without parameters, tracert displays help. Syntax tracert [-d] [-h MaximumHops] [-j HostList] [-w Timeout] [TargetName] Parameters -d : Prevents tracert from attempting to resolve the IP addresses of intermediate routers to their names. This can speed up the display of tracert results. -h MaximumHops : Specifies the maximum number of hops in the path to search for the target (destination). The default is 30 hops. -j HostList : Specifies that Echo Request messages use the Loose Source Route option in the IP header with the set of intermediate destinations specified in HostList. With loose source routing, successive intermediate destinations can be separated by one or multiple routers. The maximum number of addresses or names in the host list is 9. The HostList is a series of IP addresses (in dotted decimal notation) separated by spaces. -w Timeout : Specifies the amount of time in milliseconds to wait for the ICMP Time Exceeded or Echo Reply message corresponding to a given Echo Request message to be received. If not received within the time-out, an asterisk (*) is displayed. The default time-out is 4000 (4 seconds). TargetName : Specifies the destination, identified either by IP address or host name. -? : Displays help at the command prompt. Ejercicio No 3: a) Explique las principales diferencias y similitudes entre los protocolos UDP y TCP. TCP UDP Connection-Oriented Connectionless Reliability in delivery of messages No attempt to fragment messages Splitting messages into datagrams No reassembly and synchronization Keep track of order (or sequence) In case of error, message is Use checksums for detecting errors retransmitted No acknowledgment Remote procedures are not Remote procedures are idempotent idempotent Server and client messages fit Reliability is a must Messages exceed UDP packet size completely within a packet The server handles multiple clients (UDP is stateless) El protocolo UDP: Es un protocolo de capa 4 del tipo sin conexión (connectionless) y de mejor esfuerzo (besteffort). Permite hacer broadcast a múltiples destinos. El protocolo TCP: Se diferencia respecto al protocolo UDP, en que se trata de un protocolo orientado a la conexión y además, confiable (reliable), es decir que se tiene un control que permite detectar los paquetes perdidos para así volverlos a enviar. Esto requiere que se incorpore un control de flujo. Solo permite unicast. b) Describa los procedimientos utilizados por TCP para realizar control de flujo. La ventana deslizante es un dispositivo de control de flujo de tipo software, es decir, el control del flujo se lleva a cabo mediante el intercambio específico de caracteres o tramas de control, con los que el receptor indica al emisor cuál es su estado de disponibilidad para recibir datos. Este dispositivo es necesario para no inundar al receptor con envíos de tramas de datos. El receptor al recibir datos debe procesarlo, si no lo realiza a la misma velocidad que el transmisor los envía se verá saturado de datos, y parte de ellos se pueden perder. Para evitar tal situación la ventana deslizante controla este ritmo de envíos del emisor al receptor. Funcionamiento de la ventana de transmisión El protocolo de ventana deslizante permite al emisor transmitir múltiples paquetes de información antes de comenzar la espera para que el receptor le confirme la recepción de los paquetes, tal confirmación se llama validación, y consiste en el envío de mensajes denominados ACK del receptor al emisor. La validación se realiza desde el receptor al emisor y contiene el número de la siguiente trama que espera recibir el receptor, o el de la última trama recibida con éxito, ACK n (siendo n el número de la trama indicada). Con esta indicación el emisor es capaz de distinguir el número de los envíos realizados con éxito, los envíos perdidos y envíos que se esperan recibir. Los paquetes se denominaran Unacknowledge si han sido enviados pero no han sido validados. Técnicamente el número de paquetes que pueden ser Unacknowledge en un momento dado está limitado por el tamaño de la ventana, un número pequeño y fijo, se denomina el ancho de ventana. Funcionamiento de la ventana de recepción El receptor posee una ventana de recepción, similar a la de transmisión, pero con una finalidad totalmente distinta. Su funcionalidad permite al receptor recibir un conjunto de tramas que le llegan desordenadas. La ventana de recepción es la lista que tiene el receptor con los números de la secuencia consecutivos de las tramas que puede aceptar. Almacena las tramas temporalmente en un buffer hasta el momento que posea todas las tramas esperadas, la secuencia de tramas esperada al completo, y así ordenarlas. El receptor debe disponer de un buffer de igual tamaño que su ventana de recepción para almacenar temporalmente las tramas hasta ordenarlas. Existen 2 modos de trabajo en función del tamaño de su ventana: Tamaño ventana recepción=1. con lo cual la ventana de recepción dispone de un buffer. Sólo puede almacenar la trama que le llega en cada instante, es decir, debe recibir las tramas en la secuencia correcta, ya que no dispone de recursos para ordenarlas después. Impone al emisor la condición de transmitir siempre las tramas en secuencia. Tamaño ventana recepción>1. La ventana de recepción dispone de N buffers (N=tamaño ventana de recepción) que le permiten recibir hasta N tramas desordenadas, almacenarlas y proceder a su ordenamiento posterior. Le permite al emisor transmitir tramas desordenadas, tantas como quepan en los buffers del receptor. c) Describa los procedimientos utilizados por TCP para evitar la congestión. Slow-start es un algoritmo de control de congestión del protocolo TCP. Ni el emisor ni el receptor tienen forma de saber cual es el máximo volumen de datos que puede transmitir la red, ninguno tiene información sobre los elementos de red que transmitirán la información. Si la red se satura comenzará a descartar paquetes, que tendrán que ser retransmitidos, lo cual puede incrementar aún más la saturación de la red. La solución que plantea este algoritmo, consiste en comenzar enviando un volumen de datos pequeño, que se irá aumentando hasta que la red se sature, en cuyo caso se reducirá la tasa de envío para reducir la saturación. Componentes del algoritmo Ventana de congestión Es el valor límite de la ventana del emisor. El objetivo de los mecanismos de control de congestión será lograr una buena estimación de ese valor, de manera que en todo momento tenga un valor óptimo. Es decir, sea lo más grande posible (de manera que no sea una merma para la velocidad real a la que se transmite), pero sin llegar a provocar congestiones en la red (que también redundarán en una merma de la velocidad real o efectiva). El valor de la ventana de emisión, es decir, el número de bytes que el emisor puede llegar a emitir sin esperar a recibir un ACK, será siempre el mínimo entre la ventana de congestión y el crédito TCP. Umbral de congestión Se establece un valor llamado umbral de congestión ("congestion threshold") que trata de ser una estimación del tamaño de la ventana del emisor a partir del cual existe riesgo de congestión. Hasta que la ventana de congestión alcance el valor del umbral, se emplea el algoritmo slow-start para su crecimiento. A partir de haberse alcanzado el valor umbral, se aplica el algoritmo de "evitación de congestión" (congestion avoidance). El valor inicial del umbral es el del máximo segmento admitido por TCP: 65.535 bytes. Es actualizado a la mitad del valor de la ventana de congestión cuando el transmisor detecta una congestión en la red, pero nunca será inferior a dos segmentos. Slow-start Algoritmo para el cálculo de la ventana de congestión aplicado al principio de la conexión, y hasta que se alcanza el umbral de congestión. Consiste en lo siguiente: La ventana de congestión se inicia con el valor de un segmento de tamaño máximo (MSS). Cada vez que se recibe un ACK, la ventana de congestión se incrementa en tantos bytes como hayan sido reconocidos en el ACK recibido. En la práctica, esto supone que el tamaño de la ventana de congestión se doble por cada RTT, lo que da lugar a un crecimiento exponencial de la ventana. Cuando un ACK no llega al transmisor: Se toma como una señal de congestión en la red y se reinicia la ventana de congestión a un MSS. Se aplica el algoritmo de congestion avoidance. Congestion Avoidance Cada vez que se recibe un ACK la ventana de congestión se incrementa un número de bytes igual al MSS. En la práctica, esto supone que la ventana crece de manera lineal. Ejercicio No 4: a) A partir del diagrama de estados de las conexiones TCP presentado en las transparencias , obtener dos diagramas de estado similares, uno para la parte pasiva( servidor) y otro para la parte activa (cliente). TCP Finite State Machine - Cliente TCP Finite State Machine – Servidor b) Detallar mediante una tabla de transiciones y acciones como es el establecimiento de una conexión visto desde el servidor. State State Description Event and Transition CLOSED This is the default state that each connection starts in before the process of establishing it begins. The state is called “fictional” in the standard. The reason is that this state represents the situation where there is no connection between devices—it either hasn't been created yet, or has just been destroyed. If that makes sense. Passive Open: A server begins the process of connection setup by doing a passive open on a TCP port. At the same time, it sets up the data structure (transmission control block or TCB) needed to manage the connection. It then transitions to the LISTEN state. Active Open, Send SYN: A client begins connection setup by sending a SYN message, and also sets up a TCB for this connection. It then transitions to the SYN-SENT state. LISTEN SYNRECEIVED A device (normally a server) is waiting to receive a synchronize (SYN) message from a client. It has not yet sent its own SYN message. Receive ACK: When the device receives the The device has both received a SYN (connection request) from its ACK to the SYN it sent, it transitions to the partner and sent its own SYN. It ESTABLISHED state. is now waiting for an ACK to its SYN to finish connection setup. The “steady state” of an open TCP connection. Data can be exchanged freely once both devices in the connection enter this state. This will continue until ESTABLISHED the connection is closed for one reason or another. FIN-WAIT-1 FIN-WAIT-2 Receive Client SYN, Send SYN+ACK: The server device receives a SYN from a client. It sends back a message that contains its own SYN and also acknowledges the one it received. The server moves to the SYNRECEIVED state. Close, Send FIN: A device can close the connection by sending a message with the FIN (finish) bit sent and transition to the FINWAIT-1 state. Receive FIN: A device may receive a FIN message from its connection partner asking that the connection be closed. It will acknowledge this message and transition to the CLOSE-WAIT state. A device in this state is waiting for an ACK for a FIN it has sent, or is waiting for a connection termination request from the other device. Receive ACK for FIN: The device receives an acknowledgment for its close request. It transitions to the FIN-WAIT-2 state. A device in this state has received an ACK for its request to terminate the connection and is now waiting for a matching FIN from the other device. Receive FIN, Send ACK: The device receives a FIN from the other device. It acknowledges it and moves to the TIMEWAIT state. Receive FIN, Send ACK: The device does not receive an ACK for its own FIN, but receives a FIN from the other device. It acknowledges it, and moves to the CLOSING state. CLOSING The device has received a FIN Receive ACK for FIN: The device receives from the other device and sent an an acknowledgment for its close request. It ACK for it, but not yet received an transitions to the TIME-WAIT state. ACK for its own FIN message. TIME-WAIT Timer Expiration: After a designated wait The device has now received a FIN period, device transitions to the CLOSED from the other device and state. acknowledged it, and sent its own FIN and received an ACK for it. We are done, except for waiting to ensure the ACK is received and prevent potential overlap with new connections. c) Idem desde el cliente. State State Description Event and Transition CLOSED This is the default state that each connection starts in before the process of establishing it begins. The state is called “fictional” in the standard. The reason is that this state represents the situation where there is no connection between devices—it either hasn't been created yet, or has just been destroyed. If that makes sense. Passive Open: A server begins the process of connection setup by doing a passive open on a TCP port. At the same time, it sets up the data structure (transmission control block or TCB) needed to manage the connection. It then transitions to the LISTEN state. LISTEN SYN-SENT A device (normally a server) is waiting to receive a synchronize (SYN) message from a client. It has not yet sent its own SYN message. Active Open, Send SYN: A client begins connection setup by sending a SYN message, and also sets up a TCB for this connection. It then transitions to the SYN-SENT state. Receive Client SYN, Send SYN+ACK: The server device receives a SYN from a client. It sends back a message that contains its own SYN and also acknowledges the one it received. The server moves to the SYNRECEIVED state. Receive SYN, Send ACK: If the device that has sent its SYN message receives a SYN from the other device but not an ACK for its own SYN, it acknowledges the SYN it receives and then transitions to SYNThe device (normally a client) has RECEIVED to wait for the acknowledgment to sent a synchronize (SYN) its SYN. message and is waiting for a matching SYN from the other Receive SYN+ACK, Send ACK: If the device device (usually a server). that sent the SYN receives both an acknowledgment to its SYN and also a SYN from the other device, it acknowledges the SYN received and then moves straight to the ESTABLISHED state. SYNRECEIVED Receive ACK: When the device receives the The device has both received a SYN (connection request) from its ACK to the SYN it sent, it transitions to the partner and sent its own SYN. It ESTABLISHED state. is now waiting for an ACK to its SYN to finish connection setup. The “steady state” of an open TCP connection. Data can be exchanged freely once both ESTABLISHED devices in the connection enter this state. This will continue until the connection is closed for one reason or another. Close, Send FIN: A device can close the connection by sending a message with the FIN (finish) bit sent and transition to the FINWAIT-1 state. Receive FIN: A device may receive a FIN message from its connection partner asking that the connection be closed. It will acknowledge this message and transition to the CLOSE-WAIT state. CLOSE-WAIT The device has received a close request (FIN) from the other device. It must now wait for the application on the local device to acknowledge this request and generate a matching request. Close, Send FIN: The application using TCP, having been informed the other process wants to shut down, sends a close request to the TCP layer on the machine upon which it is running. TCP then sends a FIN to the remote device that already asked to terminate the connection. This device now transitions to LAST-ACK. LAST-ACK A device that has already received a close request and acknowledged it, has sent its own FIN and is waiting for an ACK to this request. Receive ACK for FIN: The device receives an acknowledgment for its close request. We have now sent our FIN and had it acknowledged, and received the other device's FIN and acknowledged it, so we go straight to the CLOSED state. Ejercicio No 5: a) Identifique y enumere las redes clase A, B y C y su máscara natural respectiva. Tipo A B C Dirección más baja 1.0.0.0 128.0.0.0 192.0.0.0 Dirección más alta 126.255.255.255 191.255.255.255 223.255.255.255 Máscara natural 255.0.0.0 255.255.0.0 255.255.255.0 b) Explique que es la dirección de broadcast y la dirección de la red. De un ejemplo de cuales son para la red 163.10.0.0/255.255.0.0. Explique de que otra manera se puede escribir la máscara. Partes de una IP (32 bits): Tipo A 0 Tipo B 1 0 Tipo C 1 1 0 Dirección de la red: netid hostid netid hostid netid hostid Una dirección que tiene todos los bits del código hostid igual a 0, se reserva para referirse a la red en sí misma. Dirección de Broadcast: Una dirección de difusión (Boradcast) tiene todos los bits del campo hostid asignados como 1. En la red: 163.10.0.0/255.255.0.0 Es de tipo B, la dirección de broadcast es 163.10.255.255 y la dirección de red es 163.10.0.0. La forma alternativa para escribir la máscara de red es simplemente escribir la cantidad de 1s que tiene la máscara. Por ejemplo: 163.10.0.0/255.255.0.0 es equivalente a 163.10.0.0/16 c) para el caso del ejercicio a) investigue cuáles son las redes que no pueden utilizarse en la Internet, debido a que están reservadas para uso privado. Las direcciones privadas no pueden usarse en Internet y son: Tipo Dirección más baja Dirección más alta Máscara natural A 10.0.0.0 10.255.255.255 255.0.0.0 B 172.16.0.0 172.31.255.255 255.255.0.0 C 192.168.0.0 223.255.255.255 255.255.255.0 d) Se desea dividir la red clase C 198.25.37.0 en 4 sub-redes que tengan la misma cantidad de hosts cada una. ¿Cuál es la máscara que debe utilizarse? Enumere el rango de direcciones posibles para cada una de las subredes ¿Cuántos hosts pueden conectarse a cada subred?¿Cuántos hosts en total se pueden conectar a toda la red?¿Que porcentaje de la numeración se desperdicia?. Red Clase C: 198.25.37.0 Máscara natural: 255.255.255.0 Se desean 4 subredes, es decir que se necesitan 2 bits que le son quitados al host-id para agregarlos al net-id. La máscara con subnetting queda: 255.255.255.192 Las subredes generadas y sus respectivas IPs: Dirección de Subred Dirección más baja 198.25.37.0 198.25.37.0 198.25.37.64 198.25.37.65 198.25.37.128 198.25.37.129 198.25.37.192 198.25.37.193 Dirección más alta 198.25.37.62 198.25.37.126 198.25.37.190 198.25.37.254 La cantidad de hosts que podemos tener por subred es: 62 hosts. La cantidad total de hosts sin subnetting es: 254 hosts. La cantidad total de hosts con subnetting es: 248 hosts. Se desperdicia el 2,4% de la numeración. e) Repita el punto d) anterior pero si ahora se desea dividir la red en 16 subredes iguales. Se desean 16 subredes, es decir que se necesitan 4 bits que le son quitados al host-id para agregarlos al net-id. La máscara con subnetting queda: 255.255.255.240 Las subredes generadas y sus respectivas IPs: Dirección de Subred Dirección más baja 198.25.37.0 198.25.37.1 198.25.37.16 198.25.37.17 198.25.37.32 198.25.37.33 198.25.37.48 198.25.37.49 198.25.37.64 198.25.37.65 198.25.37.80 198.25.37.81 198.25.37.96 198.25.37.97 198.25.37.112 198.25.37.113 198.25.37.128 198.25.37.129 198.25.37.144 198.25.37.145 198.25.37.160 198.25.37.161 198.25.37.176 198.25.37.177 198.25.37.192 198.25.37.193 198.25.37.208 198.25.37.209 198.25.37.224 198.25.37.225 198.25.37.240 198.25.37.241 Dirección más alta 198.25.37.14 198.25.37.30 198.25.37.46 198.25.37.62 198.25.37.78 198.25.37.94 198.25.37.110 198.25.37.126 198.25.37.142 198.25.37.158 198.25.37.174 198.25.37.190 198.25.37.206 198.25.37.222 198.25.37.238 198.25.37.254 La cantidad de hosts que podemos tener por subred es: 6 hosts. La cantidad total de hosts sin subnetting es: 254 hosts. La cantidad total de hosts con subnetting es: 224 hosts. Se desperdicia el 11.8% de la numeración. La red de la UNLP es una red clase B 163.10.0.0 con mascara natural 255.255.0.0. A la facultad de Ingeniería le fueron asignadas las subredes 163.10.3.0, 163.10.11.0, 163.10.12.0 y 163.10.27.0 todas con máscara 255.255.255.0. Suponiendo que todas las conexiones a la red de la UNLP provienen de un router cuya dirección es 163.10.11.62 ubicado en la subred 163.10.11.0/ 255.255.255.192. Se suele usar la convención de asignar como dirección a las interfaces de los routers que están conectados a una subred las direcciones mas altas posibles dentro de la subred, comenzando por la que esta “más cerca” de la conexión a Internet. a) Se desea organizar el espacio de direcciones para un esquema de red como el que se muestra en la figura. Indique subred/mascara y dirección de la interface conectada al/los router(s). Indique además cual seria la puerta de enlace o default gateway para las máquinas conectadas a cada subred. Observe que existen muchas posibilidades distintas de asignación de subredes. Para la IP 163.10.11.0 Máscara: 255.255.255.192 Dirección de subred Rango de IP 163.10.11.0 163.10.11.1 - 192.10.11.62 163.10.11.64 163.10.11.65 - 163.10.11.126 163.10.11.128 163.10.11.129 - 163.10.11.190 163.10.11.192 163.10.11.193 - 192.10.11.254 Broadcast 163.10.11.63 163.10.11.127 163.10.11.191 163.10.11.255 Para la IP 163.10.12.0 Máscara: 255.255.255.224 Dirección de subred Rango de IP 163.10.12.0 163.10.12.1 - 163.10.12.30 163.10.12.32 163.10.12.33 - 163.10.12.62 163.10.12.64 163.10.12.65 - 163.10.12.94 163.10.12.96 163.10.12.97 - 163.10.12.126 163.10.12.128 163.10.12.129 - 163.10.12.158 163.10.12.160 163.10.12.161 - 163.10.12.190 163.10.12.192 163.10.12.193 - 163.10.12.222 163.10.12.224 163.10.12.225 - 163.10.12.254 Broadcast 163.10.12.31 163.10.12.63 163.10.12.95 163.10.12.127 163.10.12.159 163.10.12.191 163.10.12.223 163.10.12.255 Para la IP 163.10.27.0 Máscara: 255.255.255.240 Dirección de subred Rango de IP 163.10.27.0 163.10.27.1-163.10.27.14 163.10.27.16 163.10.27.17-163.10.27.30 163.10.27.32 163.10.27.33-163.10.27.46 163.10.27.48 163.10.27.49-163.10.27.62 163.10.27.64 163.10.27.65-163.10.27.78 163.10.27.80 163.10.27.81-163.10.27.94 163.10.27.96 163.10.27.97-163.10.27.110 163.10.27.112 163.10.27.113-163.10.27.126 163.10.27.128 163.10.27.129 - 163.10.27.142 163.10.27.144 163.10.27.145 - 163.10.27.158 163.10.27.160 163.10.27.161 - 163.10.27.174 163.10.27.176 163.10.27.177 - 163.10.27.190 163.10.27.192 163.10.27.193 - 163.10.27.206 163.10.27.208 163.10.27.209 - 163.10.27.222 163.10.27.224 163.10.27.225 - 163.10.27.238 163.10.27.240 163.10.27.241 - 163.10.27.254 Broadcast 163.10.27.15 163.10.27.33 163.10.27.45 163.10.27.63 163.10.27.79 163.10.27.95 163.10.27.111 163.10.27.127 163.10.27.143 163.10.27.159 163.10.27.175 163.10.27.191 163.10.27.207 163.10.27.223 163.10.27.239 163.10.27.255 Ejercicio No 6: Se desea simular por medio de un programa, el comportamiento de un Router que se ncuentra configurado como lo muestra la siguiente figura: Resolución: Inicio{ Definición de variables Definiciòn de la estructura Especificar el paquete de datos por linea de comando Si{ direcciones IP estan en formato uuu.xxx.yyy.zzz Si{ IP origen distinto a IP destino Si{ Ip destino corresponde a alguna de las redes especificadas Direccionar paquete a dicha red (generando un archivo dse texto) Sino Direccionar a la red que contiene Default Gateway (generando un archivo dse texto) } Sino Almacenar en el archivo de interfaz de la red en cuestión (generando un archivo dse texto) } Sino Mensaje de error } Examinar los archivos de textos generados } Fin