Está en la página 1de 28

Prctica 3: Uso de herramientas y anlisis de paquetes

Autores: Enrique Bonet


Rogelio Montaana
Paco Soriano

Objetivo y descripcin general.


El objetivo de esta prctica es aprender a utilizar un conjunto de programas, la mayora de
ellos accesibles en forma de comandos u rdenes, que nos permitirn realizar diversas
tareas relacionadas con las comunicaciones en un host con sistema operativo Linux.
Muchos de estos programas estn disponibles con nombres iguales o muy parecidos en
otros sistemas operativos. Las opciones disponibles varan con las implementaciones y a
veces una misma tarea puede llevarse a cabo mediante diferentes comandos. Para obtener
ayuda sobre el uso y las opciones de cada comando puedes emplear la ayuda en lnea,
mediante el comando man (por ejemplo man ifconfig) o tambin el propio
comando con la opcin h (por ejemplo ifconfig h) .
Esta prctica se desarrolla utilizando los ordenadores del laboratorio con la particin del
sistema operativo Linux redes y con el usuario root (la contrasea la indicar el
profesor). Cada puesto de trabajo tiene tres rosetas, una blanca y dos negras. La roseta
blanca conecta a los puertos 10/100 Mb/s de un conmutador de la red de la Universidad, y
es la que debe utilizarse normalmente. Las rosetas negras conectan, ambas, con un hub de
10 Mb/s situado en el laboratorio, tambin conectado a la red de la Universidad; estas
rosetas negras se utilizan para experimentar con otro tipo de conexin en determinados
momentos de la sesin.
La mayor parte de la prctica se desarrolla de forma independiente en cada ordenador,
salvo algunas tareas que se han de hacer por parejas de ordenadores. En cada ordenador
debera haber preferentemente uno o como mximo dos alumnos.
A lo largo del guin se plantean una serie de preguntas que debes ir respondiendo durante
la sesin, ya que esto te facilitar el desarrollo de la prctica y su posterior estudio.

Redes

Desarrollo de la prctica.
1.-Desactivacin del cortafuegos y prueba de conectividad con ping
En primer lugar, para evitar posibles interferencias debes desactivar el cortafuegos
mediante el comando:
service iptables stop
que ejecutars en una ventana de terminal. Ahora, para comprobar que dispones de
conectividad lanza un ping a la direccin 147.156.1.1, que utilizars como direccin de
prueba a lo largo de la sesin. Una vez comprobada la conectividad interrumpe el ping.
2.-Comandos ifconfig y arp
Los comandos ifconfig y arp ya los has utilizado en prcticas anteriores. ifconfig
nos permite configurar la direccin IP y la mscara de una interfaz, as como averiguar las
caractersticas de todas las interfaces operativas. El comando arp nos permite consultar la
tabla ARP cache del host.
Ejecuta primero el comando ifconfig sin argumentos, para obtener informacin sobre
todas las interfaces que tiene configurado el sistema, sus nombres y caractersticas
principales. La respuesta obtenida depende del hardware y la versin de Linux del equipo.
Normalmente los sistemas suelen tener una interfaz loopback de nombre l0 y una interfaz
Ehternet cuyo nombre es eth0, p4p1 o algo similar. La interfaz loopback, que no
utilizaremos en esta prctica, tiene siempre la direccin IPv4 127.0.0.1 con la mscara
255.0.0.0. La interfaz Ethernet deber tener una direccin IPv4 del tipo 147.156.xxx.yyy
donde xxx.yyy vara para cada equipo, y la mscara, que depende de la red en la que nos
encontremos, ser 255.255.248.0 o algo parecido. En el siguiente ejemplo la interfaz
Ethernet recibe el nombre de p4p1:
root@lab6inf12 ]# ifconfig
lo
Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:142 errors:0 dropped:0 overruns:0 frame:0
TX packets:142 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:19416 (18.9 KiB) TX bytes:19416 (18.9 KiB)
p4p1

P3-2

Link encap:Ethernet HWaddr 00:1F:D0:CE:3F:30


inet addr:147.156.80.114 Bcast:147.156.87.255 Mask:255.255.248.0
inet6 addr: 2001:720:1014:88:21f:d0ff:fece:3f30/64 Scope:Global
inet6 addr: fe80::21f:d0ff:fece:3f30/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:1570760 errors:0 dropped:169583 overruns:0 frame:0
TX packets:27087 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:230583303 (219.9 MiB) TX bytes:3075366 (2.9 MiB)
Interrupt:43 Base address:0xe000

Prctica 3: Uso de herramientas y anlisis de paquetes


A partir de la informacin obtenida responde a la pregunta 1, indicando el nombre de tu
interfaz Ethernet, su direccin MAC (HWaddr:), direccin IP (inet addr:) y la mscara
(Mask:):
PREGUNTA 1
Nombre de la
interfaz Ethernet

Direccin MAC:

Direccin IP:

Mscara:
En prcticas anteriores hemos utilizado el comando ifconfig para modificar la
direccin IP y la mscara de nuestro ordenador, porque estbamos utilizando maquetas
aisladas y queramos tener direcciones privadas. En esta prctica vamos a trabajar
conectados a la red de la Universidad, por lo que utilizaremos la configuracin que
acabamos de anotar, que es la que trae por defecto el equipo.
Los primeros 6 bytes de la direccin MAC son lo que se conoce como el OUI
(Organizationally Unique Identifier) que es el prefijo que identifica al fabricante de la
interfaz. Para averiguar el fabricante de tu interfaz busca su OUI en el URL siguiente:
http://standards.ieee.org/develop/regauth/oui/public.html y antalo a continuacin:
PREGUNTA 2
Fabricante de la
interfaz de red

Ahora debes averiguar la direccin MAC del ordenador vecino tuyo a partir de su direccin
IP. Pregntale a tu compaero su direccin IP y haz ping a su ordenador, ejecutando a
continuacin el comando arp n para obtener su direccin MAC (la opcin n del
comando arp suprime la resolucin inversa de nombres, de forma que solo nos mostrar en
pantalla las direcciones IP):

P3-3

Redes
PREGUNTA 3
Direccin IP
del ordenador
vecino

Direccin MAC
del ordenador
vecino

Ahora vamos a modificar la direccin MAC de nuestro ordenador. Para evitar el riesgo de
coincidencia con direcciones existentes en otros ordenadores de la LAN te asignars una
direccin MAC local, creada a partir de tu direccin MAC global, que es la que viene
grabada de fbrica en la interfaz y que has obtenido antes con el comando ifconfig
(pregunta 1). Para ello tomars esa direccin MAC y le sumars 2 al segundo dgito
hexadecimal1, por ejemplo si la MAC de tu ordenador es 00:1F:D0:CE:3F:30 la direccin
que debes poner es la 02:1F:D0:CE:3F:30.
Para cambiar tu direccin MAC ejecutars ahora la siguiente secuencia de comandos:
ifconfig
ifconfig
ifconfig
ifconfig

interfaz down
interfaz hw ether XX:XX:XX:XX:XX:XX2
interfaz up
interfaz

donde XX:XX:XX:XX:XX:XX es la nueva direccin MAC e interfaz el nombre


de la interfaz Ethernet sobre la que quieres actuar (por ejemplo p4p1). El ltimo comando
(ifconfig interfaz) te permite comprobar que, efectivamente, el cambio ha
tenido lugar.
Ahora debes esperar a que tu compaero del ordenador vecino haga tambin el cambio de
MAC. Una vez cambiadas ambas MACs vuelve a ejecutar el ping a su direccin IP (la
que anotaste en la pregunta 3) y averigua, utilizando arp n, la nueva direccin MAC
que tiene:

Sumando 2 al segundo dgito hexadecimal de la direccin ests poniendo a 1 el penltimo bit del primer
byte, que es precisamente el que indica que se trata de una direccin local.
2
La direccin MAC puede introducirse tambin en formato XXXXXXXXXXXX

P3-4

Prctica 3: Uso de herramientas y anlisis de paquetes


PREGUNTA 4
Nueva
direccin MAC
del ordenador
vecino

Esta direccin debe ser diferente de la que anotaste en la pregunta 3, ya que tu compaero
ha cambiado su direccin MAC siguiendo el mismo procedimiento que tu. Si ahora te
conectaras al conmutador LAN y vieras su tabla de direcciones MAC encontraras
reflejadas en ella las nuevas direcciones.
3.- Comando route
Cualquier modificacin de una interfaz mediante el comando ifconfig borra las rutas
que hubiera definidas a travs de dicha interfaz, por lo que al cambiar tu direccin MAC te
has quedado sin ruta por defecto, solo tienes conectividad con los ordenadores de tu red
local (tu edificio). Para comprobarlo lanza un ping a la direccin 147.156.1.1 y vers que
no funciona.
Con el comando route n debera aparecer ahora algo similar a lo siguiente:
[root@lab6inf22 ~]# route -n
Kernel IP routing table
Destination
Gateway
147.156.80.0
0.0.0.0
169.254.0.0
0.0.0.0
[root@lab6inf22 ~]#

Genmask
255.255.248.0
255.255.0.0

Flags Metric Ref


U
0
0
U
1002
0

Use Iface
0 p4p1
0 p4p1

Esto significa que solo tienes ruta definidas para la red directamente conectada a tu interfaz
Ethernet. Aparece tambin una ruta para la red 169.254.0.0/16, que corresponde a las
direcciones de enlace local; esta ruta no tiene inters para el desarrollo de la prctica.
Para recuperar plena conectividad debes configurar nuevamente la ruta por defecto
utilizando el comando route de forma parecida a como lo has hecho en prcticas
anteriores. Sin embargo, para ello necesitas averiguar antes la direccin de tu router. Esta
direccin puedes deducirla a partir de la direccin y mscara de tu interfaz Ethernet (datos
que anotaste en la pregunta 1), sabiendo adems que el router tiene la primera direccin til
de la subred en la que te encuentras. Por ejemplo, si tu direccin fuera la 147.156.201.15 y
la mscara la 255.255.254.0, entonces la direccin del router sera 147.156.200.1. Averigua
ahora la direccin de tu router por defecto:

P3-5

Redes
PREGUNTA 5
Direccin IP
del router por
defecto

Una vez sabida dicha direccin debers definir la ruta por defecto utilizando el comando:
route add net 0.0.0.0 netmask 0.0.0.0 gw direccin_IP
donde direccin_IP es la direccin IP del router, que acabas de averiguar.
Una vez ejecutado el comando anterior debes comprobar con el comando route -n
que la ruta por defecto se ha definido correctamente, y con el ping a 147.156.1.1 comprobar
que has recuperado la conectividad con el exterior. Si por algn motivo defines una ruta
equivocada debers borrarla antes de repetir el comando correcto:
route del net red netmask mscara gw direccin_IP
donde red, mscara y direccin _IP son los valores que corresponden a
la ruta que quieres borrar, ya que cada ejecucin del comando route aade una nueva
entrada en la tabla de rutas:
4.- Definicin de direcciones IP secundarias
Normalmente una interfaz Ethernet tiene asociada una direccin MAC y una direccin IP,
como es nuestro caso. Sin embargo es posible, y a veces muy til, asociar varias
direcciones IP con una misma interfaz y con una misma MAC3. Esto es lo mismo que
cuando en una interfaz de un router configuramos varias direcciones IP, una actuando como
primaria y el resto como secundarias. En el caso de sistemas tipo Unix la direccin IP
primaria es la que aparece asociada con la interfaz fsica. Podemos aadir a una interfaz
tantas direcciones IP secundarias como queramos mediante el comando ifconfig,
utilizando el nombre de la interfaz seguido de una etiqueta alfanumrica cualquiera,
separada por el carcter :. Es prctica habitual utilizar como etiqueta nmeros naturales
correlativos (1, 2, 3,) de forma que si nuestra interfaz es la p4p1 las direcciones IP
secundarias irn asociadas con los nombres p4p1:1, p4p1:2, etc. Las direcciones
secundarias han de ser evidentemente diferentes de la direccin primaria, pero pueden
pertenecer a la misma red u otras diferentes.
Vamos a probar a configurar en nuestra interfaz Ethernet dos direcciones IP secundarias, de
las redes privadas 10.0.0.0/8 y 172.16.0.0/16. A partir de nuestra direccin primaria
(147.156.xxx.yyy) nos asignaremos las direcciones secundarias 10.0.xxx.yyy y
172.16.xxx.yyy; por ejemplo, si nuestra direccin es la 147.156.80.114 los comandos que
ejecutaremos sern:
3

Obsrvese que no es posible asociar varias direcciones MAC con una misma interfaz, ni varias MAC con
una misma IP. En cierto modo podemos considerar la MAC como el identificador de la interfaz, la MAC
puede cambiarse, pero en un momento dado la interfaz solo tiene una MAC.

P3-6

Prctica 3: Uso de herramientas y anlisis de paquetes


ifconfig p4p1:1 10.0.80.114
netmask 255.0.0.0
up
ifconfig p4p1:2 172.16.80.114 netmask 255.255.0.0 up
Ejecutando a continuacin el comando ifconfig sin argumentos podrs comprobar que
ahora aparecen nuevas subinterfaces que reflejan las direcciones IP que acabamos de
definir, pero con una menor cantidad de informacin asociada, por ejemplo estas
subinterfaces no tienen direcciones MAC ni muestran contadores de trfico, colisiones,
errores, etc. No es posible obtener un desglose de los paquetes enviados o recibido por la
subinterfaz p4p1:2, por ejemplo. Esto se debe a que realmente no se trata de interfaces
diferentes y todas esas caractersticas son las mismas que para la interfaz de la que
provienen.
Ahora comprueba que tu compaero del ordenador vecino haya hecho las definiciones
correspondientes a las IP secundarias y prueba a hacer ping a sus direcciones 10.0.xxx.yyy
y 172.16.xxx.yyy. Los pings deben funcionar exactamente igual que para la direccin
147.156.xxx.yyy. Despus de hacer el ping a las nuevas direcciones consulta con arp
n la ARP cache y observa la direccin MAC que aparece asociada con esas direcciones
IP; dicha direccin debera ser la misma que apareca para la direccin primaria, que es la
que anotaste en la pregunta 4.
Una consecuencia interesante de haber configurado las nuevas direcciones secundarias es
que nuestro ordenador tiene ahora dos rutas nuevas. Para comprobarlo consulta la tabla de
rutas con el comando route n . Vers que ahora aparece una ruta hacia la red
10.0.0.0/8 y otra hacia la 172.16.0.0/16, que corresponden precisamente a las redes de las
nuevas direcciones IP. Esto es lo que llamamos redes directamente conectadas y las
entradas han sido creadas como consecuencia de la configuracin direccin/mscara
asignada a las nuevas subinterfaces. Si antes de estar estas rutas hubiramos enviado un
paquete a una direccin 10.*.*.* 172.16.*.* nuestro host lo habra mandado al router por
defecto; sin embargo ahora lo que har es mandar un ARP request buscando al destinatario
del paquete, y si recibe respuesta le mandar directamente el paquete, sin que intervenga
ningn router en el proceso.
5.- Comando ethtool
El comando ethtool permite consultar y modificar los parmetros de funcionamiento de
una interfaz, por ejemplo con ethtool p4p1 visualizamos los parmetros de
funcionamiento de la interfaz p4p1.
Ejecuta ethtool sobre tu interfaz Ethernet y averigua la velocidad de conexin, el modo
dplex (half o full) y si est activada o no la autonegociacin.
PREGUNTA 6
Velocidad:
_________ Mb/s
Indique la
velocidad, modo
Modo Duplex:
________
dplex y
autonegociacin Autonegociacin: _______
P3-7

Redes
Por defecto, la interfaz Ethernet arranca con la autonegociacin en on, para negociar su
velocidad y modo dplex con el equipo (conmutador, hub, etc.) al que se encuentra
conectado. Como ahora haremos diversas pruebas y en algunas perderemos la conectividad
abre otra ventana de terminal y lanza en ella un ping a la direccin 147.156.1.1, que dejars
en marcha durante toda la prueba para monitorizar la conectividad.
Ahora averigua, consultando la ayuda online del comando ethtool, que comando debes
utilizar para desactivar la autonegociacin (una pista: debes utilizar la opcin s):
PREGUNTA 7
Comando para
desactivar la
autonegociacin
Ahora ejecuta el comando anterior y comprueba con ethtool que la autonegociacin se
ha desactivado. Cuntos pings se han perdido durante el proceso?. Reactiva ahora la
autonegociacin. Cuntos pings se han perdido esta vez? El nmero de pings perdidos
corresponde aproximadamente al tiempo en segundos que tarda la interfaz en desactivar (o
reactivar) la autonegociacin. Desactiva una vez ms la autonegociacin y cambia el
latiguillo del ordenador de la roseta blanca (switch 10/100 Mb/s) a una cualquiera de las
dos rosetas negras (hub de 10 Mb/s). Qu ocurre con el ping? Si repites el ethtool vers
que el ordenador se ha quedado con una velocidad de 100 Mb/s, que es la que tena en el
switch, y como hemos desactivado la autonegociacin al conectarlo a un hub de 10 Mb/s no
puede comunicarse. Para recuperar la conectividad has de poner la interfaz en 10 Mb/s,
cosa que podrs hacer tambin con la opcin s del comando ethtool. Averigua el comando
y cambia la velocidad:
PREGUNTA 8
Comando para
cambiar la velocidad
de la interfaz a 10
Mb/s

Con la velocidad a 10 Mb/s recuperamos la conectividad, pero el modo dplex en el


ordenador est a full y en el hub est a half; esta es una incompatibilidad que solo se pone
de manifiesto cuando hay trfico intensivo, por lo que nuestro ping parece funcionar
normalmente (aunque es posible que se pierda alguno de vez en cuando). Reactiva ahora la
autonegociacin con ethtool y mira a continuacin el estado de la interfaz, que debe ser 10
Mb/s half dplex, plenamente compatible con el hub. A continuacin devuelve el latiguillo
al conmutador (roseta blanca) y vers que la conectividad solo se interrumpe por unos,
segundos, el tiempo que el cable est desconectado ms lo que tarda el proceso de
autonegociacin en ajustar la velocidad y el modo dplex a la nueva conexin.

P3-8

Prctica 3: Uso de herramientas y anlisis de paquetes


Ahora explora las posibilidades que ofrece la opcin S del comando ethtool. Con ella
puedes averiguar estadsticas de la interfaz, algo ms detalladas que lo que ofrece el
comando ifconfig. Esto es ms o menos equivalente a lo que en un conmutador o router
obtienes con el comando show interfaces. Por ejemplo, si quisieras averiguar si una
interfaz est recibiendo paquetes errneos este sera el comando a utilizar.
6.- Programa wireshark.
Wireshark es el analizador de protocolos ms utilizado en la actualidad. Se trata de un
software de dominio pblico que est desarrollado para sistemas UNIX, Mac y Windows y
soporta multitud de interfaces fsicas (incluso inalmbricas, a pesar de su nombre). El
software puede obtenerse de forma gratuita de www.wireshark.org. Se trata de una
evolucin del conocido Ethereal, que cambi de nombre debido a que su principal
desarrollador pas a trabajar para otra empresa y por problemas de registro de marcas no
poda seguir utilizando el nombre original.
Wireshark tiene una interfaz grfica que facilita considerablemente su uso. Es capaz de
decodificar ms de 400 protocolos diferentes, desde el nivel de enlace al nivel de
aplicacin. Cuando se utiliza sobre interfaces Ethernet puede funcionar en modo promiscuo
y capturar todas las tramas de la red, o bien en modo no promiscuo y capturar solo las
dirigidas a la interfaz elegida. Aunque posee muchas opciones de inicio, lo ms normal es
ejecutarlo sin ningn tipo de opcin y configurarlo durante su uso.
Para arrancar el programa debemos ir a la pestaa Aplicaciones, seleccionar Internet y
all seleccionar Wireshark. Al arrancar el programa nos aparece una primera ventana
como la siguiente:

P3-9

Redes

La mejor manera de empezar es clicar en la Interface List que aparece en la parte superior
izquierda de la ventana, con lo que aparece una ventana superpuesta como la siguiente:

En ella se nos muestra la lista de interfaces disponibles. La columna IP nos muestra la


direccin IP de cada interfaz, por defecto la IPv6 pero pulsando en cualquiera de las
direcciones podemos obtener la IPv4. Adems nos muestra la actividad de cada interfaz,
indicando el nmero total de paquetes transmitidos/recibidos desde que se arranc el
programa, y el trfico instantneo en paquetes por segundo. Normalmente no tendremos
problemas en identificar la interfaz Ethernet, ya que recipbe el mismo nombre que ya
hemos visto en el ifconfig.
Si pulsamos el botn Start de la interfaz Ethernet empeza de forma inmediata la captura.
P3-10

Prctica 3: Uso de herramientas y anlisis de paquetes


Sin embargo es ms interesante pulsar el botn Options de dicha interfaz, ya que esto nos
permite ejercer un control previo, lo cual es muy interesante. Al hacerlo obtenemos una
ventana como la siguiente:

En este caso en la lnea que apunta la flecha se puede ver tanto la IPv6 como la IPv4 de la
interfaz en la que estamos escuchando.
Desgraciadamente no podemos explicar aqu el significado de todas las opciones que
aparecen en esta ventana, por lo que solo comentaremos dos de ellas:
La pestaa Capture packets in promiscuous mode (marcada por defecto) nos
permite indicar si queremos que la captura abarque todos los paquetes que llegan a
la interfaz, o solo los que van dirigidos a ella (en cualquier caso se incluyen los
paquetes broadcast).
El campo Capture Filter nos permite especificar un criterio de filtrado para la
captura, con el fin de restringir los paquetes a aquellos que resulten interesantes para
el problema o el caso que estemos siguiendo.
P3-11

Redes
Cuando pulsamos el botn Start empieza inmediatamente la captura y aparece una nueva
ventana dividida en tres partes:

La parte superior de esta ventana muestra un resumen en forma de tabla con una fila o lnea
por cada paquete capturado, en tiempo real. En principio los paquetes aparecen ordenados
por orden cronolgico, pero se puede cambiar el criterio de ordenacin clicando en la fila
superior de cualquiera de las columnas. Podemos tambin seleccionar cualquier paquete
para analizarlo en mayor detalle (en la figura se ha seleccionado el primer paquete). La
parte central de la ventana nos muestra en detalle el contenido del paquete seleccionado en
la parte superior, describiendo el protocolo al que corresponde y el significado de cada
campo, pudiendo analizar la estructura del paquete desde el nivel de enlace al de aplicacin.
En esta parte de la ventana podemos tambin seleccionar cualquier campo y expandirlo
para su anlisis detallado (en el ejemplo se ha expandido la cabecera IP). La parte inferior
de la ventana nos muestra un volcado hexadecimal y en caracteres ASCII de todo el
paquete, y en todo momento nos va marcando la parte del paquete que corresponde al
campo seleccionado en la parte central de la ventana (en el ejemplo de la figura marca el
campo TTL de la cabecera IP, que es el que se ha seleccionado en la ventana central).
Vamos a empezar con una captura indiscriminada en modo promiscuo, es decir dejando
marcada la opcin Capture packets in promiscuous mode y sin definir ningn filtro de
captura. Puesto que no estamos realizando ninguna actividad con la red solo veremos el
trfico generado por otros usuarios o dispositivos, pero dado que estamos conectados a un
conmutador lo que veremos ser en su mayora trfico broadcast y multicast. Esperaremos
P3-12

Prctica 3: Uso de herramientas y anlisis de paquetes


unos 10 segundos y pararemos la captura con CTRL/E para analizarla ms cmodamente.
Entre los paquetes capturados, muchos pertenecientes a protocolos desconocidos,
intentaremos localizar y analizar la estructura de uno de cada uno de los siguientes tipos:
Un paquete del protocolo BPDU (Spanning-Tree)
Un paquete ARP Request
Un paquete IP broadcast
Para localizar fcilmente un paquete de cada uno de los tipos idnicados puede ser til
ordenar la tabla de la ventana superior por la columna Protocol.
Analizando el contenido de esos paquetes debemos responder ahora a las siguientes
preguntas:
PREGUNTA 9
Direccin MAC de
destino de la BPDU

PREGUNTA 10
Direccin MAC de
origen del ARP
Request

Aparece esta
direccin dentro del
paquete ARP?

PREGUNTA 11
Qu TTL tiene el
paquete IP?

Cul es su direccin
de origen?

Y la longitud de su
cabecera?

Ahora realizaremos una segunda captura, pero esta vez definiremos antes un filtro
escribiendo en el campo Capture Filter not multicast. Como cabe suponer este filtro
P3-13

Redes
excluye a todos los paquetes con direcciones de destino multicast, lo cual incluye los
paquetes broadcast (en el apndice se encuentra una descripcin detallada de la sintaxis
utilizada para especificar filtros en Wireshark). Aunque el trfico capturado se reduce
bastante, no es nulo. Como podemos comprobar estamos recibiendo trfico uinicast
dirigido a otros ordenadores, a pesar de estar conectados a un conmutador A que se debe
esta actividad?
PREGUNTA 12
A que se debe el
trfico unicast de otros
ordenadores que
estamos capturando?

Ahora para la captura anterior (CTRL/E), cambia la conexin de tu ordenador al hub


(roseta negra) y lanza una nueva captura, tambin con el modo promiscuo activado y
poniendo esta vez como filtro de captura tcp and host glup.uv.es. Espera a que tu
compaero del ordenador vecino haga lo mismo antes de seguir. Una vez tengis ambos la
captura en marcha abre en una ventana de terminal una conexin FTP a glup.uv.es. Cuando
pida usuario entra con el usuario anonymous y pon como contrasea tu direccin de email (alumno@alumni.uv.es). Ejecuta cualquier comando de ftp (por ejemplo help) y
cierra la conexin con el comando quit.
Al estar activado el modo promiscuo y conectado a un hub habrs capturado no solo tu
sesin, sino tambin las de todos tus compaeros del laboratorio. Puedes analizar cualquier
paquete, incluidos aquellos que tericamente llevan sus contraseas (en nuestro caso las
direcciones de correo). Si seleccionas un paquete concreto de una sesin cualquiera y en la
pestaa Analyze eliges la opcin Follow TCP Stream podrs seguir cmodamente y con
todo detalle la sesin FTP elegida.
Una vez terminada esta prueba para la captura y vuelve a conectar el ordenador a la roseta
blanca, es decir al conmutador LAN.
7.- Pruebas varias con el comando ping
Pon la captura del Wireshark en marcha, desactivando esta vez la pestaa de modo
promiscuo y poniendo el filtro icmp para que solo se capturen los paquetes pertenecientes
a este protocolo. Utiliza el comando ping c 1 147.156.1.1 para enviar un paquete
ICMP y comprobar que el ping y la captura funcionan correctamente. Repite el envo
intentando ahora que el ping no llegue a su destino poniendo un TTL bajo (opcin t del
comando ping). Analiza los resultados obtenidos.
Crea un filtro que capture los paquetes que tengan un valor del campo TTL menor que 16.
Comprueba su funcionamiento con el ping.

P3-14

Prctica 3: Uso de herramientas y anlisis de paquetes


PREGUNTA 13
Qu filtro de
Wireshark capturara
los paquetes con TTL
menor que 16?

Lanza ahora otro ping, esta vez con un paquete de 4000 bytes, ms grande que la trama
Ethernet, para forzar su fragmentacin (la opcin s permite fijar el tamao de los paquetes
de ping). Analiza lo que ocurre e intenta explicarlo a la luz de lo visto sobre fragmentacin
en clase de teora. Observa si los campos de fragmentacin tienen los valores que seran de
esperar.
Ejecuta ahora el comando ping R c 1 147.156.200.29 que muestra la ruta ruta
seguida por los paquetes. Intenta localizar en los paquetes de respuesta la informacin que
muestra el ping relativa a la ruta seguida por los paquetes.
Averigua ahora la opcin del ping que permite especificar la longitud de los paquetes. Crea
un filtro que capture los paquetes de longitud menor de 200 bytes y comprueba su
funcionamiento.
PREGUNTA 14
Qu filtro de
Wireshark capturara
los paquetes con
longitud menor de 200
bytes?

8.- Resolucin de nombres. Comandos nslookup y host.


Generalmente los usuarios no acceden a los servicios mediante las direcciones IP, en su
lugar utilizan nombres que, adecuadamente elegidos, resultan ms fciles de recordar. Por
ejemplo, la direccin del servidor web de la Universidad de Valencia es 147.156.1.4, pero
la inmensa mayora de los usuarios utiliza en su lugar el nombre www.uv.es, que es fcil de
recordar si sabemos que todos los nombres de la Universidad de Valencia terminan en
uv.es. Los nombres en Internet tienen una estructura jerrquica basada en dominios; por
ejemplo el dominio de primer nivel es representa a Espaa y el de segundo nivel uv
representa a la Universidad de Valencia.
Pero los paquetes IP no contienen nombres, sino direcciones. Por tanto, cuando un usuario
teclea en su navegador el URL http://www.uv.es, antes de enviar la solicitud de conexin
su ordenador ha de averiguar la direccin IP correspondiente, para lo cual enva una
pregunta al servidor encargado de la resolucin de nombres, es decir de traducir ese nombre
en la direccin IP correspondiente. Dicho servidor se conoce como el DNS (Domain Name
Server) y es una pieza clave para el funcionamiento de la red, ya que sin l los usuarios
P3-15

Redes
estn obligados a utilizar las direcciones IP, que normalmente no conocen.
Existen dos comandos/programas que nos permiten enviar consultas al DNS, nslookup y
host. nslookup es ms antiguo, y por ello est ms extendido. host normalmente solo est
disponible en sistemas Linux y algunos otros unix. Los dos tienen su correspondiente man,
y en el caso de host es posible adems obtener informacin mediante la opcin h.
Tanto nslookup como host se pueden invocar como comando con un argumento, donde se
indica el nombre que queremos resolver. Adems nslookup puede invocarse sin
argumentos, en cuyo caso nos introduce en un intrprete de lnea de comandos propio,
reconocible por el prompt >, dentro del cual podemos ejecutar diversos comandos. Para
salir de ese intrprete y volver al Shell de UNIX debemos utilizar el comando exit.
Intenta hacer la resolucin del nombre siguiente utilizando cualquiera de los dos comandos
descritos:
PREGUNTA 15
Cul es la direccin
IP del ordenador
glup.irobot.uv.es?

Ahora repite la consulta anterior, pero poniendo antes en marcha una captura con el
Wireshark, para analizar los paquetes que se transmiten como consecuencia de la consulta
al DNS. Para que la captura sea selectiva vamos a configurar un filtro. Puesto que el
protocolo DNS del nivel de aplicacin utiliza a nivel de transporte el protocolo UDP y el
puerto 53 el filtro ser udp and port 53. Asegrate de que no est seleccionado el modo
promiscuo, para evitar capturar paquetes de otros ordenadores. Realiza la captura y
responde a las siguientes preguntas:
PREGUNTA 16
Cuntos mensajes
genera la consulta al
DNS?

A que direccin IP se
dirigen las consultas?
En el fichero /etc/resolv.conf se encuentran las direcciones IP de los servidores de
DNS que tiene configurados tu host (normalmente hay ms de uno para aumentar la
fiabilidad). Comprueba el contenido de ese fichero (por ejemplo con more
/etc/resolv.conf) y relaciona su contenido con la respuesta de la pregunta anterior.
Ahra cambia el nombre del fichero resolv.conf a resolv.conf.old . Repite la
P3-16

Prctica 3: Uso de herramientas y anlisis de paquetes


consulta anterior al DNS. Funciona? Prueba un ping a glup.irobot.uv.es Funciona?
Prueba un ping a su direccin IP, que obtuviste en la pregunta 15 Funciona? Puedes
explicar lo que ocurre?
Antes de seguir con el desarrollo de la prctica restaura su nombre original al fichero
resolv.conf.
El DNS tambin puede realizar resoluciones inversas, es decir encontrar el nombre que
corresponde a una determinada direccin IP. Para ello puedes utilizar los mismos comandos
que para las resoluciones directas, solo tienes que poner como argumento del comando
host o nslookup la direccin IP cuyo nombre quieres buscar. Para probarlo responde a
la siguiente pregunta (asegrate de tener en marcha la captura anterior, o en caso contrario
reandala):
PREGUNTA 17
Qu nombre se
corresponde con
la direccin IP
147.156.222.65?

Por la captura del Wireshark podrs comprobar que esta consulta ha generado un
intercambio de mensajes similar al que ocurri anteriormente para la resolucin directa.
La resolucin inversa es utilizada habitualmente en muchos programas. Por ejemplo, antes
hemos utilizado los comandos arp n y route n. En ambos casos la opcin -n serva
para evitar la resolucin inversa, ya que estbamos interesados en averiguar solo las
direcciones IP, no los nombres. Si ahora ejecutamos cualquiera de esos comandos sin la
opcin -n veremos como la informacin que nos muestran incluye los nombres
correspondientes a las direcciones IP implicadas. Adems, si observamos la captura del
Wireshark (que todava debemos tener en marcha) veremos que la ejecucin de estos
comandos, que normalmente no generara trfico en la red pues nos estn devolviendo
informacin puramente local, provoca ahora el intercambio de varios paquetes en la red
debido a las consultas enviadas al DNS.
Un caso curioso de resolucin inversa es el que puede tener lugar en el propio programa
Wireshark, segn las opciones que se elijan. Para ahora la captura que tengas en marcha y
clica en el campo Opciones. Vers que existe una casilla en la parte inferior derecha de la
pantalla, por defecto desactivada, que pone Enable Network Name Resolution. Si se
activa esta casilla el Wireshark intenta realizar la resolucin inversa de todas las
direcciones IP que aparecen durante la captura. Puesto que en una captura aparecen
normalmente muchas direcciones IP diferentes la resolucin inversa de todas ellas aumenta
de forma considerable la carga del Wireshark y genera mucho trfico adicional, que se
mezcla con el trfico a analizar dificultando mucho el anlisis de los paquetes, a menos que
se configuren previamente los filtros adecuados. Por ese motivo esta opcin est por
defecto desactivada.
Vamos a hacer ahora otra consulta al DNS:
P3-17

Redes
PREGUNTA 18
Cul es la direccin
IP del ordenador
robotica.uv.es?

Como puedes ver este nombre devuelve la misma direccin IP que el nombre
glup.irobot.uv.es, por tanto es evidente que diferentes nombres pueden resolverse en una
misma direccin IP. Lo contrario, es decir que varias direcciones IP se resuelvan en el
mismo nombre, no es posible.
Cuando antes hemos hecho la resolucin inversa hemos visto que la direccin
147.156.222.65 devolva nicamente un nombre, glup.irobot.uv.es. Esto indica que los dos
nombres no son equivalentes, ya que glup.irobot.uv.es es el nombre cannico u oficial,
mientras que robotica.uv.es es un alias o sinnimo. Una direccin IP puede corresponderse
con tantos nombres como queramos, pero solo uno de ellos ser el nombre cannico, siendo
el resto sinnimos o alias. Cuando se hace la resolucin inversa de una direccin el DNS
siempre devuelve el nombre cannico.
La situacin es en cierto modo parecida a la correspondencia entre MAC e IP, donde a una
direccin MAC le podan corresponder varias IP, pero no al revs. Adems, de las
mltiples direcciones IP solo una era la primaria o cannica, mientras que las dems eran
secundarias o alias. Grficamente la situacin es la siguiente:
Nombre cannico
IP primaria

Alias
Alias
Nombre cannico

MAC

IP secundaria

Alias
Alias
Nombre cannico

IP secundaria

Alias
Alias

P3-18

Prctica 3: Uso de herramientas y anlisis de paquetes


9.- traceroute
Este programa determina el camino que siguen los paquetes para llegar a un destino
determinado enviando hacia all paquetes de sonda con valores crecientes del TTL (Time
To Live).
Cada vez que un paquete llega a un router este decrementa el valor del campo TTL en 1
antes de reenviarlo al siguiente router hacia su destino. Si el TTL despus del decremento
es 0 el router descarta el paquete y devuelve a la IP de origen un mensaje ICMP Time
Exceded. Este mensaje Time Exceeded lleva como direccin IP de origen la del router
que ha destruido el paquete (ms concretamente la de la interfaz por la que se ha emitido el
mensaje ICMP). Enviando paquetes con TTLs crecientes que enva a modo de sondas (1, 2,
3, etc.) el host va descubriendo poco a poco la ruta hacia un destino determinado. La
mayora de las implementaciones de traceroute fijan por defecto un valor mximo de 30 en
el valor inicial del TTL para los paquetes enviados, ya que raramente un destino en Internet
se encuentra a ms de 30 saltos de distancia.
El programa traceroute est disponible en UNIX, Windows y otros sistemas operativos. En
Windows, donde recibe el nombre tracert, las sondas son paquetes ICMP Echo
request (como los de ping) mientras que en Linux/UNIX se utilizan por defecto
datagramas UDP, aunque mediante las opciones adecuadas es posible enviar paquetes
ICMP Echo request, e incluso TCP.
Por defecto traceroute realiza siempre la resolucin inversa de nombres; si quieres omitirla
puedes usar la opcin -n. La supresin de la resolucin inversa en el traceroute puede
agilizar a veces el proceso, pero resta claridad a la respuesta obtenida ya que los nombres
generalmente ayudan a saber la ubicacin de los routers en la red.
Utiliza el traceroute para averiguar el camino seguido por los paquetes para ir desde tu
ordenador hasta glup.irobot.uv.es.
PREGUNTA 19
Ruta hacia
glup.irobot.uv.es:

Para analizar en detalle el funcionamiento de traceroute vamos a repetir el comando


anterior teniendo en marcha una captura de Wireshark. Como filtro de captura pondremos
simplemente not multicast y nos aseguraremos de tener desactivado el modo promiscuo.
Para evitar interferencias debido a los paquetes de resolucin inversa generados utiliza la
opcin -n. Despus de terminada la captura intenta identificar, gracias a su valor de TTL,
los paquetes de sonda; analiza la secuencia temporal que ha seguido tu host en el envo de
esos paquetes (a partir de los valores que aparecen en la columna Time para cada uno) e
intenta encontrar una explicacin a su forma de proceder.
Existen diversos motivos por los que el comando traceroute puede fallar, por ejemplo
que en algn router del camino se hayan configurado interfaces con direccionamiento
privado, que exista un cortafuegos o filtro que impida el paso de los paquetes de sonda o de
P3-19

Redes
los ICMP Time Exceeded, etc.
Como prueba de lo anterior ejecuta ahora traceroute www.uv.es y observa el
resultado. El servidor web de la Universidad se encuentra protegido por un cortafuegos que
no deja pasar los paquetes UDP ni ICMP dirigidos a l. Sin embargo si utilizamos paquetes
TCP dirigidos al puerto 80 (el puerto estndar de los servidores web) el cortafuegos los deja
pasar, ya que considera que se trata de intentos vlidos de conexin al servidor web. Esto lo
conseguimos mediante la opcin T. Repite el traceroute con esta opcin y observa el
resultado. Observa, haciendo uso de la captura del Wireshark, el nuevo tipo de paquetes de
sonda utilizados.
Para terminar vamos a probar una ruta larga y compleja lanzando un traceroute al servidor
www.berkeley.edu (Universidad de Berkeley en San Francisco, Estados Unidos).
Puesto que este servidor se encuentra tambin protegido por un cortafuegos debes utilizar
como antes la opcin T del traceroute.
A partir de la informacin de tiempos obtenida, intenta responder a las siguientes preguntas
(pista: la velocidad de la luz en la fibra ptica es de aproximadamente 200.000 Km/s;
puesto que los tiempos que muestra traceroute corresponden al viaje de ida y vuelta esto
equivale a 100.000 Km/s, por lo que cada milisegundo corresponde aproximadamente a 100
Km de distancia. Ten en cuenta que los enlaces de fibra ptica no suelen ir por la ruta ms
corta).
PREGUNTA 20
En que salto se encuentra el
enlace nacional? (ValenciaMadrid):

En que salto se encuentra el


primer enlace internacional?
(Madrid-Suiza):

En que salto se encuentra el


enlace trasatlntico?
(Europa-EEUU):

Ten en cuenta que los nombres de los equipos no siempre se corresponden con su ubicacin
geogrfica.
10.- netstat.
El comando netstat (network statistics) suministra informacin relacionada con la
configuracin de la red, trfico cursado y estado de las conexiones del ordenador donde se
ejecuta. Est disponible de forma estndar en la gran mayora de los sistemas operativos,
P3-20

Prctica 3: Uso de herramientas y anlisis de paquetes


aunque las opciones varan segn las implementacion. La informacin sobre trfico se
ofrece de forma conjunta, sin detallarla por interfaz.
De todas las posibilidades que ofrece el comando netstat nosotros vamos a explorar las tres
siguientes:
Ver las estadsticas de trfico del equipo, detalladas por protocolo (opcin s).
Ver las conexiones TCP establecidas (opcin t)
Ver los puertos abiertos en TCP y UDP (opciones tl y ul)
Para ver el trfico cursado, has de utilizar la opcin s del comando netstat. Esto te ofrece
una estadstica resumida de los paquetes cursados por el equipo para cada uno de los
protocolos principales (IP, ICMP, TCP, y UDP) pero sin detallar las interfaces. Ejecuta
netstat s y responde a la siguiente pregunta:
PREGUNTA 21
Valores de los
contadores
indicados

IP: Total packets received:

________

ICMP: ICMP messages received: ____________


TCP: Segments received:

___________

UDP: packets received:

___________

Ejecuta ahora el comando ping c 10 147.156.222.65 seguido de netstat s


y anota los nuevos valores de los contadores anteriores:
PREGUNTA 22
Valores de los
contadores
indicados
despus del
ping

IP: Total packets received:

________

ICMP: ICMP messages received: ____________


TCP: Segments received:

___________

UDP: packets received:

___________

Ejecuta ahora el comando host glup.uv.es y anota los nuevos valores de los
contadores:

P3-21

Redes
PREGUNTA 23
Valores de los
contadores
indicados
despus del
host

IP: Total packets received:

________

ICMP: ICMP messages received: ____________


TCP: Segments received:

___________

UDP: packets received:

___________

Explica los resultados obtenidos.


Para ver con netstat las conexiones TCP activas utilizamos la opcin t. Antes de hacer
nada ejecuta netstat -nt y observa la respuesta (utilizamos adems la opcin n para
omitir de momento la resolucin de nombres en el resultado del comando). Debera
aparecer una lista de conexiones vaca, aunque es posible que tu equipo tenga ya alguna por
razones de mantenimiento o actualizacin automtica del software.
Establece ahora una conexin FTP a glup.uv.es mediante el comando ftp glup.uv.es.
Cuando te pida el usuario (Name) escribe anonymous y como contrasea pon tu direccin
de e-mail de la universidad (usuario@alumni.uv.es). Con la conexin FTP
establecida ejecuta de nuevo netstat -nt y analiza la informacin obtenida. Vers algo
parecido a lo siguiente:

[root@147 ~]# netstat -nt


Active Internet connections (w/o servers)
Proto Recv-Q Send-Q Local Address
Tcp
0
0 147.156.80.114:59577
[root@147 ~]#

Foreign Address
147.156.222.65:21

State
ESTABLISHED

En la columna Local Address aparece tu direccin IP seguida del nmero de puerto que el
sistema le ha asignado a tu cliente ftp cuando se ha conectado al servidor (59577 en el
ejemplo). La combinacin de direccin IP y nmero de puerto es lo que se conoce como el
socket o punto de conexin del nivel de transporte; el socket desempea en el nivel de
transporte una funcin equivalente a la direccin IP en el nivel de red. Averigua el socket
utilizado por tu cliente y responde a la siguiente pregunta:
PREGUNTA 24
Direccin IP:
________
Qu socket
utiliza el cliente en
Nmero de puerto: ________
la conexin FTP?

La columna Foreign Address indica el socket remoto, formado en este caso por la
P3-22

Prctica 3: Uso de herramientas y anlisis de paquetes


direccin IP del servidor Glup (147.156.222.65) y el nmero de puerto utilizado por el
servidor, que de forma estndar es el 21 para el protocolo FTP. Cada protocolo o servicio
estndar tiene reservado un nmero de puerto de los que se conocen como puertos bien
conocidos. En el apndice B tienes una lista de los nmeros utilizados por algunos de los
servicios ms comunes. Salvo algunas excepciones, normalmente los servidores utilizan
puertos por debajo del 1024, mientras que los puertos elegidos por los clientes (conocidos
como puertos efmeros) son siempre valores entre 1024 y 65535 (el nmero de puerto es
un entero de 16 bits). El rango concreto de nmeros de puerto utilizados por los clientes
depende de cada sistema operativo, pero siempre se emplean valores por encima del 1023
Repite ahora el comando omitiendo la opcin n, es decir netstat -t. De este modo
obtienes la misma informacin, pero con la resolucin de nombres activada. Vers que
ahora aparecen los nombres de las mquinas en lugar de las direcciones IP, pero adems en
la Foreign Address aparece ftp en vez del puerto 21, ya que el sistema sabe que ese
nmero de puerto corresponde al servicio ftp y por tanto muestra el acrnimo en lugar del
valor numrico. Lo mismo ocurre con otros nmeros de puerto bien conocidos.
Cierra ahora la sesin ftp con el comando exit y repite netstat -t. Vers que la
conexin pasa ahora al estado TIME_WAIT, donde permanecer durante uno o dos
minutos hasta desaparecer por completo. Abre ahora el navegador web y efecta una
conexin al servidor web de la universidad (www.uv.es). Ejecuta netstat -t, analiza
la respuesta obtenida y responde a la siguiente pregunta:
PREGUNTA 25
Qu nmero de
Nmero de puerto: ________
puerto utilizan los
servidores Web?

Adems de poder ver las conexiones establecidas, el comando netstat te permite ver que
puertos tiene tu ordenador a la escucha o en modo LISTEN, es decir puertos preparados
para recibir conexiones de otros ordenadores. Para esto debes utilizar las opciones tl (o
ntl para omitir la resolucin de nombres). Los puertos abiertos en todas las interfaces
tendrn * como direccin IP en la columna Local Address. Responde ahora, usando el
netstat, a la siguiente pregunta:
PREGUNTA 26
Nmero de puerto (ej.: 21)

Servicio (ej.: ftp)

Qu puertos TCP tiene


abiertos tu ordenador en
todas sus interfaces?

Adems de puertos TCP un ordenador puede tener abiertos puertos UDP (no tienen por qu
ser los mismos). El comando netstat tambin te permite explorarlos mediante la opcin
ul. De nuevo, los puertos abiertos en todas las interfaces tendrn * como direccin IP en la
columna Local Address. Responde ahora a la siguiente pregunta:
P3-23

Redes
PREGUNTA 27
Nmero de puerto

Servicio

Qu puertos UDP tiene


abiertos tu ordenador en
todas sus interfaces?

11.- nmap
La herramienta nmap (Network Mapper) es un escner de seguridad que permite obtener
informacin sobre un host o un conjunto de host. Hay implementaciones para todos los
sistemas operativos habituales, con versiones en lnea de comandos o por interfaz grfica.
Tiene gran cantidad de opciones y posibilidades, como puede verse observando la
informacin que devuelve el comando man nmap. Tambin puedes consultar toda la
documentacin y ejemplos de utilizacin en http://nmap.org . Nosotros vamos a explorar
solo una parte mnima de esas posibilidades.
Empieza ejecutando el comando nmap glup.uv.es y responde a la siguiente pregunta:
PREGUNTA 28
Nmero de puerto

Servicio

Qu puertos TCP tiene


abiertos glup?
Se trata de la misma informacin que nos daba el comando netstat tl, solo que ahora
la estamos obteniendo de otro host, lo cual convierte a este comando en una herramienta
muy interesante.
Por defecto nmap no escanea todos los puertos TCP, sino solo los mil ms utilizados en
servidores (en dicho rango hay puertos por debajo y por encima de 1024). Con la opcin p
podemos especificar un rango o una lista de rangos a escanear, por ejemplo si teclearas
nmap p0-65535 glup.uv.es escanearas todos los puertos TCP en glup; sin
embargo la ejecucin de este comando tardara varios minutos y sometera a glup a una
carga importante, ya que para descubrir los puertos abiertos nmap enva paquetes de sonda
intentando establecer conexiones con todos ellos. Para comprobarlo, haz ahora la siguiente
prueba: pon en marcha una captura de Wireshark configurando un filtro de forma que solo
captures el trfico entre tu ordenador y glup. Una vez tengas la captura en marcha ejecuta el
comando nmap p20-30 glup.uv.es, que escanea el rango de puertos 20-30.
Observa la captura obtenida y analiza la secuencia de paquetes enviados por tu ordenador.
Vers los intentos de conexin a cada puerto, que ocurren en orden aleatorio para evitar ser
considerado como un ataque sistemtico por parte de los cortafuegos.
Adems de escanear puertos TCP nmap puede escanear puertos UDP. Para esto hay que
utilizar la opcin sU, teclea nmap sU lab6inf22.uv.es (el ordenador del
profesor) y responde a la siguiente pregunta:

P3-24

Prctica 3: Uso de herramientas y anlisis de paquetes


PREGUNTA 29
Nmero de puerto

Servicio

Qu puertos UDP tiene


abiertos lab6inf22?

Como antes el escaneo explora por defecto los mil puertos ms habituales en UDP (la lista
no es la misma que para TCP), pero tambin es posible especificar un rango cualquiera con
la opcin p, por ejemplo nmap sU p10-100 lab6inf22.uv.es escaneara los
puertos UDP 10 a 100, ambos inclusive.
nmap admite especificar como argumento una lista de hosts, por ejemplo nmap
glup.uv.es lab6inf22.uv.es har el escaneo de los dos hosts especificados.
Tambin es posible, por supuesto, especificar las direcciones IP, evitando as la consulta al
DNS. En este caso se puede especificar no solo una direccin, sino una lista, un rango, etc.,
de mltiples maneras. Ejecuta por ejemplo el comando nmap p20-30
147.156.222.60-70 y observa el resultado. Obviamente nmap solo reporta
informacin de los hosts que verdaderamente existen (o que consigue descubrir) dentro del
rango especificado. Otros ejemplos de especificacin de rangos con nmap son los
siguientes:
Comando
147.156.80.0/26
147.156.80.15/26
147.156.83.16-38
147.156.85-87.20-30

147.156.72.23-34 130.206.12.23-34

Hosts escaneados
De 147.156.80.0 a 147.156.80.63
De 147.156.80.0 a 147.156.80.63
De 147.156.83.16 a 147.156.83.38
De 147.156.85.20 a 147.156.85.30
De 147.156.86.20 a 147.156.86.30
De 147.156.87.20 a 147.156.87.30
De 147.156.72.23 a 147.156.72.34
De 130.206.12.23 a 130.206.12.34

Como puedes ver en el segundo ejemplo de la tabla, cuando se utiliza la notacin


direccin/mscara la direccin especificada no necesariamente ha de ser la de la red
correspondiente, sino que puede ser la de cualquier host en la red. Tampoco es preciso que
el rango especificado corresponda con una red IP real, es decir en el ejemplo anterior la red
147.56.80.0 podra ser /27, /25 o cualquier otra cosa.
nmap permite escanear fcilmente grandes rangos de direcciones IP y de puertos. En estos
casos el nmero de intentos de conexin generados puede ser considerable, por lo que la
ejecucin del comando puede tardar bastante y someter a la red y a los hosts a una carga
importante. Adems, muchos cortafuegos estn programados para detectar los escaneos
masivos y alertar de su uso, porque se consideran una mala prctica y un riesgo en la
seguridad de los sistemas. Por estas razones nmap debe usarse con mucha prudencia en
estas situaciones, sobre todo si se est explorando una red ajena.

P3-25

Redes

Apndice A: Filtros en Wireshark.


En wireshark es posible construir filtros de captura con el fin de reducir de entrada el
volumen de paquetes a analizar. Como es lgico, si no se configura ningn filtro se
capturan todos los paquetes.
Aunque no se trata propiamente de un filtro, la desactivacin del modo promiscuo en la
interfaz ya ejerce un primer nivel de filtrado al suprimir todos los paquetes dirigidos a
direcciones unicast que no sean la de la interfaz de captura. Debemos tener en cuenta que,
independientemente de que est o no activado el modo promiscuo todo el trfico broadcast
es capturado, y el trfico multicast puede o no serlo, dependiendo de las caractersticas y la
situacin concreta de la interfaz.
Los filtros se construyen mediante expresiones formadas por una o ms primitivas. Las
primitivas pueden combinarse mediante la utilizacin de parntesis y los operadores and, or
y not. La siguiente tabla muestra un listado de las primitivas ms utilizadas:
[src|dst] host <dir_IP o nombre>
Filtra por la direccin IP (v4 v6) o por el nombre del host. Opcionalmente puede ir
precedida por la palabra clave src|dst para indicar que solo se desea cuando la direccin es
origen o destino. Si ninguna de ambas aparece se seleccionan los paquetes donde la
direccin aparece como origen o como destino

[src|dst] net <red> mask <mascara>


[src|dst] net <red> len <bits>
[src|dst] net <red/bits>
Filtra por la direccin de la red IP (v4 v6), especificada con su mscara, que puede
indicarse de las tres maneras indicadas. Opcionalmente la direccin puede ir precedida por
la palabra clave src|dst para indicar que solo se desea en la direccin de origen o destino. Si
ninguna de ambas aparece se seleccionan los paquetes donde la direccin aparece como
origen o destino

ether [src|dst] host <dir_MAC>


Filtra por la direccin MAC (formato XX:XX:XX:XX:XX:XX). Opcionalmente
puede incluir la palabra clave src|dst para indicar que solo se desea en la direccin de
origen o destino. Si ninguna de ambas aparece se seleccionan los paquetes donde la
direccin aparece como origen o como destino

ether|ip broadcast|multicast
Filtra los paquetes cuya direccin MAC (ether) o IP (ip) sea broadcast o multicast,
(cualquiera que esta sea). Obsrvese que multicast incluye broadcast.
[tcp|udp] [src|dst] port <puerto>
[tcp|udp] [src|dst] portrange <puerto1-puerto2>
Filtra por el nmero de puerto TCP o UDP, o por un rango de puertos.
Opcionalmente puede ir precedida por la palabra clave src|dst y tcp|udp para indicar que
solo se desea los paquetes con ese puerto como origen o destino y con protocolo TCP o
UDP, respectivamente. Si no se especifica src|dst se seleccionan los paquetes donde ese
puerto aparece como origen o como destino. Si no se especifica tcp|udp se seleccionan los
paquetes de ambos protocolos.

less|greater <longitud>
Filtra los paquetes cuya longitud es menor que, o mayor que la longitud
especificada.
P3-26

Prctica 3: Uso de herramientas y anlisis de paquetes


ip|ether proto <protocolo>
Filtra los paquetes cuyo campo protocolo en la cabecera IP (ip) o el Ethertype en la
cabecera Ethernet coincida con el valor indicado. El valor se puede especificar en
decimal o en hexadecimal
ip|arp|tcp|udp
Filtra los paquetes que pertenecen al protocolo especificado.
Veamos algunos ejemplos:
Filtro
src glup.uv.es
host glup.uv.es
dst net 147.156.0.0/16
net 147.156.0.0/16
port 20
ether src 00:21:6A:9D:30:B3
arp net 147.156.0.0/16
tcp port 21

host glup.uv.es
port ftp

and

Explicacin
Paquetes cuyo origen es el ordenador glup.uv.es.
Paquetes cuyo origen o destino es el ordenador glup.uv.es.
Paquetes destino es la red 147.156.0.0/16
Paquetes cuyo origen o destino es la red 147.156.0.0/16
Paquetes cuyo origen o destino es el puerto 20.
Paquetes ethernet cuyo origen es la direccin MAC
00:21:6A:9D:30:B3.
Paquetes de protocolo ARP con origen o destino en la red
147.156.0.0/16
Paquetes cuyo protocolo es TCP y origen o destino en el puerto
21.
not Paquetes con origen o destino el ordenador glup y que no lleven
como origen o destino el puerto ftp

P3-27

Redes

Apndice B: Nmeros de puertos asignados a algunos de los protocolos de


aplicacin ms comunes.
La lista completa de puertos se puede consultar en
http://en.wikipedia.org/wiki/List_of_TCP_and_UDP_port_numbers
Puerto
13
21
22
23
25
53
67
68
69
80
110
123
137
138
139
143
161
220
443
993
995
1503
1521
1720
1812
3389
5060

P3-28

Protocolo (descripcin)
Daytime (Fecha y hora)
FTP (Transferencia de ficheros)
SSH (Secure Shell)
Telnet (Terminal Remoto)
SMTP (Correo Electrnico)
DNS (Resolucin de Nombres)
BOOTP/DHCP (Parte Servidor)
BOOTP/DHCP (Parte cliente)
TFTP (Trivial File Transfer Protocol)
HTTP (Web)
POP3 (Post Office Protocol v3)
NTP (Network Time Protocol)
NetBIOS Name Service
NetBIOS Datagram Service
NetBIOS Session Service
IMAP (Internet Message Access Protocol)
SNMP (Simple Network Management Protocol)
IMAP3 (Internet Message Access Protocol v3)
HTTPS (HTTP sobre SSL/TLS)
IMAPS (IMAP sobre SSL)
POP3S (POP3 sobre TLS/SSL)
Windows Live Messenger
Oracle Default Listener
Sealizacin de llamada H.323
Protocolo de autenticacin RADIUS
Escritorio Remoto de Microsoft
SIP (Session Initiation Protocol)

También podría gustarte