我要投稿
  • 您当前的位置:57365.com -> 技术教程 -> 服务器网络 -> 服务器教程 -> 代理服务器教程 -> 教程内容
  • [ 收藏本页教程 ]
  • squid开多端口代理的心得代理服务器教程

    教程作者:佚名    教程来源:不详   教程栏目:代理服务器教程    收藏本页
                  摘要:squid开多端口代理的心得
    利用squid开二级代理很方便,就是在配置文件上做点文章, 它给的那个default的配置文件看起来就头大。一般都是重新写一个。
      给A校区的兄弟们开了一个代理。用的是B校区的动态ip做的父代理。
      但是动态实在是有够e。不能上国外不说,还经常抽筋。
      由于手头有另一个专用代理A可以上国外,于是萌发了开两个二级代理的念头。
    只有一台电脑,当然只能在一个自己上开两个端口(其实后来才想到可以用认证的方法,对一个端口进来的不同的用户采用不同的的父级代理,这样squid的配置文件会稍微麻烦一点),先开始不得要领,也没有现实的例子,看见有人这样开了,问一问才知道是windows下用wingate很简单就能做到了。

      wingate能想到,我想squid也应该能做到,自己慢慢捉摸吧。
    基本想法是:

      服务端口3128-----squid-----动态ip连接----国内访问
      服务端口6666-----squid-----代理A     ----国外访问

      先想到的是启动两次squid,第二次手动指定另外一个配置文件给它(-f),一尝试得到的信息是Squid is already running!  Process ID  **** 。想一想这种方法也有够野蛮,效率和稳定两不顾,于是弃之不用。
      于是开始打配置文件的主意,在google上查到论坛上关于两个端口采用不同的认证的配置方法,OK,开两个端口就有路了,下来关键是对两个端口的接入进行分流。squid一般情况下是对不同的连接目标地址所在域进行分流的,比如把对.com的接连请求交给父代理X来做,对.edu.cn的请求代理交给父代理Y来做,

    这种情况下用到了cache_peer_domain这个选择规则

    cache_peer_domain Y .edu.cn
    cache_peer_domain X !.edu.cn

    既然有目标域的选择规则,那有没有针对其他情况的选择规则呢?
    还是在squid.conf.default中查找到cache_peer_access这个功能强大的访问控制规则(其实这个又大又乱的squid.conf.default里所有的东西都教给我们了
    ,一开始就该好好阅读的)

      比如通过访问控制列表进行选择:
    对于来自192.168.1.0的请求我们使用local.proxy.com父代理服务
    器,而对于其他请求由本地子代理服务器直接进行处理,
    这时我们可以使用cache_peer_access选项来实现:

    acl LocalNet src 192.168.1.0/2525250
    acl all src 0.0.0.0/0.0.0.0
    cache_peer local.proxy.com parent 3128 3130
    cache_peer_access local.proxy.com allow LocalNet
    cache_peer_access local.proxy.com deny all

      结合cache_peer_access的强大功能组合完成了下面的配置代码
    http_port 3128
    http_port 6666
    #声明两个端口
    acl X myport 3128
    acl Y myport 6666
    http_access allow X
    http_access allow Y
    #接受两个端口的http请求
    acl all src 0.0.0.0/0.0.0.0
    cache_peer 10.10.4.52 parent 6666 3130 login=***:*** default no-query
    cache_peer 10.***.**.** parent 3128 3130
    cache_peer_access 10.10.4.52 allow !Y
    #让动态ip的父代理响应3128端口的接入,对6666端口的不响应
    cache_peer_access 10.***.**.** allow Y
    #让A代理响应6666端口的接入

    这样便很好的对不同端口的访问进行了分流。使用起来效果也不错。
    胡乱写一点希望对大家有用。

     flyg 回复于:2004-09-17 11:32:30很有用啊,我收藏啦,帮你顶一把

     szkingrose 回复于:2004-09-18 09:21:37代表proxy谢谢你!

     我菜我怕谁 回复于:2004-09-18 13:25:41ding

     DreamJiang 回复于:2004-09-22 17:15:12挺好的。讓大家對squid的認識又有新的理解!

     myhuar 回复于:2005-01-13 22:13:30学生腔好重,莫怪

     shen861 回复于:2005-02-16 22:58:44very good ,chinese are the best~!

     charlin 回复于:2005-02-22 14:13:50[quote:2daf94b432="wddllyy"]利用squid开二级代理很方便,就是在配置文件上做点文章, 它给的那个default的配置文件看起来就头大。一般都是重新写一个。
      给A校区的兄弟们开了一个代理。用的是B校区的动态ip做的父代理。
      但是动态实在是有够..........[/quote:2daf94b432]

    好文章! :em02:

     zebar 回复于:2005-03-24 16:11:42楼主向我们展示了Squid的强大功能和配置技巧,但从实用角度考虑,用路由决定包的流向更好一些。这样,Squid只需要基本的配置;路由设置上,教育网的地址段由于已知而且数量较少,就按地址段逐个添加进路由表,从校园网走(写个脚本,每次启动自动执行),再把ADSL接口(例如ppp0)设置为缺省路由。

    这样作的一个明显好处是不用来回更改代理端口;根据要访问的目的地址IP决定使用什么线路,而不是依靠域名。

     xiaoice 回复于:2005-04-15 13:40:43感觉不错的哟

     fan3838 回复于:2005-07-28 17:57:28少用收藏.一收藏就不看了

    我要投稿   -   广告合作   -   关于本站   -   友情连接   -   网站地图   -   联系我们   -   版权声明   -   设为首页   -   加入收藏   -   网站留言
    Copyright © 2009 - 20012 www.www.hxswjs.com All Rights Reserved.57365.com 版权所有