Redirect web during network failure
Z Wiki UnArt Slavičín
Nová verze
# Seznam vsech rozhrani, na ktere chceme aplikovat presmerovani :global interfaces [:toarray "\"bridge1\""] # Adresa brany - pri vypadku pingu na ni aktivujeme presmerovani :global remote "192.168.128.1" # Libovolna adresa routeru, na kterou budeme presmerovavat DNS pozadavky :global local "192.168.128.10" # Nastavime DNS proxy /ip dns set allow-remote-requests=yes /ip dns static # Pridame pravidlo pro presmerovani vsech pozadavku sam na sebe add name=".*" address=$local disabled=yes # Pravidlo presuneme uplne nejvyse move [find name=".*"] 0 # Pridame profil pro hotspot /ip hotspot profile add dns-name="" hotspot-address=0.0.0.0 html-directory=malfunction http-cookie-lifetime=3d http-proxy=0.0.0.0:0 login-by=cookie,http-chap name=malfunction rate-limit="" smtp-server=0.0.0.0 split-user-domain=no use-radius=no # :foreach i in=$interfaces do={ /ip hotspot add disabled=yes idle-timeout=5m interface=$i keepalive-timeout=none name="malfunction $i" profile=malfunction }
Stará verze
#Skript na přesměrování webu při výpadku spoje dál do sítě # pro MikroTik 2.9.X # Autor: Roman Ševčík # Poznámka (Tomáš Dulík): Skript pingá na adresu zadanou v proměnné "ip" # Pokud je brána nedostupná, aktivuje: # 1. pravidlo v tabulce NAT, které má v komentáři označení "redirectDNS" # Toto pravidlo zde není uvedeno, námět pro vylepšení: pokud pravidlo nenajde, # skript by si jej mohl sám vytvořit # 2. V modulu "Hotspot" aktivuje položku "malfunction". Hotspot obsahuje jednoduchý # web server, který lze využít pro zobrazení stránky o výpadku. Romane, # hoď sem ještě návod, jak v Hotspotu vytvořit "malfunction" :local time-on :local time-gw #:local end # IP adresa dalšího bodu sítě, ke kterému je toto AP připojeno (uvádějte v uvozovkach) :local ip "10.143.18.1" # # pocet pingu :local count 5 # # #Cas po který budu zobrazovat hlasku o nedostupnosti :set time-on 1m # #Cas za jak dlouho se bude testovat dostupnost brany :set time-gw 1m # #Při použití skriptu po spuštìní doporuèuju nechat nìjaký èas Routeru na nabìhnutí - upravte dle vlastní vùle :delay 10s #------------------------------------------------------ # :while true do { :if ([/ping $ip count=$count] = 0) \ do { /ip hotspot enable malfunction /ip firewall nat enable [find comment=redirectDNS] :delay $time-on } \ else { /ip hotspot disable malfunction /ip firewall nat disable [find comment=redirectDNS] :delay $time-gw } }