Как заблокировать сайт штатными средствами ubuntu?

Всем здравствуйте.

На работе поступила задача заблокировать несколько сайтов vk, fb, youtube, итд. и если честно, я думал что с этими задачами вполне может справиться iptables но так как я работаю немного в другой области с сетевым администрированием я сталкиваюсь очень мало…

Что есть на данный момент
Ubuntu server 12.04
eth0 — внешний интерфейс
inet addr: 94.159.48.42
eth1 — внутренний интерфейс
inet addr: 192.168.0.250
На серевере настроен проброс интеа и еще пары портов + небольшой фаервол.

Что я пробовал:
Блок
#iptables -A FORWARD -m string --string «vk.com» --algo kmp --to 65535 -j DROP
Разблокировка для mac
#iptables -A FORWARD -m mac --mac-source b8:8d:12:0f:32:90 -m string --string «vk.com» --algo kmp --to 65535 -j ACCEPT

Тут все неплохохо, но! Если открыть сайт на котором тусует виджет контакта — он будет тупить а может и не откроется.
Если обойти DNS и стучаться по кешу DNS то доступ есть…

Для решения проблемы блочим пул ip vk
#iptables -A FORWARD -s 95.142.200.0/21 -j DROP

так это разблокируем для mac
#iptables -A FORWARD -m mac --mac-source b8:8d:12:0f:32:90 -s 95.142.200.0/21 -j ACCEPT


Если проделать те же фокусы с youtube то он ведет себя вообще очень странно :)

Самым главным минусом такого подхода является факт того что сторонние сайты с виджетами блокируемых сайтов тупят…

Я уже третий день перелопачиваю свои правила iptables но никак не могу добиться нужного:
— Заблокировать несколько сайтов (желательно по домену) для болшей массы машин в сети.
— Организовать доступ к этим сайтам для некоторых машин по mac.
— Не нарушить работу сторонних сайтов.

Отчаявшись уже посматриваю в сорону squid, но вычитал что там тоже не все так гладко…

Если честно, мне кажется что это можно решить пробросом, аля все запросы по доменам завернуть на мой же сервер, а там отдать либо 404 либо пустой лист, но с этой частью iptables я вообще мало знаком — так что не смог правильно стоставить правило.

Прошу от сообщества помощи! Всех благодарю за внимание и ваши ответы!