А почему не использовать прозрачный прокси (самый простой способ). А второй не сильно сложнее - создать список в address list с ip разрешённых сайтов, а в файерволле добавить /ip firewall filter add chain=forward dst-address-list=!allowed action=drop и задрать его повыше. И файерволл читать удобнее будет, и нагрузка на проц почти не возрастёт (не будет гнать пакет по всем правилам на предмет совпадения dst-ip), а комменты везде подписать можно.
А ещё бесподобный скриптинг в микротике позволяет сделать всё то, что в РОС реализуется с трудом. Например:
habrahabr.ru/post/242143/. Возьмите за основу, допилите под себя.