寻找谷歌不寻常的交通

我们是一家小型互联网提供商。 为了获得Internet访问,我们使用NAT(每个公共IP 10-20个用户)。 最近我们遇到了谷歌拦截服务(captcha和full block),我们无法find适合我们用户的解决scheme。 不幸的是,我们找不到Google的任何官方build议和指示,解释了ISPpipe理员如何解决问题。 我们设法find的所有可能的原因是我们的客户可能使用的阻塞和方法。 但我们希望有机会在全球范围内解决这个问题,使我们的客户免于自己处理这个问题。

第一个想法是捕获目标IP为google.com(和您的本地Google域)的用户的数据包。 如果用户PC上的某些内容泛滥Google,那么它们会生成很多数据包。

例:

# Find google.com IP $ host google.com google.com has address 216.58.209.206 # local google.com.ua has ip in the same network 216.58.209.0/24 # Capture 50k packets with google IP dst $ sudo tcpdump -i eth0 -nn dst net 216.58.209.0/24 -c 50000 > /tmp/dump.txt # Parse dump file and find top 10 users $ cat /tmp/dump.txt | awk '{print $3}' | awk -F '.' '{print $1"."$2"."$3"."$4}' | sort | uniq -c | sort -r -n | head 528 172.30.138.128 473 172.30.137.173 382 172.30.138.117 334 172.30.138.34 312 172.30.137.211 227 172.30.136.50 204 172.30.138.220 192 172.30.139.34 170 172.30.137.217 154 172.30.138.96 

但是这种方法不能正常工作。 它给随机的结果,似乎是一个正常的用户工作。 在论坛中,我发现Google系统有一个很难的不寻常的stream量检测algorithm的基础上,你在谷歌search什么。

也许有人解决了这个问题? 或者你知道如何解决? 我如何才能在Linux网关上find非常stream量的Google?

根据个人的经验,这是一个涉及来自单一IP的太多(合法与否)请求的问题。
这也发生在出口节点。
去单个地址(我知道,不太可能),甚至更好开始提供适当的IPv6连接,合法用户的问题将消失。