send
Grupo de Telegram
play_arrow
Este sitio utiliza cookies propias y de terceros. Si continúa navegando consideramos que acepta el uso de cookies. OK Más Información.

[Bash] Script que loggea tu IP publica.

  • 0 Respuestas
  • 1879 Vistas

0 Usuarios y 1 Visitante están viendo este tema.

Desconectado xianur0n

  • *
  • Underc0der
  • Mensajes: 7
  • Actividad:
    0%
  • Reputación 0
    • Ver Perfil
« en: Enero 18, 2016, 03:16:39 pm »
Bueno hacen unos dias me estuve preguntando por curiosidad que cada tiempo mi ip publica cambia. Entonce decidí escribir un script que loggeara mi ip publica en un archivo de texto y escriba en el archivo cuando la ip cambie y la nueva ip. la primera vez que el script corre pues mostrara texto en el standard output que es la pantalla. pero la segunda y las consecuentes veces si el archivo no a cambiado el script correrá de casi manera no interactiva chekeara si la ip cambio si no escribe en el archivo la ip con la fecha de cuando corrió y si la ip cambio comoquiera escribirá en el archivo que la ip a cambiado y nos loggeara la nueva ip. lo unico que la fuente de donde saco la ip no es muy confiable si saben de alguna mejor por favor dejarme saber. el script es perfecto para correrlo una vez y después crear una linea en el crontab para que el script corra una vez al dia sin ninguna interacción con el usuario.

Código: Bash
  1. #!/bin/bash
  2.  
  3. ##Sencillo script que permite loggear la ip publica detras de una coneccion normal al internet
  4. ##o mediante un vpn. El scrip guarda la informacion en el archivo donde se loggearan las ip en la variable filedir. Sientanse
  5. ##a gustos de modificar la variable a donde quieran guardar el archivo con las ip. Si modifican la
  6. ##variable no olviden de especificar la ruta completa + el nombre del archivo como lo quieran llamar,
  7. ##sino bash dara un error por que no puede redireccionar output a un directorio. El scrip obtendra
  8. ##ls IP publica mediante el comando curl, y desde el website www.ipecho.net/plain. Si saben de
  9. ##otra forma mas segura para conseguir la IP por favor dejarme saber. El script esta escrito
  10. ##de manera que sea facil correrlo al encender el computador y pueda corren en el background. Si
  11. ##el archivo ya existe y el script es corrido, el script buscara en la ultima ip loggeada en el
  12. ##archivo y y la compara con la IP que este tengamos en el comento de correr el script. Si
  13. ##las ip no son iguales. El script loggeara algo dejandonos saber que la ip a cambiado. y escribira
  14. ##en el archivo la nueva IP.
  15. ## ESCRITO POR:xianur0n
  16.  
  17. #Ruta al archivo donde se loggearan las IP
  18. filedir=~/privateip.list
  19.  
  20. #Si el script es corrido sin parametros y el archivo no
  21. #existe entonces mostrara en pantalla informacion
  22. if [[ -z "$1" ]]; then
  23.    if [[ ! -f "$filedir" ]]; then
  24.    echo -e "$filedir no existe, creandolo..... "    
  25.    echo "Creando File"
  26.    echo ".............."
  27.    fi
  28. #Si el Script es corrido con parametros nos muestra
  29. #como se debe de usar y termina.
  30. elif [[ -n "$1" ]]; then
  31.    echo "USAGE:./scriptname"                      
  32.    exit 100
  33. else
  34.    true;
  35. fi
  36. #Guarda ip en variable
  37. privateip=$(curl -s http://ipecho.net/plain)
  38.  
  39. #Chekea que el Archivo exista
  40. #encaso de que archivo exista, Chekea la ip
  41. #Obtine ultima IP loggeada en archivo para comparacion
  42. #Compara IP en archivo y IP actual
  43. #Si IP no son iguales escribe ls IP en el Archivo
  44. if [[ -f "$filedir" ]]; then
  45.  varip=$(curl -s http://ipecho.net/plain)
  46.  fileip=$(tail -1 privateip.list | awk '{print $7}')
  47.  if [[ "$varip" != "$fileip" ]]; then
  48.   echo -e "TU IP A CAMBIADO!!!!!!!!" >> $filedir
  49.   echo -e "`date`                        $varip" >> $filedir
  50. else
  51.   echo -e "`date`                        $varip" >> $filedir
  52.  fi
  53. fi
  54. #si el archivo no existe crea el formato del archivo.
  55. #y escribe por primera vez la IP publica al momento de correr el script.
  56. if [[ ! -f "$filedir" ]]; then
  57.   echo -e "Date                                                IP" >> $filedir
  58.   echo -e "`date`                        $privateip" >> $filedir
  59. fi
  60.  
  61. exit 0
  62.  
« Última modificación: Enero 18, 2016, 09:32:55 pm por EPSILON »

 

¿Te gustó el post? COMPARTILO!



Script para extraer el valor de una clave del registro

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1382
Último mensaje Julio 18, 2011, 10:12:40 pm
por ANTRAX
Script para ejecutar un archivo BAT con salida nula

Iniciado por ANTRAX

Respuestas: 0
Vistas: 1375
Último mensaje Julio 18, 2011, 10:13:11 pm
por ANTRAX
Script que genera una estructura de directorios FHS

Iniciado por Stiuvert

Respuestas: 5
Vistas: 4495
Último mensaje Diciembre 27, 2016, 08:58:12 am
por nameless
[Script] Instalación de Sublime Text 2

Iniciado por R3v0lve

Respuestas: 0
Vistas: 1351
Último mensaje Septiembre 28, 2015, 04:16:43 am
por R3v0lve
Script que crea una estructura que se autoregenera

Iniciado por LauBuru

Respuestas: 6
Vistas: 2537
Último mensaje Febrero 17, 2015, 11:15:56 am
por LauBuru