Тоже пример... Конфиг "Редиректора для замены баннеров посредством squid. Автор Владимир Олейник." Без изменений и почти без комментариев...

# Пример рабочей версии
# конфигурационного файла редиректора
# для squid по переназначению баннеров
#

#       D - адреса клиентов, на которых идет директом
#       R - адреса клиентов, для которых идет переназначение
#       L - описание типа записи в логфайл
#       P - склейка acl, назначенных ранее через D,R,L или P
#       S - назначение url/ip/mask/time как переменной
#       U - url ( маски: bash/ksh glob *?!@(pats|pats)*?[!a-z]\ ,
#                    ^ логика NOT: но не следующие)
#   или F - файл с масками -------- // -----------
#       I - подключить файл для вставки дополнительных конфигов
#       A - проверка изернет аппаратного адреса клиентов
#       J - обход анонимайзеров и поисковых редиректоров


# Формат acl (списка доступа):
# R_или_D  имя_листа список_IP время_действия
# допускается опускать время действия, что аналогично: всегда - *
# ip и mask и время можно использовать через переменные,
# назначив их опцией S,
# маску можно задавать в битах, /0 = 0.0.0.0
#   одиночное_IP: IP.IP.IP.IP или IP.IP.IP.IP/MASK.MASK.MASK.MASK
#                    или IP.IP.IP.IP/MSK_bits
# если /маска не указана, по умолчанию берется /255.255.255.255
#   диаппазон_ip: IP1-IP2
# список_IP: одиночное_IP__или__диаппазон_ip+список_IP
# пример:
#   1.1.1.1+192.168.0.1-192.168.0.10+192.168.1.0/24+10.10.2.0/255.255.255.248
#
#
#
# Формат описания типа записи в логфайл:
# L имя_листа действие опции
# где:
# действие: R или D или *, т е записывать в лог только события
#           по редиректингу или директу или все соотвественно
# опции: набор выводимой информации, перечислять буквы подряд или через запятую
#        D: дата в формате time_t
#        U: входной url
#        C: клиент
#        M: имя сработавшей маски
#        N: имя сработавшего acl 
#        выходной url (упортеблять одну из нижеследующих опций):
#        O: полный выходной url
#        R: только когда произошло переназначение
#        -: тоже что и R, но когда произошел директ - записывать символ '-'
# Порядок следования будет в логфайле соответствовать этому описанию.
# При отсутствии опций по умолчанию подразумевается U,C,-
# ВНИМАНИЕ! Правило склейки с acl R/D и области действия L:
# Acl L действует на все acl слева-направо склеиваемые через P.
# Подробнее см. в примере описания команды P.

#
# P новое_имя_листа имя_листа1+имя_листа2...
# допускается старый формат:
# P новое_имя_листа имя_листа1 имя_листа2+имя_листа3...
# как следствие, работает такой формат:
# P новое_имя_листа имя_листа1 имя_листа2
#
# Особенность склейки с правилами логирования L.
# пример:
# P alc_rd2 acl_rd0+acl_l0
# P alc_p   acl_rd1+acl_rd2+acl_l1+acl_rd3+acl_l2
# где alc_rdX - правила R/D, а acl_lX - правила L.
# В результате этого примера ВСЕ результирующее правило acl_p
# будет логироваться по acl_l2,
# а правила acl_rd1 и acl_rd2 будут логироваться с опциями дополнительно
# из правила acl_l1, если там есть опции, отсутствующие в acl_l2,
# но правила логирования не распространяются на предыдущие листы при склейки
# acl только типа R/D, даже если они были ранее склеены с правилами
# логирования предыдущими командами P, т е только на правило acl_rd2 из acl_p
# будет распространяться _дополнительные_ к alc_l1 и acl_l2 опции из acl_l0.
# Отдельное применение далее acl_rd2 будет логироваться только по acl_l0.

# Встроенный acl с именем "*" (все адреса с переназначением без логирования)
# R * 0.0.0.0/0 *
#
# Пример склейки со встроенным acl * в реальных настройках (см ниже)
#
# По умолчанию добавляется в конечный acl - "никого не переназначать"
# D default_policy 0.0.0.0/0 *
# примечание: default_policy добавляется логически, acl как таковой -
# не определен, а * - acl определен и поэтому не переопределяемый

# Формат времени_действия acl:
# *             - всегда
# день_недели:время или день_недели-день_недели:время
# день_недели: от 0 до 6, где 0 - воскресенье, * - любое, *-5 - воскр-пятн
# время: * или чч.мм-чч.мм (например, 7-* означает 07.00-23.59)
# время_действия,время_действия...
#
# Пример нерабочего времени:
# 0:*,1-5:0-7.59,1-5:17-*,6:*
# Пример для рабочего времени - в реальных настройках в переменной $WT

# Формат переназначений:
# U/F url/file_соответственно url_куда_переназначить имя_acl
#
# D  not_work_time  10.0.0.0/8  0:*,1-5:0-7.59,1-5:17-*,6:*
# U  http://www.sex.ru  http://myhost/deny_sex.gif not_work_time
#
# Допускается не указывать встроенный acl * (редиректить всех и всегда)
# Если не указаны протоколы http:// или ftp:// для входящего url,
# по умолчанию подставляется http://
# U  www.my_provider.ru/* http://www.myhost.ru/my_provider/mirror/
#
# Маски в url или файле составляются по принципам:
#   * - любой набор символов в том числе и пустой
#  [A-Z] - символ из диаппазона (регистр не учитывается!)
#   ? - любой один символ
#  ksh/bash расширения:
#        [?*+@!](pat-list), где pat-list - список из одной или
# нескольких масок, разделенных `|'.
#      Необходимый модификатор перед '(' означает:
#       ?(patlist)      ищется пустое или одиночное количество вхождений
#       *(patlist)      ищется любое, в том числе пустое, количество вхождений
#       +(patlist)      ищется любое непустое количество вхождений
#       @(patlist)      ищется в точности такое вхождение
#       !(patlist)      ищется любое вхождение, за исключением
#                       любого из указанных
#  маска1^маска2 - если удовлетворяет входной url первой маске последующие
#                  маски запрещают совпадения
#  Пример: count*^country*^countri* - если это "счетчик", но не "страна/ы".
#  маскирование с помощью символа \ :  \?
# Все параметры могут быть объявлены через переменные


# Формат обхода анонимайзеров или поисковых редиректоров (прыжки):
# J URL url_что_пропустить имя_acl
#
# На примере будет наглядно:
# J ?(+([!/.]).)ya?(ndex).ru/redir\?*url=@(ht|f)tp://* ?(+([!/.]).)ya?(ndex).ru/redir\?*url=
# J ?(+([!/.]).)rambler.ru/click\?*URL=@(ht|f)tp://* ?(+([!/.]).)rambler.ru/redir\?*URL=
#
# Ищется по маске URL и если совпало и alc сработал на редирект,
# то происходит "прыжок" на "величину" маски url_что_пропустить, тем самым
# пользователь открывает url, находящийся за редиректингом анонимайзера
# или счетчика поисковиков.
# Для примера: http://www.ya.ru/redir?url=http://www.simtreas.ru
# редиректор даст на выходе URL = http://www.simtreas.ru .
# Пояснение к маске:
# Маски составляются по принципам описания формата к U/F
# *(+([!/.]).) - любое количество субдоменов в том числе и пустое
# @(ht|f)tp:// - http:// или ftp:// обязательно присутствующее
# \?           - символ '?', а не как спецсимвол маски
#
# Необходимо, чтобы url_что_пропустить в точности повторял начальную часть
# URL, т е был короче и состоял из тех же символов маски.
# Допускается не указывать встроенный acl = *, как в примере выше.
# Если не указаны протоколы http:// или ftp:// в начале масок,
# по умолчанию подставляется http://


# Формат определения локального хоста и url для переназначения:
# S variable value
# или, что равнозначно
# S $variable value
# или (пробелы вокруг `=' обязательны):
# S var = value
#
# Допускается формирование url из нескольких переменных. Разделители: $/+
# Переменная должна быть объявлена до ее использования
# Пример в рабочих настройках


# Формат подключения дополнительных конфигурационных файлов:
# I тип_проверки_на_ошибку файл
# тип_проверки_на_ошибку: E или W. E - при обнаружении ошибки прекращать
# работу, W - записать предупреждение и продолжить, если это возможно,
# работу с основным конфигом.


# Формат проверки изернет аппаратного адреса
# A ip arp URL_to_deny
# или
# A ip/acl_L arp URL_to_deny
# если клиент (IP) имеет отличный от указанного аппаратный адрес происходит
# редирект любого запрошенного URL на указанный URL_to_deny и если указан
# acl логирования (acl_L), то в лог будет произведена запись в соотвествии
# с конфигурации acl_L, причем в поле имени acl: ARP_NO_MATCH,
# а в поле маски: * ; если заказано логирования соотвествующего
# сработавшего acl с директом, то записей в логе будет две.
#
# arp-адрес берется из данных программы /sbin/arp, необходимо настроить
# посылку сигнала редиректору о изменении arp в соотвествии с п. 14 README
# Проверка соотвествия происходит только в самом конце всех
# указанных в конфиге правил и срабатывает только при окончательном
# директном обращении.
# допускается указывать IP и URL через переменные
# также допускается указывать несколько arp для одного IP (просто
# указанием несколько правил A с одним IP), при этом если контроллируемый
# IP не имеет ни один из указанных arp-адресов, произойдет редирект и
# логирование по первому упоминанию этого IP в конфиге и
# для последующих правил с одинаковыми IP можно опускать URL для редиректа,
# а правило логирования тем более не имеет смысла
# Примеры:
# A 192.168.10.1 00:60:52:09:EC:E6 http://www/arp_deny.html
# L nearp R
# A $CLIENT1/nearp 00:60:52:09:EC:E7 $WWW/$REDIR/arp_deny.html
# A $CLIENT1 00:60:52:09:EC:EE
#
# Логические следствия:
# 1. Если некоторый диаппазон получает IP от DHCP и доступ запрещен,
# поставте acl в squid запрет на эти все IP
# 2. Если некоторый диаппазон получает IP от DHCP и доступ разрешен,
# не указывайте эти IP в правилах A
# 3. Если выбор разрешенных комбинаций IP/ARP ограничен, укажите все
# эти комбинации в правилах A


# Мои рабочие настройки


# Определение локального хоста и готовых url для переназначения
S MYHOST  http://www
S RDR     /redir.www
S URLRDR  $MYHOST$RDR

S 1X1     $URLRDR/gif1x1.gif
S TOP100  $URLRDR/top100.gif
S COUNT   $URLRDR/list.gif
S TOP1000 $URLRDR/1000.gif

# Определение адресов any_host и рабочего времени
S AH 0.0.0.0/0
S WT 1-5:8-17

# "Хорошие юзверя" - директ
D good_users 192.168.10.0/255.255.255.248
R acl_wt     192.168.0.0/16                     $WT
D real_ip    195.9.147.0/24
D my_real_ip 195.9.147.0/255.255.255.248

P rulez_acl  good_users+acl_wt+real_ip
P good_r     my_real_ip *

# А этим - редирект в рабочее время
R acl_dt1 192.168.10.22  $WT
R acl_dt2 192.168.10.13  $WT
R acl_dt3 192.168.10.24  $WT
R acl_dt4 192.168.10.11  $WT
R acl_dt5 192.168.10.4   $WT
R acl_dt6 192.168.10.31  $WT
R acl_dt7 192.168.10.27  $WT
R acl_dt8 192.168.10.23  $WT
R acl_dt9 192.168.10.14  $WT

P acl_dt  acl_dt1+acl_dt5+acl_dt8+acl_dt6

# запрещения качания в рабочее время
U http://*                                       $URLRDR/deny_traf.html acl_dt
U ftp://*                                        $URLRDR/deny_traf.html acl_dt

# Банеры и счетчики режу для всех и всегда
#
U */1pix*.gif*                                   $1X1
U *zdnet.com/adverts/*                           $1X1
U *extreme-dm.com/*                              $1X1
U */1x1.gif                                      $1X1
U */image.ad\?*                                  $1X1
U a*.g.*.net/*                                   $1X1
U links.cnt.ru/*.jpg                             $1X1
U */images/empty.gif                             $1X1
U www.*.geocities.com/include/branding/.*.js     $URLRDR/empty.js
F redir.urls/open-win.urls                       $URLRDR/close_win.html
U */top100.*                                     $TOP100
U */rambler*.gif                                 $TOP100
U *infoart.ru/cgi-bin/ihits/counter.*            $URLRDR/infoart.gif
U *count*^*country*^*countri*^http://ftpsearch.lycos.com/cgi-bin/search\?* $COUNT
U *.hitbox.com/*.cgi                             $COUNT
U *.hitbox.com/*\?*                              $COUNT
U */cgi-bin/ping.cgi\?*                          $COUNT
U *.ru/*/stat.pl\?*                              $COUNT
U */cgi-bin/cnt.cgi\?*                           $COUNT
U */cgi-bin/1000*                                $TOP1000
U www.statistic.ru/*                             $TOP1000
U *pingwin.ru/img/pingwin*       $URLRDR/pingwin2.gif
U img.one.ru/*one88x31a.gif*     $URLRDR/one.gif
U www.runetnews.ru/img/rnt.gif   $URLRDR/rnt.gif
F redir.urls/banners.urls                        $URLRDR/empty.gif

# Блокировка sex в рабочее время
#
F redir.urls/sex.urls                            $URLRDR/nosex.jpg rulez_acl

# Блокировка для конкретных IP всегда (незанятые IP или недопущенные до халявы)
D acl_blk_xa1   192.168.10.0/26
R acl_blk_xa2   192.168.0.0/16
L log         r d,u,c
P acl_blk acl_blk_xa1+acl_blk_xa2+log
U http://*                                       $URLRDR/deny_traf.html acl_blk
U ftp://*                                        $URLRDR/deny_traf.html acl_blk


# Обход редиректоров Рабмлера, Яндекса и Альтависты, сайта "Закладки.ru"
J *(+([!/.]).)ya?(ndex).ru/redir\?*url=@(ht|f)tp://* *(+([!/.]).)ya?(ndex).ru/redir\?*url=
J *(+([!/.]).)rambler.ru/click\?*URL=@(ht|f)tp://*   *(+([!/.]).)rambler.ru/click\?*URL=
J *(+([!/.]).)altavista.com/r\?*&r=@(ht|f)tp*        *(+([!/.]).)altavista.com/r\?*&r=
J *(+([!/.]).)zakladki.ru/*\?*&url=@(ht|f)tp*        *(+([!/.]).)zakladki.ru/*\?*&url=

# Мой ARP никому не отдам, IP - два, один реальный, другой - дает vmware
A 192.168.10.2 00:50:56:64:C0:50     $URLRDR/deny_arp.html
A 195.9.147.1  00:60:52:09:E3:3F     $URLRDR/deny_arp.html

Я в нем не разобрался. А вам слабо?