分类: LINUX
2012-07-16 13:57:47
背景:公司上网默认是通过光纤线路,需要打开网页验证的方式上网,但每人限速1M,很不爽,后来发现有条单独的
ADSL线路是给客户专用的,2M带宽,但大部分时间是空闲的,感觉浪费,就搞了台旧电脑作网关,运维内部几个人在
使用。(gentoo+iptables+route2+squid+dnsmasq)
一、最近几个同事反映访问公司内部一些BS应用时会出现页面不正常的情况(第一想法,肯定是cache的问题)
查squid配置文件,果然是内部域名的一些应用忘了排除在cache外了
squid3.1.19跟squid2.7版配置有一些差别,上官网查了手册
改的方法如下:
acl company dstdomain .aaa.cn
cache deny company
(2.7版中好像是no_cache的参数)
二、没多久,又有同事反应,采用短名称方式访问内部BS应用时,如访问就会报错
大概错误是访问 Name Error: The domain name does not exist.什么什么之类的
一看错误提示,是跟DNS有关,本地测试,解决短名称正常
网关上跟DNS有关的服务只有两个,一个是dnsmasq,另外就是squid了
测试也很简单,采用排除法,不用squid作cache或者是先临时不用dnsmasq域名缓存,两者取其一,就知道
问题出在哪了。
最后确定是确定squid的问题,查看手册,在配置文件中增加以下选项
append_domain .aaa.cn
重新加载squid配置,再测试,一切正常。