什么是正向代理和反向代理:
正向代理,是一个位于客户端和原始服务器之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),然后代理向原始服务器转交请求并将获得的内容返回给客户端。客户端才能使用正向代理。
反向代理方式,是指以代理服务器来接受internet上的连接请求,然后将请求转发给内部网络上的服务器,并将从服务器上得到的结果返回给internet上请求连接的客户端,此时代理服务器对外就表现为一个反向代理服务器;
正向代理和反向代理的用处:
正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。正向代理还可以使用缓冲特性减少网络使用率;
反向代理的典型用途是将防火墙后面的服务器提供给Internet用户访问。反向代理还可以为后端的多台服务器提供负载平衡,或为后端较慢的服务器提供缓冲服务。
一.正向代理
1.编写配置文件,使一台主机可以上网
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
BOOTPROTO=none
IPADDR=172.25.254.110
NETMASK=255.255.255.0
GATEWAY=172.25.254.250
DNS1=114.114.114.114
USERCTL=yes
PEERDNS=yes
DEFROUTE=yes
IPV6INIT=no
PERSISTENT_DHCLIENT=1
ONBOOT=yes
2.在该主机中安装squid服务
yum install squid.x86_64
systemctl start squid
4.修改该主机的squid配置文件
vim /etc/squid/squid.conf
第56行:http_access allow all
第62行:取消注释
5.在真机浏览器中->preferences->Advanced->Network->settings->
6.这样使得浏览器所在主机也可以上网
二.反向代理
也称cdn加速(Content Delivery Network) 内容分发网络
CDN的全称是Content Delivery Network,即内容分发网络。其目的是通过在现有的Internet中增加一层新的网络架构,将网站的内容发布到最接近用户的网络“边缘”,使用户可以就近取得所需的内容,提高用户访问网站的响应速度。可以举个例子,腾讯的总部在深圳,它的服务器肯定也是在深圳,西安的用户如果想要访问腾讯,可以通过在西安的腾讯代理服务器来访问腾讯,起到加速的作用。
在做这个实验之前要取消正向代理的浏览器设定
1.在主机1(172.25.254.110)中安装httpd服务
2.在主机2(172.25.254.210)中安装squid服务
systemctl start squid
3.在主机2中编辑配置文件
vim /etc/squid/squid.conf
第56行:http_access allow all
第59行:http_port 80 vhost vport
第60行:cache_peer 172.25.254.110 parent 80 0 proxy-only
parent表示172.25.254.110是它的父级目录
80表示访问父级目录的80端口
0表示没有没有备用机
proxy-only表示只做代理
第63行:cache_dir ufs /var/spool/squid 100 16 256
/var/spool/squid表示缓存目录
16表示有16个一级目录
256表示有256个二级目录
100表示缓存大小不能超过100M
4.在主机3(172.25.254.10)中的浏览器中访问172.25.254.210
显示172.25.254.110 /var/www/html中默认发布文件中的内容