Code: Select all
:local testDomains {"www.google.com" "www.facebook.com" "www.youtube.com"}
:local piholeDNS "192.168.188.25"
:local piholeUP [/ip firewall nat print count-only where comment~"pihole_bypass" && disabled]
:local maxRetries 3
:local success false
:foreach testDomains in=$testDomains do={
:set success false
:for (i=0; i<$maxRetries; i=i+1) do={
:if ([:resolve $testDomains from=$piholeDNS]!="") do={
:set success true
:break
}
}
}
:if ($success=true) do={
:if ($piholeUP=0) do={
/ip firewall nat disable[find comment~"pihole_bypass"];
}else={
:break
}
}
:if ($success=false) do={
:if ($piholeUP>0) do={
/ip firewall nat enable[find comment~"pihole_bypass"];
}else={
:break
}
}