En el sistema operativo Windows 10, tenemos por defecto activado el firewall del propio Windows. Dependiendo de la red donde estemos conectados, y cómo la configuremos (pública o privada), podremos realizar determinadas comunicaciones. Hoy os vamos a enseñar cómo activar el «ping» en Windows 10, para que desde cualquier equipo de la red local puedan hacernos ping a nosotros, ya que por defecto no se encuentra habilitado.
¿Qué es el ping y qué paquetes de datos se envían?
El ping es una de las utilidades de redes más básicas, nos permite saber si un ordenador, un servidor, un router o cualquier tipo de «host» está levantado y acepta comunicaciones. Cuando realizamos un ping, lo que estamos enviando realmente es un paquete ICMP de tipo «echo-request», este paquete se envía desde el origen hasta el destino, una vez que llega al destino, el host puede contestar a este «ping» o descartar el paquete. Dependiendo de cómo esté configurado el firewall se aceptarán o no estos paquetes de ping (ICMP echo-request). El host que contesta al ping, lo hace respondiendo con un mensaje ICMP echo-reply, a nivel de firewall también se podría bloquear el ICMP echo-reply en sentido salida, sin embargo, es más eficiente y recomendable que se bloquee el ICMP echo-request que nos llegará a la interfaz de red.
Gracias a la herramienta «ping» podremos saber si un host está levantado o no, normalmente en redes locales domésticas que son privadas, el ping viene permitido de forma predeterminada, porque es una forma muy fácil de comprobar que existe conectividad. Sin embargo, si configuramos la red como «red pública» esto no ocurre así, por defecto todos los pings que recibamos se denegarán por seguridad, porque estamos en una red pública y no es recomendable que haya comunicación con otros equipos por seguridad.
Utilidades de ping
Como vemos, la herramienta ping nos da la oportunidad de conocer datos acerca de una conexión, donde sabremos si los paquetes llegan de forma efectiva a su destino, y este no responde. Se trata de una herramienta de diagnóstico que utiliza los mensajes ICMP, mediante paquetes IP, y que muestra una información determinada. Algunos de las razones para utilizarlo son:
- Analizar la conectividad de una red y ver el estado en que se encuentra.
- Realizar análisis de latencia de la conexión entre dos puntos concretos.
- Conocer la IP de un dominio.
- Comprar si los equipos destino están disponibles.
- Se puede implementar con scripts para tener controlado el estado de un servidor de forma remota.
A su vez, este nos indicará algunos valores como:
- Paquetes recibidos o que no llegan a su destino.
- Direcciones IP.
- Tiempos de respuesta.
Qué es ICMP
ICMP es un protocolo que nos proporciona información sobre problemas en un entorno de red. Permite crear puntos de comunicación en los sistemas en red, y realiza envíos a las máquinas en forma de paquetes. A su vez, nos da información con el retorno, sobre los problemas que se encuentran en la comunicación. Este no requiere de instalación, pues está incorporado en el kernel, por lo cual todo el mundo lo tiene disponible.
Una de sus grandes ventajas, es que es muy sencillo de utilizar, y nos proporciona la información de forma clara. Pero este también tiene sus inconvenientes, pues no nos garantiza que un paquete se entregue de una forma fiable, pero sí que nos ayuda de las siguientes formas.
- Verifica que un destino está activo y se pueden enviar paquetes.
- Nos informa de los problemas que se encuentran en una cabecera.
- Sincroniza el reloj y las estimaciones de tiempo en el tránsito de los paquetes.
- Muestra direcciones de Internet y máscaras de subred.
La configuración que os vamos a enseñar a continuación, se puede aplicar tanto en redes que están configuradas como «privadas», por si queremos modificar el comportamiento avanzado del firewall de Windows, y también se puede aplicar en redes que están configuradas como «públicas», donde, por defecto, todas las comunicaciones desde otros equipos a nosotros se encuentran bloqueados. Debemos tener en cuenta que las políticas en redes públicas son de permitir cualquier tráfico saliente y permitir todo tráfico entrante relacionado, es decir, que previamente nosotros hayamos enviado. Por defecto, el resto de comunicaciones entrantes está denegado.
Opciones del comando ping
Seguramente ya has podido realizar un ping a algún equipo, o incluso a Google, siendo una prueba de iniciación en redes muy famosa y utilizada. Y realmente estamos ante un comando muy simple, el cual puede generar peligros. Por el cual muchos sistemas, optan por desactivarlo. Pero más allá de su simpleza y la valiosa información que nos da en muchos casos, este nos permite utilizar algunos parámetros a mayores para definir un poco más los resultados. Obteniendo así información más detallada, la cual puede ser muy útil para muchos usuarios o administradores.
- -t: Con esta extensión, podremos lanzar un ping extendido. Este enviará paquetes continuamente al destino seleccionado. Siendo un proceso que no termina, al menos hasta que nosotros mismos le indiquemos que pare. Para ello podemos utilizar Ctrl + C-
- –A <ip>: Esto nos va a facilitar el nombre del host de destino. Su nombre se mostrará junto a las estadísticas Ping en CMD de Windows.
- -n <número>: Nos permite definir el número de solicitudes que vamos a enviar. En la configuración estándar, este enviará cuatro paquetes ICMP. Pero si queremos enviar más sin hacerlo extendido, con este comando las definimos.
- -l <tamaño>: Se encarga de definir el tamaño de los paquetes ICMP, establecido en bytes. En su modelo básico, son 32 bytes, pero de esta forma podemos establecerlo hasta un tope de 65 527 bytes.
- -f: Establece el flag <Do not fragment> en la cabecera de la IP. Esta solicitud puede ser dividida en diferentes unidades más pequeñas, distribuidas por los diferentes nodos.
- -i <TTL>: Con esta opción podremos definir un TTL para la solicitud ICMP. Con un máximo de 255-
- -4: Obliga a que se utilice IPv4, y solo es dirigido al receptor mediante el nombre del equipo.
- -6: Nos encontramos ante el mismo caso que la anterior, pero con direcciones IPv6.
Motivos para desactivar ping
Esta función es ampliamente utilizada para verificar la conectividad de las redes. Para ello se realizan envíos de paquetes a los dispositivos, esperando la respuesta que nos dé información sobre la conexión. Esta función es muy útil para diagnosticar problemas dentro de una red, pero también puede utilizarse para atacar la red. Es por ello que en muchos lugares deciden desactivar esta función. Algunos de los motivos principales son:
- Seguridad: Esta función puede ser utilizada por atacantes para descubrir dispositivos en una red, y recopilar información sobre los mismos. Si se desactiva, reducimos esta exposición de los equipos de nuestra red a posibles ataques que lleguen desde el exterior.
- DDoS: El ping se puede utilizar para generar ataques de denegación de servicio. Los atacantes podrían sobrecargar la red, mediante el envío de gran cantidad de paquetes mediante ping. Esto puede sobrecargar los equipos, y provocar una interrupción en la red.
- Privacidad: El ping se puede utilizar para recopilar información sobre la red, como pueden ser las direcciones IP de los equipos, o el número de dispositivos que se encuentran conectados. Por lo cual, desactivarlo es una medida más de seguridad.
- Rendimiento: Cuando la red experimenta algún tipo de problema de rendimiento, la función ping puede ser una herramienta que cargue más los dispositivos y la red. Desactivando, reduce la cantidad de tráfico que se puede generar de forma potencial, mejorando así el rendimiento de la misma.
- Cumplir normativas: En muchas industrias, como puede ser la sanitaria, hay muchos requisitos que se deben cumplir ante diferentes organismos. Por lo cual, alguno de ellos puede exigir que esta función se desactiva, para que poder obtener alguna verificación de seguridad para la organización. Estas certificaciones, afectan a muchos sectores diferentes, por lo cual muchas empresas se esfuerzan mucho en cumplirlas para poder obtenerlas.
¿Debería permitir o bloquear el ping en redes públicas?
Cuando habilitamos que nos hagan un ping, no deja de ser que nos envíen un paquete ICMP Echo, y que nosotros respondamos con ICMP Request. Hay muchos administradores de redes y sistemas que prefieren bloquear cualquier ping que nos realicen (solamente filtrar los ICMP Echo que son los paquetes de entrada), con el objetivo de no contestar con un ICMP Request y desvelar que estamos conectados a una red. Bloquear el típico ping simplemente nos sirve para pasar un poco desapercibidos dentro de la misma red local doméstica o profesional, digamos que es «seguridad por oscuridad», por lo que no debería ser lo único para proteger nuestra seguridad.
Actualmente hay otros métodos además del típico ping, para poder descubrir que un dispositivo está conectado a una red, por ejemplo, se le puede enviar tráfico TCP o UDP para comprobar si responde a estas conexiones, por ejemplo, programas como Nmap para sistemas Linux nos permiten realizar un escaneo de todos los hosts que hay en una o varias redes, además, también nos permite realizar un completo escaneo de puertos de todos los hosts que nosotros queramos. Nmap utiliza diferentes técnicas de escaneo para comprobar si hay un host en concreto que está online en ese momento, por supuesto, también utiliza diferentes técnicas (en algunos casos bastante avanzadas) con el objetivo de ver los puertos que están abiertos.
Configurar el firewall de un equipo final, como un ordenador con Windows, es muy importante con el objetivo de bloquear tráfico que no queremos, e incluso para protegernos frente a posibles amenazas. Un firewall siempre debería estar configurado en modo restrictivo, con el objetivo de bloquear todas las comunicaciones excepto las realizadas en un primer momento por nosotros, es decir, un firewall SPI que gestione el estado de las conexiones para diferenciar entre el tráfico que hemos generado nosotros o el que nos han hecho desde el exterior.
Manual para permitir que nos hagan ping en Windows 10
Lo primero que tenemos que hacer es acceder a «Inicio / Configuración«, desde aquí podremos acceder al menú de «Red e Internet» y podremos acceder directamente a su administración.
Una vez que estemos en el menú de «Red e Internet», vamos a poder ver que nuestra red está configurada como «Red Privada», por tanto, podremos compartir recursos en red local etc. Para entrar en la configuración del cortafuegos, debemos irnos a la sección «Firewall de Windows» que está en la parte inferior:
Una vez que estemos en el menú de «Firewall de Windows», debemos pinchar en «Configuración avanzada» para poder configurar el ping correctamente, y ya de paso, ver las diferentes políticas que tenemos disponibles para habilitar.
Otra forma de acceder al firewall en configuración avanzada directamente, es poniendo «firewall» después de pinchar en inicio, y seleccionar la opción que nos da Windows directamente, así nos ahorraremos todos estos pasos.
Una vez que hayamos pinchado en «Configuración Avanzada», podremos ver en la pantalla principal las diferentes políticas que tenemos disponibles, tanto del perfil «Dominio», como de los perfiles «Privado» y «Público». Tal y como podéis ver, tanto el perfil privado como público, las conexiones entrantes que no coincidan con una regla estarán bloqueadas, esto es una política restrictiva, ideal para tener la mejor seguridad posible, por lo que, si queremos algo que no venga por defecto, tendremos que crearlo nosotros mismos. Las conexiones salientes, sin embargo, que no coincidan con una regla estarán permitidas, esto es una regla permisiva, por lo que solo va a bloquear lo que específicamente definamos.
Para poder modificar esta política y que nos puedan hacer «ping», debemos irnos a la sección de «Reglas de entrada«:
En las reglas de entrada tenemos varias predefinidas, la que nos interesa a nosotros es la regla que pone «Archivos e impresoras compartidos (petición eco ICMPv4 de entrada)«, y si utilizamos IPv6, pues deberemos activar la regla correspondiente. Únicamente deberemos pinchar con el click derecho sobre esta regla, y pinchar en «Habilitar», ya que por defecto la acción al habilitarla es de «Permitir». Ya sabéis que hay consejos para bajar la latencia.
Una vez habilitada, nos podrán hacer ping tanto en redes «privadas», como también «públicas». Si queremos que únicamente puedan hacernos ping en redes privadas (recomendable de cara a la seguridad), simplemente pinchamos en «Propiedades», y en la pestaña de «Opciones avanzadas» podremos definirla en un perfil en concreto:
Y en cuanto la hayamos habilitado, cualquier equipo de nuestra red local podrá hacernos ping sin ningún tipo de problema, tal y como podéis ver aquí:
Otra opción que tenemos es crear una regla nosotros desde cero, y más específica, por ejemplo,, que solo los equipos de nuestra propia subred local puedan hacernos un ping, y el resto lo descartamos, ideal para no contestar a ping si el origen está en otra subred local o remota. Otra opción que podremos hacer es crear una regla en salida, bloqueando cualquier respuesta al ping, es decir, el «ICMP Echo-reply», no obstante, es más recomendable bloquear la entrada y descartar ese paquete, para que nuestro sistema operativo no tenga que gestionarla respuesta al ping porque posteriormente será bloqueada por el firewall que tenemos nosotros mismos.
Alternativas a ping
Ping es seguramente uno de los comandos más utilizados a nivel mundial para ver el estado de las conexiones, pero este no es el único que puede llevar a cabo esta función. Actualmente nos podemos encontrar otras alternativas, las cuales por supuesto, también se pueden bloquear para que no puedan tener comunicación, y por lo cual no funcionen.
De modo que si tratamos desbloquear el ping en un sistema o red, es bueno saber que hay otras alternativas que realizan una función similar, y en algunas ocasiones facilitando mucha más información de la que nos puede informar ping.
Esta es Traceroute, la cual tiene un funcionamiento muy similar, pero con el añadido de que nos indica qué ruta siguen todos los paquetes enviados, devolviendo los tiempos de carga entre los saltos y todos los hosts que estos visitan. El uso del comando es muy simple, pues simplemente tendremos que escribir tracert y el host o IP destino. Tiene la ventaja que proporciona mucha información en la comunicación, facilitando mucho conocer donde una red puede estar fallando, pues esta lo indica de forma específica en las líneas que nos devuelve tras aplicar el comando.
Ambos comandos resultan muy útiles a la hora de diagnosticar redes, por lo cual es recomendable que estos se puedan utilizar casi en cualquier red, pues pueden ser de gran ayuda para los administradores. Si bien estas solo nos darán información sobre si la red realmente falla, o en donde falla, siempre son un buen punto de partida para realizar un primer diagnóstico, el cual podremos ampliar en gran medida con todas las opciones que nos facilitan estos comandos, y como consecuencia, entender mejor los problemas que se nos presentan en la red.
En el caso de ping, cuenta con muchas extensiones las cuales van desde realizar un ping extendido hasta formar el uso de las direcciones. Para ver todas las funciones disponibles, escribiremos en cmd: ping /help.
Tal y como habéis visto, permitir o no el ping en sentido entrada (ICMP echo-request) es realmente fácil y rápido en el firewall de Windows, además, debemos tener en cuenta que podremos crear reglas personalizadas específicas, y no solamente editar las que vienen creadas por defecto. Por ejemplo, podríamos permitir el ping o cualquier comunicación desde un PC en concreto (poniendo su dirección IP), de esta forma, ese PC en concreto sí se podrá comunicar con nosotros, pero el resto de equipos no podrán hacerlo, ideal para mantener la seguridad.
Os recomendamos visitar nuestra sección de Windows donde encontraréis una gran cantidad de manuales de configuración. También puedes visitar nuestra sección de redes para exprimir al máximo tu red local.