我在专用虚拟机上运行 Squid。它的 IP 为 192.168.1.5。运行 Squid 的服务器只有一个网卡。互联网连接连接到另一台有两个网卡的(物理)服务器。本地网卡的内部网卡为 192.168.1.1。
现在我有一个客户端需要通过 Squid 代理连接到互联网,因此我将代理设置指向 192.168.1.5。我在 /var/log/squid 中看到了该请求。到目前为止一切顺利,但不幸的是,Squid 不知何故无法将互联网“传送”给客户端。
我想我错过了最后一步,但我不知道那是什么。任何帮助都非常感谢。
情况:
┌──────────────────┐ ┌─────────────────────┐
│ Squid proxy │ │ │
│ 1 nic │◀─────────│ client │
│ │ │ │
└──────────────────┘ └─────────────────────┘
│
│
▼
┌──────────────────┐
│ server │
┌──────────┐ │ 192.168.1.1 │
│ INTERNET │───────▶│ does NAT │
└──────────┘ │ 2 nics │
└──────────────────┘
Squid 主机完全可以连接到互联网。主机的网络配置如下:
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
auto eth0
iface eth0 inet static
address 192.168.1.5
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 192.168.1.1
答案1
您能从 Squid 主机访问互联网吗(例如使用 curl 或类似的东西)?听起来来自 Squid 主机的路由不正确。专注于从 Squid 主机使用“curl”并解决其访问互联网的能力。
另外,您是否尝试过在 NAT 实例上使用任何规则来阻止除 squid 之外的主机访问互联网?