如何设置一个 NIC 用于传出连接,另一个 NIC 用于服务我的 Squid 代理?

如何设置一个 NIC 用于传出连接,另一个 NIC 用于服务我的 Squid 代理?

我有一个内部网络(192.168.2.0/24),我应该将其连接到代理。

Squid 3我已经在 Ubuntu 12.04 机器上安装并测试了(流量很小)一个缓存/代理服务器,其 IP 地址为: 192.168.2.102 eth0。另外,我还有另一个物理网卡,IP 为 192.168.2.101 eth1

我所做的设置包括将 Ubuntu 盒子连接到互联网并在同一个eth0NIC 中为 Squid 提供服务。

我担心当所有流量到来时,这个孤独的 NIC 无法处理。

所以我想设置一个eth1来连接到互联网,另一个来提供代理服务。

答案1

这个问题听起来有点令人困惑,但我认为您要求一个接口用于外部连接,另一个接口专用于 squid 客户端的流量。如果是这样:

将 eth1 设为您的默认路由(您没有指定,但它有一个可以路由到/从互联网的网关,对吗?)

ip route add default via 192.168.2.101

然后只需让 squid 客户端连接到 eth0 的地址并使用基于源的路由来确保对进入 eth0 的流量(即 squid 客户端流量)的响应也从 eth0 发出。

echo 1 squid >> /etc/iproute2/rt_tables
ip route add default 192.168.2.102 table squid
ip rule add from 192.168.2.102 lookup squid

相关内容