Whireshark CMD

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 8

GUIA PROTOCOLOS, WIRESHARK, IPs, PING, TRACERT, cmd,

powershell

En un sistema de telecomunicaciones un protocolo es un conjunto mensajes que los


elementos del subsistema intercambian entre sí, para realizar las operaciones propias del
sistema con el fin último de transportar la información de usuario.

Los mensajes pueden llevar solo información de control o información de usuario.

Por ejemplo, en una red de telefonía móvil, cuando enciendes el teléfono, éste busca la red
y lanza un mensaje para informar que se quiere registrar y quedarse operativo. La estación
base recoge el mensaje y lo traslada al la controladora de estaciones base, de ahí pasa a la
parte de núcleo de red, se genera una consulta al registro de tarjetas SIM, otra consulta al
registro de IMEIs, se inicia un proceso de intercambio de claves de cifrado, y si todo es
correcto, la red determina que el teléfono queda operativo y el móvil recibe una respuesta
confirmando el registro.

Hasta el momento todos los mensajes son de control. Cuando el terminal queda encendido,
el usuario ya puede hacer uso de él. Por ejemplo si quiere hacer una llamada, al marcar el
número, se enviará un mensaje tipo SETUP con el número del cliente de destino, y al
núcleo de red analizará la numeración, buscará al otro terminal en su zona geográfica y
lanzará una búsqueda que el otro terminal tendrá que responder, Una vez completado el
proceso de control se establecerá el camino para transportar la voz.

Si lo que queremos es hacer una conexión a internet el teléfono enviará una solicitud de
activación de contexto de paquetes, y la parte de núcleo establecerá el camino para salir
por los enrutadores hacia la red.

En cada interfaz y por cadas tecnología, 2G, 3G, 4G, 5G hay infinidad de protocolos para
que los subsistemas se entiendan, independientemente de si el teléfono de Samsung y la
red de de Ericsson, o si el núcleo es de Nokia y el buzón de voz de Huawei.

Con los protocolos de internet ocurre exactamente lo mismo, de hecho muchos de ellos
también se usan en la red móvil, como es lógico.

El sistema OSI establece siete capas o niveles, de forma que la capa inferior empaqueta
protocolos de capa superior. Es decir, raramente los protocolos van aislados. Por ejemplo lo
que llamamos TCP/IP, en realidad es una torre de niveles.

Si estamos en una red como la de casa o como la del aula:

- Primero está el nivel físico, que puede ser el cable o un interfaz de radio WIFI.
- Luego va el nivel de enlace. Se establece un enlace entre el equipo y el router con
una trama ethernet o WIFI, que no es más que un caso particular de ethernet. En el
nivel de enlace se usan las direcciones físicas o direcciones MAC de los puertos de
red.
- Por encima de la trama ethernet se monta el nivel de red, con el protocolo IP. El
protocolo IP se encarga de encaminar los paquetes por la red, para eso se usa la
dirección IP de destino, y la de origen para saber el camino de vuelta.
- Por encima está el nivel de transporte y el protocolo en este caso es TCP, que se
encarga de establecer una conexión entre origen y destino para relacionar y ordenar
los paquetes IP que en principio viajan solos.
- Por encima del nivel de transporte, a menudo no hay más niveles hasta en nivel de
aplicación, por ejemplo DNS o HTTP.

En la tabla siguiente vemos una muestra de los principales protocolos de internet y de otros
ámbitos de telecomunicación.

Vamos a nombrar los más importantes:

- Ethernet y Wi-Fi, como ya hemos mencionado son de enlace, entre el equipo y el


router, y se usan las direcciones MAC para distribuir las tramas.
- IP es de nivel de red. Se usan las direcciones IP de origen y destino.
- TCP es el protocolo del cuarto nivel o nivel de transporte. Establece una conexión
entre origen y destino, relaciona los paquetes IP de una misma conexión, y gestiona
la entrega y validación mediante números de secuencia.
- UDP otro protocolo de transporte para datagramas, que básicamente son mensajes
unitarios para operaciones cortas que no necesiten conexión. No garantiza la
entrega ni el orden de los paquetes, al contrario que TCP.
- En los protocolos de transporte (TCP, UDP) viaja el número de puerto que determina
la aplicación, o más concretamente a qué protocolo del nivel 7 o de aplicación
corresponde el tráfico. Los puertos principales junto que su aplicación son:
- 80 para HTTP
- 443 para HTTPS
- 25 para SMTP o correo saliente.
- 110 para POP o correo entrante
- 53 para DNS, para resolver los nombres a IPs
- 23 para TELNET o conexión remota de terminal.
- 22 para SSH que es un TELNET seguro.
- 20 y 21 para FTP, o transferencia de fichero.
- 5060 y 5061 para SIP, que es el protocolo de voz IP en telefonía.
Estos puertos son los normalizados o por defecto, pero se pueden usar otros si el
administrador nos lo dice.
- SSL/TLS son protocolos del nivel de presentación y se usan para transportar la
información cifrada de las páginas web HTTPS.
- Los protocolos de aplicación principales son DNS, HTTP, POP,, etc, que se
corresponden con los puertos mencionados arriba.

Otros protocolos que podemos ver en wireshark, que no aparecen en la tabla son:

- QUIC es un protocolo de transporte creado por Google. En vez de usar TCP


para el control de conexión y control de flujo, usa UDP, y monta una segunda
capa de transporte con todas sus características.
- ARP es un protocolo de nivel de enlace o nivel 2, y sirve para relacionar
direcciones físicas MAC con direcciones IP, para que la capa superior que es
IP pueda encaminar los paquetes.
- IGMP es un protocolo de nivel 3, o nivel de red. Se usa para tráfico multicast
en la que muchos equipos reciben simultáneamente el mismo streaming de
video. Lo veremos en redes con decodificador de TV a la carta.
- ICMP es un protocolo de nivel 3 y sirve para gestionar las redes IP. Lo
veremos, entre otros casos de tráfico, cuando lancemos un ping o un tracert
en la consola de windows. Para el caso del tracert hace uso del TTL, que es
un campo del protocolo IP.

Veamos casos de tráfico.

- Consulta a DNS. La consulta a DNS sirve para “resolver” nombres de dominio a IPs,
IPs a nombres de dominio y para redireccionar nombres de dominio. Veremos un
mensaje tipo “standard query” para la pregunta y “standard query response” para la
respuesta.

Hay de varias clases:

- A para la consulta directa de nombre de dominio a IP.


- AAAA para la consulta directa de nombre de dominio a IPV6
- PTR para búsqueda inversa.
- CNAME para redireccionar de un nombre de dominio a otro.
- etc

Ejemplo tipo A

Ejemplo tipo AAAA

Ejemplo PTR

Desde el punto de vista de la formación de la pila de protocolos el DNS va montado sobre


un mensaje UDT, éste a su vez sobre IP, y todo sobre la trama ethernet:

Ethernet usa las direcciones MAC como origen Src y destino Dst
IP usa las direcciones IP como origen y destino.
UDP indica el puerto de origen y destino. Importante para DNS es el 53
DNS transporta el nombre de dominio IP que queremos consultar. Lo vemos si hacemos
click en el desplegable de la izquierda de Domain Name.

Ya sabemos que una consulta a DNS va por UDP puerto 53, por lo que si queremos filtrar
para ver solo el protocolo DNS pondremos:
udp.port==53
Otra cosa que podemos ver es la descarga fallida de una página HTTP. Podemos filtrar por
tcp.port==80. Primero se establece la conexión TCP. Posteriormente se envía una HTTP
GET, solicitando la página, pero el servidor que la alojaba nos manda el error 404 y un
pequeño HTML para indicar que hay un fallo.

En HTTP la información va sin cifrar, por lo que podemos ver el código HTML que compone
la página siguiente.

Para abrir el terminal de comandos de windows ponemos CMD en la barra de búsqueda y


pulsamos sobre la aplicación “símbolo del sistema”

Comandos interesantes:

ipconfig Para ver los datos de configuración IP de nuestro equipo


nslookup google.es Para hacer una consulta a DNS. (google.es es un ejemplo)
tracert google.es Para tracear la ruta y mostrar los enrutadores hasta llegar al destino
ping google.es Para comprobar si el servidor está activo y el tiempo de respuesta.
hostname Muestra el nombre del equipo en red.
getmac Muestra la dirección MAC de todos los adaptadores de red.
arp -a Muestra la tabla de MACs-IPs en cacheada en windows.
Cosas para probar:

ASIGNACIÓN DE IP

Pongo el portátil en modo avión y miro la configuración de red con ipconfig. Veo que no
tiene IP asignada.

Filtro en wireshark con el filtro “dhcp” y activo wifi. Se produce una solicitud de IP con el
protocolo DHCP. En un mensaje IP con direcciones ficticias. Encima se empaqueta UDP
con el puerto 67, y por encima DHCP que es el protocolo de configuración dinámica de IPs.

Tras finalizar el proceso mi portátil ya tiene la IP asignada de nuevo. Lo puedo comprobar


con ipconfig.

QUÉ ES PING

“ping” es un comando que sirve para ver si un servidor está “vivo” y cuánto tarda en
responder.
Podemos verlo en directo en wireshark, mientras lo pedimos. Filtramos por “icmp” y
mandamos un ping a un servidor. Por ejemplo a google. En la consola veremos que envía
cuatro paquetes. En wireshark vemos sucesivamente los cuatro paquetes con sus
respuestas. A nivel de protocolo un ping es un paquete IP y sobre él se monta el protocolo
ICMP. Tanto IP como ICMP son protocolos de nivel de red, o nivel 3.
Muy importante es el parámetro TTL, “time to live”, o el “tiempo por vivir”. Es un parámetro
del protocolo IP, no solo para los ping. Es para todo el tráfico.
El TTL por defecto es 128. El ping sale con TTL 128 del portátil y por cada enrutador que
pasa se decrementa en 1. Si llega a 0 antes de que llegue al de destino el paquete se
desecha y se informa del error mediante un ICMP al servidor de origen.
El uso de TTL es un mecanismo de protección para evitar la “bola de nieve” en caso de
bucles en el enrutamiento.
Podemos probar el comando:
ping -i 4 google.es
Este comando fija el TTL a 4, de forma que morirá antes de llegar a google, por lo que no
tendremos respuesta, sino un mensaje ICMP de TTL excedido.

Podemos ir incrementando el número hasta que al superar el número de saltos, llegaremos,


y obtendremos una respuesta al ping.
En la respuesta normal, vemos un TTL de 117. Esto nos hace suponer que el TTL de
google también está fijado en 128, y ha pasado por 11 enrutadores antes de llegar.

CÓMO FUNCIONA TRACERT.

Resulta interesante ver cómo “tracert” hace uso del TTL para ir componiendo la ruta salto a
salto. El comando “tracert” genera un ping con TTL=1. Como muere al primer salto recibirá
un ICMP con la IP del primer enrutador. Luego genera otro ping con TTL=2, y así obtiene la
IP del segundo enrutador. Así va generando pings con TTL sucesivos, hasta que consigue
alcanzar el servidor de destino. En wireshark veremos todos los ping, sucesivos con los TTL
expirados, hasta que finalmente conseguimos superar el número de saltos y obtener la
respuesta.

ENLACES DE INTERÉS
https://www.whatsmydns.net/ Propagación en un dominio en una muestra de DNSs
del mundo.

https://nic.com/whois Búsqueda de datos de registro de nombres de dominio.

https://www.dominios.es/es Para dominios .es

https://punycode.es/ Conversor de punycode a unicode. (para nombres de


dominio con caracteres especiales, como eñes)

USO DE POWERSHELL

Powershell es una herramienta mucho más avanzada que CMD. Dos sencillos ejemplos que
muestran las capacidades son:

Una especie de ping a nivel TCP al puerto 80:

> Test-NetConnection google.es -Port 80

ComputerName : google.es
RemoteAddress : 142.250.200.67
RemotePort : 80
InterfaceAlias : Wi-Fi
SourceAddress : 192.168.1.85
TcpTestSucceeded : True

Una petición HTTP a una web como lo haría un navegador.

$response = Invoke-WebRequest -Uri "https://www.google.com"


$response.Content

También podría gustarte