Advertisement
JWLLEWELYN

MonitorDeConexion.cmd

Apr 8th, 2017
256
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Batch 3.37 KB | None | 0 0
  1. @echo off
  2. rem Autor: John Llewelyn
  3. rem fb.com/johnwilliam.llewelyn
  4. rem twitter.com/JWLLEWELYN
  5. rem Tlf: +584149101115
  6. rem Description: Monitor de Conexion ADSL para mantener de manera persistente la conectividad a Internet.
  7.  
  8. title Monitor de Conexion
  9.  
  10. rem Ajustes
  11. SETLOCAL ENABLEEXTENSIONS
  12. set "DNS=www.google.com"
  13. set "IP=8.8.8.8"
  14. set "ADAPTER=WAN"
  15.  
  16. rem Generador de Fecha y Tiempo
  17. for /F "tokens=2" %%i in ('date /t') do set mydate=%%i
  18. set "mytime=%time%"
  19.  
  20. rem Generador de Reporte
  21. set "logfile=C:\Reporte.log"
  22.  
  23. rem Generador de Mensajes
  24. set "message_test_dns=Comprobacion de la conexion, por favor espere..."
  25. set "message_fail=FALLO!"
  26. set "message_tryagain=Dejame intentarlo un poco mas, por favor espere..."
  27. set "message_test_ip=Comprobacion de DNS, vamos a tratar por la direccion IP..."
  28. set "message_netdown=Parece que tiene problemas de red, no tiene conectividad."
  29. set "message_connectivity=Tiene una conexion a Internet activa"
  30. set "message_packetloss=Se detecto una conexion a Internet activa, pero un poco de perdida de paquetes"
  31. set "message_noconnectivity=Usted no tiene una conexion a Internet activa"
  32. set "message_resolve=Reparando conexion a Internet, espere por favor..."
  33.  
  34. :AGAIN
  35. cls
  36. echo %message_test_dns%
  37. ping -n 1 %DNS%|find "bytes=" >NUL
  38. IF NOT ERRORLEVEL 1 goto SUCCESS
  39. IF     ERRORLEVEL 1 goto TRYAGAIN
  40.  
  41. :TRYAGAIN
  42. cls
  43. echo %message_fail%
  44. echo %message_tryagain%
  45. PING -n 3 %DNS%|find "bytes=" >NUL
  46. IF NOT ERRORLEVEL 1 goto SUCCESS2
  47. IF     ERRORLEVEL 1 goto TRYIP
  48.  
  49. :TRYIP
  50. cls
  51. echo %message_fail%
  52. echo %message_test_ip%
  53. ping -n 1 %IP%|find "bytes=" >NUL
  54. IF NOT ERRORLEVEL 1 goto SUCCESS2
  55. IF     ERRORLEVEL 1 goto NETDOWN
  56.  
  57. :NETDOWN
  58. cls
  59. echo %message_fail%
  60. echo %message_netdown%
  61. timeout /t 10 > nul
  62. goto FAILURE
  63.  
  64. :SUCCESS
  65. CLS
  66. echo %message_connectivity%
  67. echo %mydate% %mytime%
  68. netsh interface ip show config name="%ADAPTER%" | find "IP"
  69. echo ======================================================================================================== >> %logfile%
  70. echo %message_packetloss% - %mydate% %mytime% >> %logfile%
  71. netsh interface ip show config name="%ADAPTER%" | find "IP" >> %logfile%
  72. echo ======================================================================================================== >> %logfile%
  73. timeout /T 180 > nul
  74. goto AGAIN
  75.  
  76. :SUCCESS2
  77. cls
  78. echo %message_packetloss%
  79. echo %mydate% %mytime%
  80. netsh interface ip show config name="%ADAPTER%" | find "IP"
  81. echo ======================================================================================================== >> %logfile%
  82. echo %message_packetloss% - %mydate% %mytime% >> %logfile%
  83. netsh interface ip show config name="%ADAPTER%" | find "IP" >> %logfile%
  84. echo ======================================================================================================== >> %logfile%
  85. timeout /T 180 > nul
  86. goto AGAIN
  87.  
  88. :FAILURE
  89. cls
  90. echo %message_noconnectivity%
  91. echo %mydate% %mytime%
  92. echo ======================================================================================================== >> %logfile%
  93. echo %message_noconnectivity% - %mydate% %mytime% >> %logfile%
  94. echo ======================================================================================================== >> %logfile%
  95. timeout /t 10 > nul
  96. goto RESOLVE
  97.  
  98. :RESOLVE
  99. cls
  100. echo %message_resolve%
  101. ipconfig/release "%ADAPTER%" > nul
  102. timeout /t 10 > nul
  103. ipconfig/renew "%ADAPTER%" > nul
  104. goto AGAIN
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement