我有一个运行 Mikrotik RouterOS 的盒子,它被设置为执行透明的 Web 代理,如下所述这里。
简而言之,这意味着我有一个目标 NAT 防火墙规则,导致任何端口 80 流量被重定向到路由器上的端口 8080,该流量由 Mikrotik 本地 Web 代理接收。然后,本地 Web 代理代表客户端发出 Web 请求,在本例中是向父 Web 代理服务器发出请求(父 Web 代理服务器又发出真正的 Web 请求)。
我的问题是,这两部分过程将如何在流量信息(netflow)日志中报告?
查看记录的信息,我似乎看到的是这样的:
- 从客户端计算机(私有 IP 地址)到远程代理(8080)记录的一个流量
- 另一个从路由器到远程代理(8080)的流量被记录下来
客户端对端口 80 发出的原始请求未被记录。
我想编写代码来分析流量使用情况,因此我想确保如果我丢弃后者,我不会丢失信息。
答案1
您可以检查 HTTP 请求中传递的 URL。如果两个流之间的 URL 匹配,则流只是重复的,您可以简单地丢弃其中一个。正如您所说,第一个流对您更有意义,因为它会告诉客户端 IP。