[Megoldva] Squid3 intercept proxy sokáig tölt internetről

 ( rezmozsar | 2015. június 15., hétfő - 19:55 )

Sziasztok!

Építettem egy intercept (transparens) proxy-t, egy windows szerver Hyper-V hostra egy Debian Jessie operációs rendszert, majd tettem rá Squid3(4.8)+SquidGuard+Sarg-ot.
2 hálókártya van a virtuális gépben egyik eth0 ezt a proxy-t és egy Mikrotik router-t köt össze, a másik eth1 ez pedig a LAN hálózatba csatlakozik.
Az iptables segítségével az eth1 interface tcp protokoll 80 portjáról a forgalom át van irányítva a 3128 portra.
A hálózat gépei gateway-ként használják a proxy-t.

Működik a böngészők beállítása nélkül.

A problémám az, hogy az első oldal betöltése az internetről nagyon lassú, majd amit a cache-ből szolgál ki az jónak tűnik.
Ideiglenesen kikapcsoltam a SquidGuard-ot. Az eredmény nem lett érzékelhetően gyorsabb.

Mit csinál mikor teker?
Ennek a proxy-nak a beállításában kérem a HUP közösség támogatását.

köszönöm

Hozzászólás megjelenítési lehetőségek

A választott hozzászólás megjelenítési mód a „Beállítás” gombbal rögzíthető.

Esetleg MTU probléma?

Nekem is ez volt a tippem.
A squid gépen csinálsz egy olyat, hogy squidclient -h localhost mgr:info

bash: squidclient: parancs nem található

szevasz,

apt-get install squidclient

Elvileg a squid a rendszer számára beállított dns szervert használja ha nem állítasz be mást.
Egyszer belecsúsztam egy olyan helyzetbe, hogy ez nem működött.
Be kellett írnom a squid.conf -ba a dns szervereket ( dns_nameservers 8.8.8.8 )

felraktam a squidclient progit ezt irja:

root@proxy:/home/leo# squidclient -h localhost mgr:info
Sending HTTP request ... done.
HTTP/1.1 200 OK
Server: squid/3.4.8
Mime-Version: 1.0
Date: Wed, 17 Jun 2015 11:57:20 GMT
Content-Type: text/plain
Expires: Wed, 17 Jun 2015 11:57:20 GMT
Last-Modified: Wed, 17 Jun 2015 11:57:20 GMT
X-Cache: MISS from proxy.miltrade
X-Cache-Lookup: MISS from proxy.miltrade:3128
Via: 1.1 proxy.miltrade (squid/3.4.8)
Connection: close

Squid Object Cache: Version 3.4.8
Build Info: linux
Start Time: Tue, 16 Jun 2015 22:19:13 GMT
Current Time: Wed, 17 Jun 2015 11:57:20 GMT
Connection information for squid:
Number of clients accessing cache: 55
Number of HTTP requests received: 70480
Number of ICP messages received: 0
Number of ICP messages sent: 0
Number of queued ICP replies: 0
Number of HTCP messages received: 0
Number of HTCP messages sent: 0
Request failure ratio: 0.00
Average HTTP requests per minute since start: 86.1
Average ICP messages per minute since start: 0.0
Select loop called: 1105204 times, 44.414 ms avg
Cache information for squid:
Hits as % of all requests: 5min: 29.5%, 60min: 20.0%
Hits as % of bytes sent: 5min: 19.3%, 60min: 27.0%
Memory hits as % of hit requests: 5min: 24.1%, 60min: 30.7%
Disk hits as % of hit requests: 5min: 16.1%, 60min: 13.5%
Storage Swap size: 4154876 KB
Storage Swap capacity: 20.3% used, 79.7% free
Storage Mem size: 511496 KB
Storage Mem capacity: 97.6% used, 2.4% free
Mean Object Size: 27.38 KB
Requests given to unlinkd: 1581
Median Service Times (seconds) 5 min 60 min:
HTTP Requests (All): 0.08729 0.07014
Cache Misses: 0.10857 0.10281
Cache Hits: 0.00179 0.00179
Near Hits: 0.16775 0.05951
Not-Modified Replies: 0.00000 0.00000
DNS Lookups: 3.34613 3.65658
ICP Queries: 0.00000 0.00000
Resource usage for squid:
UP Time: 49086.818 seconds
CPU Time: 231.836 seconds
CPU Usage: 0.47%
CPU Usage, 5 minute avg: 0.51%
CPU Usage, 60 minute avg: 0.97%
Maximum Resident Size: 2631536 KB
Page faults with physical i/o: 0
Memory usage for squid via mallinfo():
Total space in arena: 637176 KB
Ordinary blocks: 637072 KB 273 blks
Small blocks: 0 KB 0 blks
Holding blocks: 37652 KB 8 blks
Free Small blocks: 0 KB
Free Ordinary blocks: 104 KB
Total in use: 104 KB 0%
Total free: 104 KB 0%
Total size: 674828 KB
Memory accounted for:
Total accounted: 602539 KB 89%
memPool accounted: 602539 KB 89%
memPool unaccounted: 72289 KB 11%
memPoolAlloc calls: 16407718
memPoolFree calls: 16463598
File descriptor usage for squid:
Maximum number of file descriptors: 65535
Largest file desc currently in use: 335
Number of file desc currently in use: 79
Files queued for open: 0
Available number of file descriptors: 65456
Reserved number of file descriptors: 100
Store Disk files open: 0
Internal Data Structures:
151791 StoreEntries
27654 StoreEntries with MemObjects
27652 Hot Object Cache Items
151737 on-disk objects

A squid.conf-ban cache_mem 512 MB van beállítva. A fent adatokban alapján ez kicsi lehet?
Storage Mem capacity: 97.6% used, 2.4% free

Hello,

Median Service Times (seconds) 5 min 60 min:
HTTP Requests (All): 0.08729 0.07014
Cache Misses: 0.10857 0.10281
Cache Hits: 0.00179 0.00179
Near Hits: 0.16775 0.05951
Not-Modified Replies: 0.00000 0.00000
DNS Lookups: 3.34613 3.65658
ICP Queries: 0.00000 0.00000

Ez alapján ami lassú az a DNS névfeloldás. 3.3 ill. 3.6 másodperc átlagosan.

Próbáld meg, hogy beírod a squid.conf-ba a következő bejegyzést :
dns_nameservers 192.168.100.11 192.168.100.15 8.8.8.8

Utána indítsd újra a proxy-t majd egy pár perc után pillants a Median service időkre. Talán javulni fog.

Üdv

Nekem is volt ilyen DNS gondom Squid proxyval, de az nem transzparensre volt állítva. Én simán a google DNS szervereit adtam meg a squid.conf-ban és azóta jó. Viszont transzparens proxy esetén is a Squidnek kell nevet feloldania? Nem a kilens gép már feloldja?

A kliens feloldja, az iptables átdobja a csomagot helyi IP-re, és akkor a transzparens proxy megint feloldja :).

--

És muszáj neki feloldani?
Mondjuk én jobban komálom a sima proxy felállást, DNS-ben és DHCP-ben tudok hírdetni egy helyi webszerveren lévő PAC állományt, bár nem mindig működik az automatikus proxybeállítást.
Viszont így ipv4-es gépről proxyn át el tudtam érni ipv6-os weboldalt, mert a proxy rálátott az ipv6-ra. Transzparens esetben biztos kellett volna a LAN-on is rendesen bekonfigolt IPv6

A böngésző nem tud a proxyról, ezért feloldja és arra a cél IP-re küldi a csomagot. A Squid meg azt látja, hogy az ő saját IP-jére jött egy kérés, mert az iptables már átirányította, neki muszáj megint feloldani, hogy továbbküldhesse.

--

Hello

sajnos rosszabb lett a DNS lookups érték:

Median Service Times (seconds) 5 min 60 min:
HTTP Requests (All): 0.08265 0.10281
Cache Misses: 0.10281 0.10281
Cache Hits: 0.00721 0.01309
Near Hits: 0.09736 0.08265
Not-Modified Replies: 0.00000 0.00000
DNS Lookups: 3.82244 3.82244
ICP Queries: 0.00000 0.00000
üdv

Szia Dragi
mutatom a config fájlokat, dns nameserver-ek be van állítva az /etc/network/interfeces fájlban így:

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
#allow-hotplug eth0
############################################## WAN interface
auto eth0
iface eth0 inet static
address 192.168.50.5
netmask 255.255.255.0
network 192.168.50.0
broadcast 192.168.50.255
gateway 192.168.50.10
dns-nameservers 8.8.8.8 8.8.4.4

############################################### LAN interface
auto eth1
iface eth1 inet static
address 192.168.100.10
netmask 255.255.255.0
network 192.168.100.0

és az etc/resolv.conf fájlban is

search domain.hu
nameserver 192.168.100.11
nameserver 192.168.100.15
nameserver 8.8.8.8
nameserver 8.8.4.4

Ha egy helyi hálózaton lévő gépet szeretnék feloldani, az nslookup server01 parancs azonnal eredményét azonnal megkapom,
ha egy távoli gép ip címét akarom megtudni pl nslookup prog.hu akkor kb 2-3sec várni kell rá.

Talán túl sok dns szerver van megadva?

nem hinném, hogy a "túl sok" lenne a gond, inkább a lassúság.
Én arra tippelek, hogy az első kettő nem működik (rendesen) és ennyi idő kell, amire timeout-olnak.
Próbáld meg, hogy kikommentezed őket, és csak a Google marad.

miért nem izzítasz be egy local caching-only nameservert ami a root DNS-ekhez kapcsolódik?

Bingoo

igen, az első két dns-szerver nem működött rendesen, a kliensek dns-ét át állítva 8.8.8.8 és 8.8.4.4 -re minden jól ment, nem volt várakozás az oldal betöltése előtt.

Most már jók azok is és az eredeti konfigurációval minden jól működik.

köszönöm mindenkinek a hozzászólásokat

üdv.

Akkor csak nem kell a nevet a squid-nek is feloldania transzparens módban :)