我使用sniffex.c作为我的出发点,并且我花了几个月的时间努力让数据包嗅探器以我想要的方式工作。这是一个很好的工具,用于提供网络中每台计算机的流量汇总概要,但是我发现自己希望获得有关入站流量来源的更多信息。如果我在样本入站数据包的src_ip上执行whois,大多数情况下我会收到Qwest Communications Company,LLC或AKAMAI TECHNOLOGIES INC拥有的主机的信息,这些主机并不真正向我提供我感兴趣的信息。数据包嗅探器 - 追溯到内容的起源地
在这一点上,我有兴趣跟踪数据来自哪里,如youtube或espn ......如何做到这一点?
反向dns查找听起来像我正在寻找的,但如果我采取src_ip,我收到了一个体面的数据块,并把它放在一个在线反向dns搜索表单,我所得到的是,它是由qwest拥有。
编辑#1:
OK,我现在有怎么问这个问题的一个更好的主意,这要归功于以下盖伊·哈里斯的回答。正如他所说,每个数据包中的ASCII数据应该有一个“主机:”行,这应该能够提供更直接的信息,说明这些数据的来源在更高层次上。现在我该如何获得这些数据?解析ascii文本是最好的方法,还是有现有的函数来获取这些数据?
编辑#2:
好,解析无论是有效载荷或头ASCII似乎是一个死胡同。我找到了非常有用的libpcap应用程序here的来源。该程序将以上所有内容打印到日志文件中。仔细查看这些数据,我发现很少数据包有“主机:”字段。显然只有TCP端口80的数据包,然后才是该系列中的第一个数据包。即使那样,我发现只有这个主机领域的人才能在我的网络上的一个盒子上由网络服务器提供服务。
因此,我现在要求完全不可能弄清楚许多不同网站的内容可能会缓存在单个主机上?
感谢您的回答。所以,如果你使用的是libpcap,并且你有一个数据包,那么从我有限的知识来看似乎不可能把这个数据包绑定到一个dns请求。我错了吗?标题看起来更有希望。你帮助我更好地制定了我的问题,我将编辑我的原始问题。 – nomadicME 2013-03-22 18:18:22
DNS请求*是*一个数据包,就像一个DNS响应一样。如果您的网络捕获既包含对IP地址的DNS请求,也包含对该IP地址的HTTP请求,原则上,您或程序可以看到HTTP请求中的IP地址可能已被该地址DNS请求。 – 2013-03-23 22:42:18
请参阅我的更新以回答您对问题的更新。实际上,一般问题是不可溶解的。 – 2013-03-23 22:50:34