[squid-users] wccp2_service_info fails on more than one port number
Guy Helmer
guy.helmer at gmail.com
Tue Mar 3 18:46:01 UTC 2015
Disregarding the complaints about Cisco configuration, here is a simple example: If I want to intercept plain HTTP on ports 8008 and 8080:
wccp2_service_info 94 protocol=tcp flags=dst_ip_hash,ports_source priority=240 ports=8008,8080
Squid 3.4.12 will still give this incorrect error:
FATAL: Bungled /usr/local/etc/squid/squid.conf line 55: wccp2_service_info 94 protocol=tcp flags=dst_ip_hash,ports_source priority=240 ports=8008,8080
WCCP2 is documented as allowing up to 8 ports per service. This is broken by parsing changes in Squid 3.4.
Regards,
Guy
> On Mar 3, 2015, at 12:15 PM, Yuri Voinov <yvoinov at gmail.com> wrote:
>
> -----BEGIN PGP SIGNED MESSAGE-----
> Hash: SHA1
>
> Don't think this is bug.
>
> You got very custom configuration, which can not be common.
>
> As I said, HTTP ports other than 80 is very rarely used in WAN's. And
> be better to separate HTTPS port from HTTP.
>
> Modern iOS can not accept your configuration. Beware.
>
> 03.03.15 23:57, Guy Helmer пишет:
>> Thanks Yuri -- I have thoroughly read Cisco IOS configuration
>> manuals pertaining to WCCP2. From what I have read, there is no
>> strict requirement for separate configurations for standard
>> web-cache port 80 and dynamic service for non-port 80 — wccp2
>> dynamic services allow redirection of any ports (up to a total of
>> 8), including port 80. As I’ve stated before, this was a working
>> configuration in squid 3.3 at multiple sites. If there is a
>> rationale for distinct wccp2 service configurations for port 80 vs
>> other ports, I sure could use a reference that explains it.
>>
>> As I’ve pointed out, there is a bug in Squid 3.4 that prevents
>> specifying multiple TCP ports in the wccp2_service_info line. I’ve
>> corrected that now in my sources. After fixing that bug, squid
>> 3.4.12 is functioning with WCCP2 interception for port 80, 443, and
>> others as it did in version 3.3.x.
>>
>> Regards, Guy
>>
>>> On Mar 3, 2015, at 11:29 AM, Yuri Voinov <yvoinov at gmail.com>
>>> wrote:
>>>
>> Please, read Cisco iOS WCCPv2 manual first.
>>
>> This one:
>>
>> http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html <http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html>
>> <http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html <http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html>>
>>
>> and this one:
>>
>> http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html#wp1000955 <http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html#wp1000955>
>> <http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html#wp1000955 <http://www.cisco.com/c/en/us/td/docs/ios/12_2/configfun/configuration/guide/ffun_c/fcf018.html#wp1000955>>
>>
>> wccp web-cache uses port 80 by default. Other http ports is less
>> than percentile on web-traffic.
>>
>> https requires another dynamic wccp service.
>>
>> Also, take a look on config example again.
>>
>> This is working configuration.
>>
>> 03.03.15 23:21, Guy Helmer пишет:
>>>>> It has worked in the past with WCCP2 dynamic services at
>>>>> multiple sites.
>>>>>
>>>>> I’ve uncovered the wccp2_service_info ports parsing error:
>>>>>
>>>>> --- src/wccp2.cc.ORIG 2015-03-03 11:08:18.000000000 -0600
>>>>> +++ src/wccp2.cc <http://wccp2.cc/> 2015-03-03 11:10:37.000000000 -0600 @@
>>>>> -2264,7 +2264,10 @@ if (i >= WCCP2_NUMPORTS) {
>>>>> fatalf("parse_wccp2_service_ports: too many ports (maximum:
>>>>> 8) in list '%s'\n", options); } - int p = xatoi(tmp);
>>>>> + char copy[len + 1]; + memcpy(copy, tmp, len); +
>>>>> copy[len] = '\0'; + int p = xatoi(copy);
>>>>>
>>>>> if (p < 1 || p > 65535) { fatalf("parse_wccp2_service_ports:
>>>>> port value '%s' isn't valid (1..65535)\n", tmp);
>>>>>
>>>>>
>>>>>> On Mar 3, 2015, at 11:06 AM, Yuri Voinov
>>>>>> <yvoinov at gmail.com <mailto:yvoinov at gmail.com>> wrote:
>>>>>>
>>>>> You cannot combine HTTP and HTTPS in one WCCP service.
>>>>>
>>>>> http://wiki.squid-cache.org/ConfigExamples/Intercept/CiscoIOSv15Wccp2 <http://wiki.squid-cache.org/ConfigExamples/Intercept/CiscoIOSv15Wccp2>
>>>>> <http://wiki.squid-cache.org/ConfigExamples/Intercept/CiscoIOSv15Wccp2 <http://wiki.squid-cache.org/ConfigExamples/Intercept/CiscoIOSv15Wccp2>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
> 03.03.15 23:04, Guy Helmer пишет:
>>>>>>>> This used to work in 3.3.x:
>>>>>>>>
>>>>>>>> wccp2_service_info 94 protocol=tcp
>>>>>>>> flags=dst_ip_hash,ports_source priority=240
>>>>>>>> ports=80,81,83,591,8008,8080,443
>>>>>>>>
>>>>>>>> squid 3.4.12 fails: 2015/03/03 11:02:33.109|
>>>>>>>> cache_cf.cc(556) parseOneConfigFile: Processing:
>>>>>>>> wccp2_service_info 94 protocol=tcp
>>>>>>>> flags=dst_ip_hash,ports_source priority=240
>>>>>>>> ports=80,81,83,591,8008,8080,443 2015/03/03
>>>>>>>> 11:02:33.109| wccp2.cc <http://wccp2.cc/> <http://wccp2.cc/ <http://wccp2.cc/>>(2298)
>>>>>>>> parse_wccp2_service_info: parse_wccp2_service_info:
>>>>>>>> called 2015/03/03 11:02:33.109| ERROR: Invalid value:
>>>>>>>> '80,81,83,591,8008,8080,443' is supposed to be a
>>>>>>>> number.
>>>>>>>>
>>>>>>>> Any help?
>>>>>>>>
>>>>>>>> Thanks, Guy
>>>>>>>> _______________________________________________
>>>>>>>> squid-users mailing list
>>>>>>>> squid-users at lists.squid-cache.org <mailto:squid-users at lists.squid-cache.org>
>>>>>>>> <mailto:squid-users at lists.squid-cache.org <mailto:squid-users at lists.squid-cache.org>>
>>>>>>>> http://lists.squid-cache.org/listinfo/squid-users <http://lists.squid-cache.org/listinfo/squid-users>
>>>>>>>> <http://lists.squid-cache.org/listinfo/squid-users <http://lists.squid-cache.org/listinfo/squid-users>>
>>>>>>>>
>>>>>> _______________________________________________
>>>>>> squid-users mailing list squid-users at lists.squid-cache.org <mailto:squid-users at lists.squid-cache.org>
>>>>>> <mailto:squid-users at lists.squid-cache.org <mailto:squid-users at lists.squid-cache.org>>
>>>>>> http://lists.squid-cache.org/listinfo/squid-users <http://lists.squid-cache.org/listinfo/squid-users>
>>>>>> <http://lists.squid-cache.org/listinfo/squid-users <http://lists.squid-cache.org/listinfo/squid-users>>
>>>>>
>>
>>
> -----BEGIN PGP SIGNATURE-----
> Version: GnuPG v2
>
> iQEcBAEBAgAGBQJU9fpNAAoJENNXIZxhPexG+hoH/33NudcBRvS5Z/D/8wCN8Hwq
> 4+efhgF3dCfimb2kQjQFq3JsK6JvPUJO7TJm2h8tzqlAMOnBUuoM/MHEg48skcL2
> +udKwPUC/WO0GXVlNFdln3a4ozYotDmpwZIvwzBTPm5dpcwMi/bCX2oOyzq4y8yr
> mHzYEYmaP1tKF4bzEqlRsOIkrKUFvTvw6HlMoZ1EDE3Qp6WlM6WWiaf8rOoMKVRn
> dGBPvmvRo79OEMXkvc167BH2j8phOFs7XPUw9mWw7nY93jKEcBxxKl4PpwkK7km/
> am7DeV7uLQtnA5nuPs4QC063YRBEAu/8mjONRq5ytJurP8nUUsV46+sdl0EMY44=
> =S5O/
> -----END PGP SIGNATURE-----
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.squid-cache.org/pipermail/squid-users/attachments/20150303/6607b329/attachment-0001.html>
More information about the squid-users
mailing list