我有一个如下设置
PC <-- ADSL Router <-- DSLAM <-- SquidProxy Server <--> ISP Provided Router --> Internet
- Squid 代理(在 Ubuntu 12.04 上运行)通过 连接到 ISP 路由器,
eth0
并配置为获取192.168.1.0/24
范围内的 DHCP IP。路由器的默认网关是192.168.1.1
。 eth1
Squid 代理通过(赋予静态 IP )连接到 DSLAM192.168.2.1
。eth1
还配置为具有 IP 范围和192.168.2.50-192.168.2.210
DNS 的dhcp 输出。8.8.8.8
8.8.8.4
- 面向 squid 代理的 DSLAM 以太网端口被分配一个
192.168.2.0/24
范围内的静态 IP。通往 ADSL 路由器的端口也被分配一个不同范围内的静态 IP(例如192.168.3.0/24
),ADSL 路由器也是如此。
有了上述设置,我应该给 ADSL 路由器进行哪些设置?尤其是
- 默认网关
- DNS 服务器 IP
答案1
因此,经过深思熟虑,并且由于重新配置每个 ADSL 路由器太麻烦,所以我做了以下步骤。
- 对 DSLAM 和 ADSL 路由器没有任何更改(其默认 IP 仍为 192.168.1.1)。
- 通过将路由器的 192.168.1.1 IP 替换为 192.168.2.1,更改了 ISP 路由器的配置。
- 将代理上的“eth0”适配器更改为 DHCP(现在它在 192.168.2.0/24 中接收 DHCP ip),并为“eth1”适配器提供静态 IP 192.168.1.1
- 更改了 squid 代理的 WAN 和 LAN IP 范围以分别反映 eth1 和 eth0 的 IP 范围。
就这样!之后,我所要做的就是让最终用户输入 eth1 ip 192.168.1.1/24 作为代理 ip,然后它就可以正常工作了!!我后来才发现的一个问题是,当代理服务器通过 ADSL 路由器和 DSLAM 接收数据包时,收到的 MAC 地址不是发送数据包的 PC 的 MAC 地址,因此我无法对此类用户实施 MAC(或基于 IP)的过滤器。仍然不知道如何解决这个问题...