Monitoreo de WAN usando múltiple chequeo de Hosts

Publicado por GSN, 19 de Agosto de 2014, 02:50:14 PM

Tema anterior - Siguiente tema

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

GSN


Recientemente he añadido guión NetWatch la base de un mikrotik en una red para monitorear enlace WAN, y si no hay mesa de ping recibió del host WAN ( Ejemplo: 8.8.8.8 ), el guión abajo cambia la ruta de enlace de respaldo para tener prioridad sobre enlace primario. Pero el tema es NetWatch es una especie de método fiable de la ONU para comprobar la conectividad a Internet, ya que puede marcar sólo único host a la vez, también si su enlace WAN es la semana o muy usado que resulta en algunos de ping ha agotado el tiempo que a veces es común (por ejemplo, 3 de cada 10 respuestas echa de menos) Netwatch veces consideran el vínculo objetivo ABAJO . la Netwatch da un " ABAJO estado "inmediatamente después de un ping perderse - irregardless del ajuste Tiempo de espera.

Así que para evitar que debemos utilizar un método a través del cual podemos comprobar al menos dos o más hosts de Internet como IPS gateway IP y cualquier otro host confiable como 8.8.8.8 (o cualquier otro host en su región en particular), si no recibir al menos 5 respuestas de cada uno de anfitrión, entonces considerará el enlace abajo. Si un host está trabajando y el segundo se ha reducido, sino que también tendrán el carácter de UP. tipo de verification.If cruz 2 de 5 misses de ping, todavía tendrá en cuenta el vínculo UP.

Comprobar host múltiple se recomienda, ya que si está utilizando un solo host de scripts cheque o NetWatch, a continuación, algunas veces puede ocurrir que 8.8.8.8 de ping respuesta no está recibiendo dueto varias razones (ya sea hacia abajo o su ISP han bloqueado), pero el resto de internet está trabajando muy bien, pero incluso entonces el script / NetWatch considerará el enlace está inactivo dueto su solo cheque de acogida. Es por eso que se recomienda múltiples comprobaciones de los equipos.

(Script name= monitor)

# Following script is copied from the Mikrotik forum.
# Thanks to mainTAP and rextended for sharing
# http://forum.mikrotik.com/viewtopic.php?f=9&t=85505
# Modified few contents to suite local requirements and added descriptions
# Regard's / Syed Jahanzaib / http://aacable.wordpress.com
 
# Script Starts here...
# Internet Host to be checked You can modify them as per required, JZ
:local host1   "8.8.8.8"
:local host2   "208.67.222.123"
 
# Do not modify data below without proper understanding.
:local i 0;
:local F 0;
:local date;
:local time;
:global InternetStatus;
:global InternetLastChange;
 
# PING each host 5 times
:for i from=1 to=5 do={
if ([/ping $host1 count=1]=0) do={:set F ($F + 1)}
if ([/ping $host2 count=1]=0) do={:set F ($F + 1)}
:delay 1;
};
 
# If both links are down and all replies are timedout, then link is considered down
:if (($F=10)) do={
:if (($InternetStatus="UP")) do={
:log error "WARNING : The INTERNET link seems to be DOWN. Please Check";
:set InternetStatus "DOWN";
 
##      ADD YOUR RULES HERE, LIKE ROUTE CHANGE OR WHAT EVER IS REQUIRED, Example is below ...
##     /ip route set [find comment="Default Route"] distance=3
##     /ip firewall nat disable [find comment="Your Rules, Example"]
 
:set date [/system clock get date];
:set time [/system clock get time];
:set InternetLastChange ($time . " " . $date);
} else={:set InternetStatus "DOWN";}
} else={
 
##      If reply is received , then consider the Link is UP
:if (($InternetStatus="DOWN")) do={
:log warning "WARNING :The INTERNET link have been restored";
:set InternetStatus "UP";
 
##      ADD YOUR RULES HERE, LIKE ROUTE CHANGE OR WHAT EVER IS REQUIRED, Example is below ...
##     /ip route set [find comment="Default Route"] distance=1
##     /ip firewall nat enable  [find comment="Your Rules, Example"]
 
:set date [/system clock get date];
:set time [/system clock get time];
:set InternetLastChange ($time . " " . $date);
} else={:set InternetStatus "UP";}
}
 
# Script Ends Here.
# Thank you


Scheduler para ejecutar el script automaticamente:

Para agregar el Scheduler para ejecutar secuencias de comandos después de cada 5 minutos (o según se requiera), el uso siguiente código:

/system scheduler
add disabled=no interval=5m name="Monitor WAN connectivity Scheduler / JZ" on-event=monitor policy=ftp,reboot,read,write,policy,test,winbox,password,sniff,sensitive,api start-date=jun/12/2014 start-time=\
00:00:00


No se olvide de cambiar el nombre del script de monitor en el planificador de arriba para que coincida con el nombre que haya escogido para el guión.
Ejemplo: en función del suceso = monitor

Definir rutas estáticas para la Vigilancia Host - para la Ruta Cambiar

Si usted está usando este script para cambiar la ruta de Internet para enlace de respaldo, deberá definir rutas estáticas para el sistema que está supervisando. Para que sus anfitriones monitoreados deben siempre (fuerza) ir vía primaria Link.

/ip route
add comment="Force this HOST via Primary Link" disabled=no distance=1 dst-address=8.8.8.8/32 gateway=192.168.1.1 scope=30 target-scope=10
add comment="Force this HOST via Primary Link" disabled=no distance=1 dst-address=208.67.222.123/32 gateway=192.168.1.1 scope=30 target-scope=10


Nota: Asegúrese de cambiar la puerta de enlace 192.168.1.1 a la puerta de enlace a Internet enlace primario.