1

我是网络编程的新手,所以请原谅我的任何错误。

我正在编写一个简单的嗅探器,它应该只检测用户请求的网站的 URL。我正在使用 pcap.net,我能够捕获 http 数据包(使用 tcp 端口 80 过滤器)并从中检索数据。我不能做的是为导致许多 http 数据包到来的请求获取单个 URI。

例如,1. 用户(从浏览器)请求 www.website.com 2. 许多 http 响应来了,其中一个是 www.website.com 的 text/html 3. www.website.com 包含来自其他 html 的资源页面,来自其他主机的许多其他数据包即将到来。

有没有办法忽略资源中的数据包?我是否必须进行一些 tcp 会话重建?我已经在谷歌上搜索了 2 天,但找不到任何有用的东西,所以请帮忙。

4

1 回答 1

0

可以识别来自其​​他主机的 HTTP 响应,因为它们可能来自不同的 IP,而不是请求发送到的 IP。

即使没有完整的 TCP 重建,您也可以通过查看 IP 和 TCP 端口来匹配 HTTP 请求和响应。

但是,如果您在同一个 TCP 会话中有多个 HTTP 请求,则需要进行 TCP 重构以区分不同的请求和响应。

于 2012-02-10T11:00:52.243 回答