Squid 通过 http_port 分离 access.log

Squid 通过 http_port 分离 access.log

我有 AP 2 接口,它们的 ip 分别是 192.168.200.1、192.168.201.1,从每个接口进行 HTTP 访问我将其重定向到不同的 squid 端口

192.168.200.0/24 ==> 192.168.200.1:3129
192.168.201.0/24 ==> 192.168.200.1:3130

在 iptables.conf 中添加以下行

-A PREROUTING -i wlan0 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.200.1:3129
-A PREROUTING -i wlan1 -p tcp -m tcp --dport 80 -j DNAT --to-destination 192.168.201.1:3130

并在 squid3.conf 中

http_port 192.168.200.1:3129 intercept name=ap1
http_port 192.168.201.1:3130 intercept name=ap2

access_log daemon:/var/log/squid3/ap1/access.log squid
access_log daemon:/var/log/squid3/ap2/access.log squid

但是现在要将相同的数据写入两个文件,如何将访问数据分离到每个 access.log 文件中。

答案1

据我所知,Squid 不支持将事件内部拆分到不同的 access_log 文件,而 Apache 则可以按虚拟主机进行记录。

如果当前的 acces_log 不包含您需要的信息,您可以使用日志格式指示。

如果你需要不同的日志文件是为了生成统计数据,那么运行预处理脚本来按客户端 IP 地址过滤现有日志就很简单了

相关内容