squid在企业网中的应用

 一:squid简介:

Squid是一种在Linux系统下使用的优秀的代理服务器软件。Squid是一个缓存internet数据的一个软件,它接收用户的下载申请,并自动处理所下载的数据。也就是说,当一个用户想要下载一个主页时,它向Squid发出一个申请,要Squid替它下载,然后Squid 连接所申请网站并请求该主页,接着把该主页传给用户同时保留一个备份,当别的用户申请同样的页面时,Squid把保存的备份立即传给用户,使用户觉得速度相当快。

二:CDN简介:

CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需的内容,提高用户访问网站的响应速度。从技术上全面解决由于网络带宽小、用户访问量大、网点分布不均等问题,提高用户访问网站的响应速度。为更好地理解CDN,让我们看一下CDN的工作流程。当用户访问已经加入CDN服务的网站时,首先通过DNS重定向技术确定最接近用户的最佳CDN节点,同时将用户的请求指向该节点。当用户的请求到达指定节点时,CDN的服务器(节点上的高速缓存)负责将用户请求的内容提供给用户。

CDN 网络加速器的四大优势 :

高速:提高了企业站点(尤其含有大量图片和静态页面站点)的访问速度,并大大提 高以上性质站点的稳定性

实用:当企业站点所存放的服务器短时宕机时,用户仍可以在很长一段时间访问 cache 服务器,获得该企业站点的信息;

简易:CDN 网络加速器对用户完全透明,购买、使用方便,不需对其空间作任何更 改,不影响原来空间维护操作和运行内容;

超值:本公司为 CDN 提供可再扩展的所有缓存服务器以及专用 DNS 硬件以及带宽,一次购买,可在各地电信机房自动为您"克隆"出多个站点副本,让站点遍布 internet 各处。

三:正向代理与反向代理

正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端必须要进行一些特别的设置才能使用正向代理。

反向代理正好相反,对于客户端而言它就像是原始服务器,并且客户端不需要进行任何特别的设置。客户端向反向代理的名字空间(name-space)中的内容发送普通请求,接着反向代理将判断向何处(原始服务器)转交请求,并将获得的内容返回给客户端,就像这些内容原本就是它自己的一样。

案例一:透明代理(正向):透明代理的意思是客户端根本不需要知道有代理服务器的存在

设计思路:squid代理服务器处于内网当中,且有双网卡eth1和eth0,用户通过路由器才能正常上网。上网需要指明dns服务器,但是dns服务器处于外网当中,想要能够正常解析出域名,内网主机需要使用nat转换将dns解析信息发送到外网中,所以在代理服务器上配置iptables策略,将nat数据包转发到外网。内网主机需要指明dns服务器地址和网关eth1:192.168.10.10。而squid代理服务器需要指明网关192.168.101.254和dns服务器222.88.88.88(222.85.85.85)

拓扑方案:

代理服务器的网关指向路由器接口:

[root@lyt ~]# vim /etc/resolv.conf

[root@lyt ~]# mkdir /mnt/cdrom

[root@lyt ~]# mount /dev/cdrom /mnt/cdrom/

[root@lyt ~]# cd /mnt/cdrom/Server/

[root@lyt Server]# rpm -ivh squid-2.6.STABLE21-3.el5.i386.rpm #安装squid包

过滤/etc/squid/squid.conf配置文件的注释行:[root@lyt ~]# grep -v "^#" /etc/squid/squid.conf |grep -v "^$"

[root@lyt Server]# vim /etc/squid/squid.conf #编辑squid的配置文件

[root@lyt Server]# service squid start

[root@lyt Server]# netstat -tupln |less

[root@lyt ~]# vim /etc/sysctl.conf

[root@lyt ~]# sysctl –p #使数据包转发功能生效

[root@lyt ~]# iptables -t nat -A POSTROUTING -s 192.168.10.0/24 -p udp --dport 53 -o eth0 -j MASQUERADE #使用nat协议,-t表示表格(table);在路由后(POSTROUTING)进行追加,-A表示追加;源地址是192.168.10.0/24网段,-s表示source;监听目标端口udp的53;出口是eth0,-o表示出口网卡;MASQUERADE是地址伪装,也即使用eth0网卡的ip地址作为nat转换的源地址

[root@lyt ~]# iptables -t nat -A PREROUTING -p tcp --dport 80 -i eth1 -j REDIRECT --to-port 3128 #使用nat协议,-t表示表格(table);在路由前(PREROUTING)追加,-A表示追加;目标端口是tcp的80端口;监听进口网卡eth1,重定向到3128端口。

[root@lyt ~]# service squid restart

测试:使用xp主机

案例二:反向代理:在代理服务器上设置双网卡,eth0处于外网,eth1处于内网,实现外网的主机访问内网的web服务器

1:配置web server :

 

[root@localhost ~]# mkdir /mnt/cdrom

[root@localhost ~]# mount /dev/cdrom /mnt/cdrom/

[root@localhost ~]# cd /mnt/cdrom/Server/

[root@localhost Server]# rpm -ivh httpd-2.2.3-31.el5.i386.rpm #安装apache,使其作为一台web服务器

[root@localhost Server]# cd /var/www/html/

[root@localhost html]# vim index.html #创建web服务器主页

[root@localhost html]# service httpd start

2:在案例一中。只需要将代理服务器作如下修改即可:

[root@lyt ~]# vim /etc/squid/squid.conf

[root@lyt ~]# squid -k parse #测试配置文件的语法是否正确

[root@lyt ~]# service squid restart

[root@lyt ~]# netstat -tupln |less

测试:使用xp主机进行测试:

案例三:非透明代理:就是用户必须要知道代理服务器的存在,并且进行设置才可以通过代理服务器上网。通过在非透明代理实现内网访问外网。

拓扑方案:

配置代理服务器:

root@lyt ~]# mkdir /mnt/cdrom

[root@lyt ~]# mount /dev/cdrom /mnt/cdrom

[root@lyt ~]# cd /mnt/cdrom/Server/

[root@lyt Server]# rpm -ivh squid-2.6.STABLE21-3.el5.i386.rpm

[root@lyt Server]# vim /etc/squid/squid.conf

[root@lyt Server]# service squid start #启动squid服务

测试:










本文转自 liuyatao666 51CTO博客,原文链接:http://blog.51cto.com/5503845/977972,如需转载请自行联系原作者

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/256582.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

win10+tensorflow faster-RCNN 训练自己的数据集

首先,感谢博客上各路大佬的无私奉献!但是也不得不吐槽下,大佬些写博客的时候能尽量写的对小白友好一点吗?期间遇到各种坑,说多了都是泪啊!话不多说,上正题! 环境:win10a…

matlab simulnk笔记07——模块(接地模块group、终止模块terminal、信号合并mux与分解模块demux)

1.接地模块group 2.终止模块terminal 3.信号合并mux 注意:合并仅仅指的是物理上的合并,数学上真正意义上的合并,只是将多个信号放在同一个管道上统一传输给显示终端,但是每个信号之间互不影响,是相

二叉搜索树的插入与删除图解

一、二叉搜索树(BSTree)的概念 二叉搜索树又被称为二叉排序树,那么它本身也是一棵二叉树,那么满足以下性质的二叉树就是二叉搜索树:1、若左子树不为空,则左子树上左右节点的值都小于根节点的值2、若它的右子…

面试总结

lru算法:最近最少使用  1.新数据插入到链表头部;  2.每当缓存命中(即缓存数据被访问),则将数据移到链表头部;  3.当链表满的时候,将链表尾部的数据丢弃。 自定义控件: 1.measu…

win10+anaconda安装tensorflow和keras遇到的坑小结

win10下利用anaconda安装tensorflow和keras的教程都大同小异(针对CPU版本,我的gpu是1050TI的MAX-Q,不知为啥一直没安装成功),下面简单说下步骤。 一 Anaconda安装 一般来说,python选择3.6的,目…

现代制造工程课堂笔记07——应力应变分析(考点应力莫尔圆)

目录 选择判断题,简单计算在莫尔圆那里出 一、单向拉伸中的应力应变 手写笔记 选择判断题,简单计算在莫尔圆那里出 一、单向拉伸中的应力应变 、 手写笔记

win10+tensorflow CPU 部署CTPN环境

刚弄明白CTPN部署的时候,CTPN作者刚更新了简易代码版本,看介绍是把代码优化了不需要多的配置。。。感觉好忧伤! 源码地址:https://github.com/eragonruan/text-detection-ctpn/tree/master 新版本地址:https://githu…

css如何实现背景透明,文字不透明?

之前做了个半透明弹层,但设置背景半透明时,子元素包含的字体及其它元素也都变成了半透明。对opacity这个属性认识的不透彻,在这里做一些总结,方便以后使用。 背景透明,文字不透明的解决方法:为元素添加一个…

是什么时候开始学习gulp了

转自:http://www.ydcss.com/archives/18 简介: gulp是前端开发过程中对代码进行构建的工具,是自动化项目的构建利器;她不仅能对网站资源进行优化,而且在开发过程中很多重复的任务能够使用正确的工具自动完成&#xff1…

matlab GUI——按下按钮在指定的坐标下绘制函数图像

目录 1.组件布局 2.回调函数设置 3.编写回调函数 1.组件布局 2.回调函数设置 右键单击plot按钮——查看回调——call backs

【转】【UML】使用Visual Studio 2010 Team System中的架构师工具(设计与建模)

Lab 1: 应用程序建模 实验目标 这个实验的目的是展示如何在Visual Studio 2010旗舰版中进行应用程序建模。团队中的架构师会通过建模确定应用程序是否满足客户的需求。 你可以创建不同级别的详细模型,并将它们彼此结合、测试然后发布到你的开发计划里。 在这个实验中…

深度学习基础(一)起源

目录 一、DP的前世 1.perceptron 2.NN 3.DP 二、DP的基础知识 1.convolution 2.padding 3.pooling 4.Flatten 5.fully connected 6.dropout 一、DP的前世 深度学习发展至今经历颇为曲折,上世纪起源,火热起来也是20世纪初的时候,具体时…

ANSYS经典界面中梁单元实例全解析

转载链接:http://www.jishulink.com/content/post/361389 文中红色部分为自己添加!!! 转载的文章中提到的梁单元截面是常用的工字形,那么要是不规则的截面形状的话需要自己进行截面形状绘制,具体可以参考…

ant的安装和使用

1.ant的安装 1.1 添加环境变量:ANT_HOMED:\software\ant\apache-ant-1.10.1 在path中添加:%ANT_HOME%\bin 1.2 测试是否安装成功 在cmd中输入ant,如果出现如下提示表示安装成功 2.定义简单的build.xml 2.1 创建HelloWord.java package test; …

Language-Directed Hardware Design for Network Performance Monitoring——Marple

网络监控困难 1、仅仅通过去增加特定的监控功能到交换机是不能满足运营商不断变化的需求的。(交换机需要支持网络性能问题的表达语言)2、他们缺乏对网络深处的性能问题进行本地化的可见性,间接推断网络问题的原因3、当前的交换机监控并没有提…

深度学习基础(四)优化函数(梯度下降函数)

梯度下降函数也就是优化函数,在神经网络训练过程最重要的函数。重要程度类似于调校对于汽车的重要性,搭建模型和参数设置等操作“造好了一辆汽车”,优化函数“调校”。因为汽车最终的操控性和加速性能等指标很大程度取决于调校,调…

js 实现 复制 功能 (zeroclipboard)

#复制功能因访问权限和安全问题, 被浏览器禁了# 我要实现的功能:点击复制按钮,复制浏览器的当前页面地址,加上用户选择的参数(用户查找过滤),直接将该链接发给别人,点击打开就是对应…

深度学习基础(二)激活函数

激活函数(也被称为激励函数)的意义就是加入非线性因素,使得神经网络具有非线性表达的能力。其必要条件是激活函数的输入和输出都是可微的,因为神经网络要求处处可微。(可微是指函数的各个方向可导,可微大于等于可导) …

Please ensure that adb is correctly located at……问题解决方案

启动android模拟器时.有时会报The connection to adb is down, and a severe error has occured.的错误.在网友说在任务管理器上把所有adb.exe关闭掉.重启eclipse.但试过不管用.所以在外国网站上找到一种可行的方法:1.先把eclipse关闭.2.在管理器转到你的android SDK 的platfor…