Traceroute con icmp deshabilitado?

Iniciado por @XSStringManolo, 21 Agosto 2019, 22:17 PM

0 Miembros y 2 Visitantes están viendo este tema.

animanegra

Bueno realmente lo dije desde el principio lo del record route pero paso desapercibido.  :D

42
No contesto mensajes por privado, si tienes alguna pregunta, consulta o petición plantéala en el foro para que se aproveche toda la comunidad.

@XSStringManolo

#11
Cita de: animanegra en 22 Agosto 2019, 23:24 PM
Bueno realmente lo dije desde el principio lo del record route pero paso desapercibido.  :D
Soy imbécil disculpa, jajaja. Lo entendiera mal. En tu explicación dices que el Record Route es limitado. Te refieres al número máximo de ips que puede almacenar o a que no almacena las ip de entrada?
De todas formas me informaré al respecto que parece más que suficiente para lo que busco.

Ya como último y tema totalmente a parte no se si por casualidad conoceis ninguna Api que lo haga no? De la misma forma que por ejemplo la Api de google obtiene las coordenadas de la ubicación de tu dispositivo.
Así podría utilizarla en Front-End sin necesidad de disponer de Back-End para que el código sea portable en un único .html ya sea para hostearlo en cualquier sitio como blogspot o en un hosting gratuito que solo te dejan trabajar con Front-End.

Aquí un ejemplo de un script con la api de google para obtener geoloc:
Código (javascript) [Seleccionar]
<html>
<body>

《script》
var Geolocalizacion =navigator.geolocation || (window.google &&google.gears &&google.gears.factory.create('beta.geolocation'));

if (Geolocalizacion)Geolocalizacion.getCurrentPosition(MuestraLocalizacion,Excepciones);

function MuestraLocalizacion(posicion) {
alert(posicion.coords.latitude);
alert(posicion.coords.longitude);
alert(posicion.coords.accuracy);
}

function Excepciones(error) {

  switch (error.code) {
  case error.PERMISSION_DENIED:
     alert('Activa permisos de geolocalizacion');
     break;  case error.POSITION_UNAVAILABLE:
     alert('Activa localizacion por GPS o Redes .');
     break;
  default:
     alert('ERROR: ' + error.code);
   }
 }
《/script》
</body>
</html>


Conoceis algo así para el traceroute?
Gracias.

animanegra

Cita de: string Manolo en 22 Agosto 2019, 23:59 PM
Soy imbécil disculpa, jajaja. Lo entendiera mal. En tu explicación dices que el Record Route es limitado. Te refieres al número máximo de ips que puede almacenar o a que no almacena las ip de entrada?
De todas formas me informaré al respecto que parece más que suficiente para lo que busco.

El campo de opciones de IP se tiene un máximo permitido de bytes (la cabecera IP tiene un máximo, bueno igual que el PAYLOAD, lo que pasa que este último puede ir dividido en varios paquetes). Ergo, solo puede caber un número limitado de direcciones IP en él.

Para mas info https://tools.ietf.org/html/rfc791

Citar
Ya como último y tema totalmente a parte no se si por casualidad conoceis ninguna Api que lo haga no? De la misma forma que por ejemplo la Api de google obtiene las coordenadas de la ubicación de tu dispositivo.

Desde html/javascript no tienes control sobre el envío de paquetes ni creación de sockets (En este caso de tipo RAW). De hecho sería un error de seguridad para el navegador.
Asi que la herramienta no puede ser una web local.
Si quieres implementarla tu creo que tendrás que programar en c, java, python, whatever....
Si no, tienes la herramienta hping3 que te permite hacer casi cualquier cosa con paquetes incluido decidir las cabeceras y flags que desees en los paquetes. También tienes librerías de python como scapy o en c que te permiten no tener que trabajar con paquetes a pelo y te dejan tocar los contenidos de las cabeceras de los paquetes que deseas enviar como libnet.

Citar
Así podría utilizarla en Front-End sin necesidad de disponer de Back-End para que el código sea portable en un único .html ya sea para hostearlo en cualquier sitio como blogspot o en un hosting gratuito que solo te dejan trabajar con Front-End.

En la parte de necesidad de front-end/back-end me perdido totalmente. Porque no comprendo el querer hacer una aplicación de este tipo con sistema cliente-servidor. Aparte de que parece que no tendría demasiado sentido, ya que los traceroutes se harían siempre desde el mismo sitio. Desde el servidor web donde tengas programado el back-end. Pero vamos que eso tu sabrás.

Ten en cuenta que html/javascript (en navegador) no esta pensado para hacer aplicaciones, esta muy limitado y debe ser así. Se pueden hacer cosas chulas, a veces retorcerlo para conseguir sacar algo de jugo (mucho o poco), pero no es la panacéa. Y está pensado de forma limitada para ser usado como frontend. Osea todo lo que sean operaciones de dibujo en el cliente de forma más o menos potente, se pueden hacer cosas. Lo demás, por regla general olvídate. El sandbox en general debería de proteger de cualquier operación, "rara".

42
No contesto mensajes por privado, si tienes alguna pregunta, consulta o petición plantéala en el foro para que se aproveche toda la comunidad.

@XSStringManolo

Cita de: animanegra en 23 Agosto 2019, 10:15 AM
El campo de opciones de IP se tiene un máximo permitido de bytes (la cabecera IP tiene un máximo, bueno igual que el PAYLOAD, lo que pasa que este último puede ir dividido en varios paquetes). Ergo, solo puede caber un número limitado de direcciones IP en él.

Para mas info https://tools.ietf.org/html/rfc791

Desde html/javascript no tienes control sobre el envío de paquetes ni creación de sockets (En este caso de tipo RAW). De hecho sería un error de seguridad para el navegador.
Asi que la herramienta no puede ser una web local.
Si quieres implementarla tu creo que tendrás que programar en c, java, python, whatever....
Si no, tienes la herramienta hping3 que te permite hacer casi cualquier cosa con paquetes incluido decidir las cabeceras y flags que desees en los paquetes. También tienes librerías de python como scapy o en c que te permiten no tener que trabajar con paquetes a pelo y te dejan tocar los contenidos de las cabeceras de los paquetes que deseas enviar como libnet.

En la parte de necesidad de front-end/back-end me perdido totalmente. Porque no comprendo el querer hacer una aplicación de este tipo con sistema cliente-servidor. Aparte de que parece que no tendría demasiado sentido, ya que los traceroutes se harían siempre desde el mismo sitio. Desde el servidor web donde tengas programado el back-end. Pero vamos que eso tu sabrás.

Ten en cuenta que html/javascript (en navegador) no esta pensado para hacer aplicaciones, esta muy limitado y debe ser así. Se pueden hacer cosas chulas, a veces retorcerlo para conseguir sacar algo de jugo (mucho o poco), pero no es la panacéa. Y está pensado de forma limitada para ser usado como frontend. Osea todo lo que sean operaciones de dibujo en el cliente de forma más o menos potente, se pueden hacer cosas. Lo demás, por regla general olvídate. El sandbox en general debería de proteger de cualquier operación, "rara".
Gracias por toda la info! La revisaré.

A lo que me refería es si algún servidor público ofrece una api para hacer el traceroute con la flag. Así desde el javascript le digo a ese servidor que me haga el traceroute desde su servidor hasta el cliente de mi sitio y me de los resultados.
Para qué?
Porque así podría poner el código en cualquier servidor sin necesidad de que corra el traceroute en el servidor. Por ejemplo inyectando javascript podría obtener el traceroute al cliente de un sitio desde el servidor externo.

animanegra

En resumen, ¿Alguien que te de exactamente el programa que quieres para usarlo poniéndole una IP? :D Pues no lo sé, busca por ahí, servicios de traceroute hay a patadas.
No sé si habrá alguno que ofrezca los resultados agregados de traceroute + Record route + otros métodos de búsqueda de paths, será cuestión de darte un paseo por Google. Yo así a bote pronto no conozco ninguno.

42
No contesto mensajes por privado, si tienes alguna pregunta, consulta o petición plantéala en el foro para que se aproveche toda la comunidad.