Я пытаюсь использовать AclRandom для Squid 3.2, и я думаю, что немного запутался в правильном методе для этого. Вот моя конфигурация:
http_port 3128
auth_param basic program /usr/local/squid32/libexec/basic_ncsa_auth /usr/local/squid32/etc/passwords
auth_param basic children 5
auth_param basic realm proxy
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl my_auth proxy_auth REQUIRED
http_access allow my_auth
max_filedesc 32768
acl randomIP random 1/3
tcp_outgoing_address x.154.198.x randomIP
tcp_outgoing_address x.154.198.x randomIP
tcp_outgoing_address x.154.198.x randomIP
tcp_outgoing_address x.154.198.x
forwarded_for delete
via off
И он всегда использует первый IP-адрес в списке. Кто-нибудь знает, как я могу сделать так, чтобы он случайно использовал один из 3? Также я получаю много TCP_MISS для любого запрашиваемого веб-сайта, что-то еще выглядит странно?
Изменить: обновление с потенциальным решением:
http_port 3128
auth_param basic program /usr/local/squid32/libexec/basic_ncsa_auth /usr/local/squid32/etc/passwords
auth_param basic children 5
auth_param basic realm proxy
auth_param basic credentialsttl 2 hours
auth_param basic casesensitive off
acl my_auth proxy_auth REQUIRED
http_access allow my_auth
http_access allow localhost
http_access deny all
max_filedesc 32768
authenticate_ttl 5 seconds
authenticate_ip_ttl 1 seconds
acl r_14 random 1/14
acl r_13 random 1/13
acl r_12 random 1/12
acl r_11 random 1/11
acl r_10 random 1/10
acl r_9 random 1/9
acl r_8 random 1/8
acl r_7 random 1/7
acl r_6 random 1/6
acl r_5 random 1/5
acl r_4 random 1/4
acl r_3 random 1/3
acl r_2 random 1/2
acl r_1 random 1/1
tcp_outgoing_address x.x.198.145 r_14
tcp_outgoing_address x.x.198.146 r_13
tcp_outgoing_address x.x.198.147 r_12
tcp_outgoing_address x.x.198.148 r_11
tcp_outgoing_address x.x.198.149 r_10
tcp_outgoing_address x.x.198.150 r_9
tcp_outgoing_address x.x.198.151 r_8
tcp_outgoing_address x.x.198.152 r_7
tcp_outgoing_address x.x.198.153 r_6
tcp_outgoing_address x.x.198.154 r_5
tcp_outgoing_address x.x.198.155 r_4
tcp_outgoing_address x.x.198.156 r_3
tcp_outgoing_address x.x.198.157 r_2
tcp_outgoing_address x.x.198.158 r_1
tcp_outgoing_address x.x.198.148
forwarded_for delete
via off
В онлайн-документации есть пример трехстороннего разделения. Каждый шаг отбирает часть трафика, который попадает на этот шаг, а не часть всего трафика.
Squid-Cache-Wiki: Функция: ACL типа "Случайный"
acl third random 1/3
acl half random 1/2
tcp_outgoing_address x.154.198.x third
tcp_outgoing_address x.154.198.x half
tcp_outgoing_address x.154.198.x
В вашей конфигурации есть 1/3, 1/3, 1/3, и все это работает для:
Если ваш первый и четвертый исходящие адреса совпадают, то он получит 17/27 трафика.