Search squid archive

Re: squid and wccp

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Mon, 28 Apr 2008, Wennie V. Lagmay wrote:

A. squid -v

Squid Cache: Version 2.6.STABLE19
configure options:  '--prefix=/usr' '--exec-prefix=/usr' '--bindir=/usr/sbin' '--libexecdir=/usr/lib/squid' '--localstatedir=/spool/squid' '--sysconfdir=/etc/squid' '--enable-snmp' '--enable-kill-parent-hack' '--enable-delay-pools' '--enable-storeio=aufs,diskd,null' '--enable-removal-policies=heap,lru' '--enable-arp-acl' '--enable-large-files' '--enable-ssl' '--enable-linux-netfilter' '--with-maxfd=16384'


B. ip wccp version 2
ip wccp web-cache
!
interface fastethernet 1/0
description internet connection
ip address 192.168.255.6 255.255.255.252
!
interface fastethernet 3/0
description LAN
ip address xx.xx.184.177
ip wccp web-cache redirect out

either change this line to "ip wccp web-cache redirect in" or put it in fa1/0.

!
ip route 0.0.0.0 0.0.0.0 192.158.255.5

C. root@cproxy ~]# tcpdump -i wccp0
tcpdump: WARNING: arptype 778 not supported by libpcap - falling back to cooked socket
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on wccp0, link-type LINUX_SLL (Linux cooked), capture size 96 bytes

:note that 778 is my ssh port, also there is no log being shown in the access.log

tcpdump
IP 192.168.255.6 > xx.xx.184.178: GREv0, length 56: gre-proto-0x883e
STP 802.1d, Config, Flags [none], bridge-id xxxxxxxxxx, length 43

you should not be seeing the gre packets on wccp0 interface. gre should already be decrypted in this interface.


D. ifconfig

wccp0     Link encap:UNSPEC  HWaddr 4F-62-B8-B2-00-00-00-00-00-00-00-00-00-00-00-00
         inet addr:xx.xx.184.178  P-t-P:xx.xx.184.178  Mask:255.255.255.255
         UP POINTOPOINT RUNNING NOARP  MTU:1476  Metric:1
         RX packets:0 errors:0 dropped:0 overruns:0 frame:0
         TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:0
         RX bytes:0 (0.0 b)  TX bytes:0 (0.0 b)

:note packets received and send



Here's how I've done it.

1. Squid box:

1.1 compile options for squid:

Squid Cache: Version 2.6.STABLE19
configure options: '--enable-snmp' '--prefix=/usr/local/squid' '--enable-async-io' '--enable-storeio=ufs,aufs,coss,null' '--enable-removal-policies=lru,heap' '--enable-wccp' '--enable-wccpv2' '--disable-ident-lookup' '--enable-linux-netfilter' '--enable-epoll' '--disable-select' '--disable-poll' '--enable-follow-x-forwarded-for' '--with-maxfd=16384' 'CFLAGS=-march=nocona -O2 -pipe -fomit-frame-pointer -DNUMTHREADS=150 -funroll-loops -ffast-math -fno-exceptions'

1.2 squid config:

http_port <squid port> transparent
wccp2_router xxx.xxx.xxx.233

1.3 OS:

CentOS 4.5 64-bit kernel version 2.6.23.9 compiled with ip_gre builtin.

1.4 interface:

create gre0 interface:
[root@squid ~]# cat /etc/sysconfig/network-scripts/ifcfg-gre0
DEVICE=gre0
BOOTPROTO=static
BROADCAST=192.168.172.3
IPADDR=192.168.172.2    << use any unused ip for this interface, doesn't matter
NETMASK=255.255.255.252
NETWORK=192.168.172.0
ONBOOT=yes
TYPE=Ethernet

ifconfig:

eth0     Link encap:Ethernet  HWaddr 00:14:5E:41:FA:A6
         inet addr:xxx.xxx.xxx.234  Bcast:xxx.xxx.xxx.239 Mask:255.255.255.248
         UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
         RX packets:8780435181 errors:0 dropped:0 overruns:0 frame:0
         TX packets:9211494941 errors:0 dropped:0 overruns:0 carrier:0
         collisions:0 txqueuelen:100
         RX bytes:4768621410009 (4.3 TiB)  TX bytes:6971021118272 (6.3 TiB)
         Base address:0x2000 Memory:d0120000-d0140000

gre0     Link encap:UNSPEC  HWaddr 00-00-00-00-FF-F8-00-00-00-00-00-00-00-00-00-00
         inet addr:192.168.172.2  Mask:255.255.255.252
         UP RUNNING NOARP  MTU:1476  Metric:1
         RX packets:4849085060 errors:0 dropped:0 overruns:0 frame:0
         TX packets:0 errors:4269 dropped:0 overruns:0 carrier:0
         collisions:4269 txqueuelen:0
         RX bytes:735923364221 (685.3 GiB)  TX bytes:0 (0.0 b)

tcpdump on eth0:
[root@squid ~]# tcpdump -nn -i eth0 |grep gre-proto
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on eth0, link-type EN10MB (Ethernet), capture size 96 bytes
10:23:58.708759 IP xxx.xxx.xxx.226 > xxx.xxx.xxx.234: gre-proto-0x883e
10:23:58.710273 IP xxx.xxx.xxx.226 > xxx.xxx.xxx.234: gre-proto-0x883e

tcpdump on gre0:
[root@squid ~]# tcpdump -nn -i gre0
tcpdump: WARNING: arptype 778 not supported by libpcap - falling back to cooked socket
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on gre0, link-type LINUX_SLL (Linux cooked), capture size 96 bytes
10:26:18.896768 IP xxx.yyy.zzz.16.1999 > 208.122.6.235.80: . ack 3193965999 win 65535 <nop,nop,sack sack 1 {1461:5841} >
10:26:18.897020 IP xxx.yyy.zzz.123.4098 > 209.216.46.132.80: . ack 586983296 win 17424
10:26:18.897790 IP xxx.yyy.zzz.209.62383 > 203.84.204.69.80: . ack 1194719072 win 65114
10:26:18.897799 IP xxx.yyy.zzz.209.62383 > 203.84.204.69.80: F 0:0(0) ack 1 win 65114


1.5 iptables:

echo 1 > /proc/sys/net/ipv4/ip_forward
echo 0 > /proc/sys/net/ipv4/conf/default/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/all/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/eth0/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/lo/rp_filter
echo 0 > /proc/sys/net/ipv4/conf/gre0/rp_filter


/sbin/iptables -t nat -A PREROUTING -i gre0 -p tcp -m tcp -s <lan network> --dport 80 -j REDIRECT --to-port <squid port>
/sbin/iptables -A INPUT -i gre0 -p tcp -s <lan network> --dport <squid port> -j ACCEPT

2. Router:

2.1 Router version:

7204VXR npe 300 IOS version 12.2(46a)

2.2 Config

ip wccp version 2
ip wccp web-cache redirect-list SQUID-BYPASS-NEW

interface FastEthernet0/0.128
 description Connection to internet
 bandwidth 24000
 encapsulation dot1Q 128
 ip address xxx.xxx.xxx.201 255.255.255.252
 ip access-group PORT_BLOCK in
 ip access-group PORT_BLOCK out
 ip wccp web-cache redirect out
 no cdp enable

Router#sh ip wccp web-cache detail
WCCP Cache-Engine information:
        Web Cache ID:          xxx.xxx.xxx.234
        Protocol Version:      2.0
        State:                 Usable
        Initial Hash Info:     00000000000000000000000000000000
                               00000000000000000000000000000000
        Assigned Hash Info:    FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
                               FFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF
        Hash Allotment:        256 (100.00%)
        Packets Redirected:    1166385116
        Connect Time:          3w3d

Router#sh ip wccp web-cache
Global WCCP information:
    Router information:
        Router Identifier:                   xxx.xxx.xxx.226
        Protocol Version:                    2.0

    Service Identifier: web-cache
        Number of Cache Engines:             1
        Number of routers:                   1
        Total Packets Redirected:            553854367
        Redirect access-list:                SQUID-BYPASS-NEW
        Total Packets Denied Redirect:       1050502969
        Total Packets Unassigned:            126368
        Group access-list:                   -none-
        Total Messages Denied to Group:      0
        Total Authentication failures:       0


### That's it... working great for us.





----- Original Message -----
From: "Manoj_Rajkarnikar" <manoj@xxxxxxxxxxxxx>
To: "Wennie V. Lagmay" <wlagmay@xxxxxxxxxxxxx>
Cc: "squid-users" <squid-users@xxxxxxxxxxxxxxx>
Sent: Monday, April 28, 2008 2:22:34 PM (GMT+0300) Asia/Kuwait
Subject: Re:  squid and wccp

On Mon, 28 Apr 2008, Wennie V. Lagmay wrote:

I am trying to configure squid wccp and cisco router but with no luck.
This is what I have done. Please check my procedure and confoguration:

for squid version 2.6Stable19 running on Fedora Core 8 64 bit with ip address xx.xx.184.178
1. I configure squid with options enable-linux-netfilter

please provide output of "squid -v"


--

[Index of Archives]     [Linux Audio Users]     [Samba]     [Big List of Linux Books]     [Linux USB]     [Yosemite News]

  Powered by Linux