networking - 将代理转发到 WLAN 接入点的网关

标签 networking proxy wifi

在我们的网络中,代理服务器用于为所有客户端(都是 Windows XP 计算机)提供访问 Internet 的权限。现在,我们想建立一个无线局域网,让人们可以将自己的手机、电脑等连接到互联网上。然而,如果我们只是将无线接入点连接到我们的网络,每个人都必须在他们的设备上配置代理服务器。 我该怎么做,WLAN 路由器可以充当使用代理服务器的互联网网关?

最佳答案

您可以将所有发往端口 80 的流量 NAT 到代理机器。这就是所谓的强制拦截 代理。

例如,如果您有一个 RouterOS 路由器,您只需添加一条规则

/ip firewall nat add action=dst-nat chain=dstnat disabled=no dst-port=80 protocol=tcp to-addresses=<proxy IP address>

如果您代理除 HTTP 之外的其他协议(protocol),您会为它们更改端口做同样的事情。

许多代理解决方案可以在拦截模式下运行(例如,您的机器有两个网络接口(interface),可以过滤所有通过的流量)。参见 this tutorial用于使用 Squid 进行设置。

否则,如果您已经有代理服务器,则可以通过在接入点和您的网络之间放置路由器或运行路由软件的服务器来使用上述解决方案,例如 Vyatta 或 Mikrotik RouterOS(商业但非常强大),一些开源/免费软件路由器/防火墙分布(pfSense,Openwall,m0n0wall,...)或者甚至是普通的 OpenBSD(带 pf 防火墙)/Linux(带 iptables)来达到预期的效果。

一旦您获得直通路由,设置代理 NAT 应该会非常简单,如上所述。

您应该考虑在您的接入点连接到的路由器上应用此设置,因为它可以省去设置新机器的麻烦。

关于networking - 将代理转发到 WLAN 接入点的网关,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10367712/

相关文章:

c++ - 如何使用Wireshark帮助创建协议(protocol)模糊测试框架?

iphone - 如何在运行时(以编程方式)在 iPhone 应用程序中切换 Wi-Fi 网络

python - 通过代理的 DNS?

proxy - 代理感知的定义是什么

android - 如何以编程方式处理 WiFi 到移动网络的切换?

ios - 在 iOS 中以编程方式连接或检测到某个 WiFi?

networking - 消息中心号码、SMSC、ESME、SMPP

c - 在同一 C 程序中的两个线程之间发送 UDP 消息 (Linux)

apache - 如何让 Apache 将某些请求复制到另一个网络服务器?

nginx - 使用 Nginx 作为代理来防止通过 JavaScript 客户端在 ElasticSearch 上创建/更新/删除操作