Squid中文权威指南第九章

2009-05-13 12:00:40来源:未知 阅读 ()

新老客户大回馈,云服务器低至5折

第9章 Cache拦截
Cache拦截是让传输流向
[url=javascript:;]Squid[/url]

流行技术,它不用配置任何客户端。你可以配置路由器或交换机将HTTP连接转发到squid运行的主机。squid运行的操作系统被配置成接受外部数据
包,并将其递交给squid进程。为了让HTTP拦截生效,你必须配置3个独立的因素:网络设备,squid运行的操作系统,和squid自身。
(译者注:Cache拦截实际上指的是Squid的透明代理)
9.1它如何工作?
Cache拦截包含了某些网络欺骗,它对理解在客户端和Squid之间的会话有用。我
[url=javascript:;]使用[/url]
图9-1和如下的tcpdump示例输出,来解释当数据包通过网络时,如何被拦截。
Figure 9-1. How HTTP interception works

1.用户代理(user-agent)想请求某个资源,它对原始服务器发起index.html请求,例如:www.oreilly.com。它需要原始服务器的IP地址,所以先发起一个DNS请求:
Packet 1
   
TIME:   19:54:41.317310
   
UDP:    206.168.0.3.2459 -> 206.168.0.2.53
DATA:   .d...........www.oreilly.com.....
---------------------------------------------------------------------------
   
Packet 2
TIME:   19:54:41.317707 (0.000397)
UDP:    206.168.0.2.53 -> 206.168.0.3.2459
DATA:   .d...........www.oreilly.com.............PR.....%........PR.
....$........PR...ns1.sonic.net.........PR...ns2.Q........PR
...ns...M...............h.............!.z.......b......
2.现在有了IP地址,用户代理初始化到原始服务器80端口的TCP连接:
Packet 3
    TIME:   19:54:41.320652 (0.002945)
    TCP:    206.168.0.3.3897 -> 208.201.239.37.80 Syn
    DATA:   
3.
路由器或交换机注意到目的地址是80端口的TCP
SYN包。下一步会发生什么依赖于特定的拦截技术。在4层交换和路由策略上,网络设备简单的将TCP包转发到Squid的数据链路地址。当squid直接
挂在网络设备上时,就这样工作。对WCCP来说,路由器封装TCP包为GRE包。因为GRE包有它自己的IP地址,它可能被通过多个子网进行路由。换句话
说,WCCP不要求squid直接挂在路由器上。
4.Squid主机的操作系统接受到拦截包。对4层交换来说,
TCP/IP包并没有改变。假如包使用了GRE封装,主机会剥离外部的IP和GRE头部,并将原始的TCP/IP包放在输入队列里。注意squid主机接
受到的包是针对外部地址的(原始服务器的)。正常情况下,这个包不匹配任何本地地址,它会被丢弃。为了让主机接受外部数据包,你必须在大多数操作系统上激

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有

上一篇:Squid中文权威指南第八章

下一篇:Squid中文权威指南第十一章