AdBlock na Mikrotiku

Kategorie: Úvod
AdBlock na Mikrotiku

Blokování reklam přímo na routeru se systémem Mikrotik RouterOS.

O aplikování AdBlocku již na routeru (namísto koncového přístroje) jsem již jednou psal - AdBlock již na routeru, šlo ale o rozšíření operačního systému OpenWRT. Tentokrát se jedná o blokování reklam na routeru od výrobce Mikrotik.

Existují dvě verze tohoto AdBlocku, které se liší počtem položek v blacklistu - blokovaný domén. Ta klasická verze vyžaduje router s alespoň 128 MB operační paměti (RAM). Druhá verze - Lite - si vystačí se zařízením které má alespoň 64 MB operační paměti.

Princip je velice jednoduchý, router Mikrotik funguje v lokální síti jako váš vlastní DNS server a reklamní weby nahrazuje místo skutečné adresy localhostem (IP adresou 127.0.0.1) čímž místo stažení reklamy nebo různých trackovacích prvků se nestáhne nic a dojde k rychlejšímu vykreslení webových stránek bez reklamních prvků.

Instalace

Po přihlášení do routeru přes aplikaci Winbox stačí spustit terminál (New Terminal v levém menu) a vložit následující kód:

​/system script
 add name=adblock policy=\
 ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon source=":\
 log warning \"starting adblock update\";\r\
 \n\
 \n\
 \n:delay 20;\r\
 \n\
 \n\
 \n:log warning \"downloading adblock\";\r\
 \n\
 \n\
 \n\
 \n\
 \n:local hostScriptUrl \"https://www.micu.eu/adblock/adblock.php\";\
 \n\
 \n\
 \n\
 \n\r\
 \n:local scriptName \"adblock\";\
 \n\
 \n\
 \n\
 \n\r\
 \ndo {\
 \n\
 \n /tool fetch mode=http url=\$hostScriptUrl dst-path=(\"./\".\$scriptName\
 );\
 \n\
 \n\r\
 \n:delay 20;\
 \n\
 \n\r\
 \n:if ([:len [/file find name=\$scriptName]] > 0) do={\r\
 \n\
 \n\
 \n :log warning \"removing old adblock list\";\
 \n\
 \n\r\
 \n /ip dns static remove [/ip dns static find address=127.0.0.1];\
 \n\
 \n\r\
 \n :log warning \"importing new adblock list\";\r\
 \n\
 \n\
 \n /import file-name=\$scriptName;\r\
 \n\
 \n\
 \n /file remove \$scriptName;\r\
 \n\
 \n\
 \n :log warning \"adblock list imported\";\r\
 \n\
 \n\
 \n } else={\
 \n\
 \n \r\
 \n:log warning \"adblock list not downloaded, script stopped\";\r\
 \n\
 \n\
 \n }\r\
 \n\
 \n\
 \n} on-error={\
 \n\
 \n \r\
 \n:log warning \"adblock list download FAILED\";\
 \n\
 \n\r\
 \n};"
 /system scheduler
 add interval=1d name=adblock on-event=adblock policy=\
 ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \
 start-time=startup
 add name=adblock_startup on-event=\
 ":delay 30;\r\
 \n/system script run adblock" policy=\
 ftp,reboot,read,write,policy,test,password,sniff,sensitive,romon \
 start-time=startup​

Pokud potřebujete Lite verzi, stačí nahradit URL adresu ve skriptu https://www.micu.eu/adblock/adblock.php za https://www.micu.eu/adblock/adblock_lite.php.

Uvedenými příkazy viz výše došlo k:

  • vytvoření skriptu s názvem adblock (System => Scripts)
  • vytvoření dvou spouštěčů, které zajišťují pravidelnou synchronizaci seznamu blokovaných stránek - 30s po startu routeru a jednou denně (System => Scheduler)

Nyní stačí již před DHCP server distribuovat jako DNS server IP adresu Mikrotiku čímž se začnou blokovat reklamy.

Sdílet

Komentáře

postPřidat komentář

Nebyly přidány žádné komentáře.