squid 可以阻止对通过域名解析的特定 IP 地址的访问吗?

squid 可以阻止对通过域名解析的特定 IP 地址的访问吗?

我有一个.pac如下的文件。

if (dnsDomainIs(host, ".example.com")) {
    hostip = dnsResolve(host);
    if (isInNet(hostip, "202.0.0.0", "255.255.255.0")) {
        return "DIRECT";
    }
}

现在我想将其转换为squid.conf

客户希望访问example.com 其 IP 地址每天都会变化. 如果目标 IP 在范围内 202.0.0.0/24,我需要更改代理路由(直接,代理-A,代理-B等等)。

我知道如何更改代理,squid.conf但我不知道如何定义访问 IP 范围的权限仅通过域名。我认为 squid 只知道目标域名。

如果客户端用IP访问的话,我可以区分,但是如果客户端用域名访问的话,我就区分不出来。

有人知道鱿鱼的选择吗?

答案1

您可以通过设置仅在 dstdomain 和 dst 匹配时触发的组合 ACL 来实现此目的。

acl addom dstdomain example.com
acl addst dst 202.0.0.0/24
always_direct allow addst addom

相关内容