По-моемому у вас бардак с правилами и недопонимание принципа работы...
Почему-то мне кажется, что например в наборе
never_direct allow !novpn_domain
never_direct allow !novpn_ip4
Второе правило просто никогда не сработает на acl novpn_ip4, т.к. уже первое выдаст для него allow.
С первого взгляда может показаться, что это эквивалент набора:
never_direct deny novpn_domain
never_direct deny novpn_ip4
Однако это не так.
в первом (вашем) варианте запрос вида
http://1.2.3.4
уже на
never_direct allow !novpn_domain
получит allow и все.
Во втором варианте
http://1.2.3.4
не попадает в acl novpn_domain, следовательно анализ пойдет дальше.
Попробуйте конфиг что-то вроде:
acl all src 0.0.0.0/0.0.0.0
# IP, которые не должны идти через Сервер №2
acl novpn_ip4 dst 10.8.0.1/24
# Домены, которые не должны идти через Сервер №2
acl novpn_domain dstdomain .ru
acl novpn_domain dstdomain .vk.com
acl novpn_domain dstdomain .archlinux.org
http_port 34004
forwarded_for delete
cache_peer 10.8.1.1 parent 34004 0 default
always_direct allow novpn_domain
always_direct allow novpn_ip4
never_direct allow all
http_access allow all