2016-05-31 62 views
0

我目前正在开发一个使用jnetPcap(基本上是WinPcap的Java版本)的ICMP流量生成器。起初,我尝试在Windows提示符下使用ping命令,捕获已发送的数据包(我使用WireShark进行捕获),复制它的字节,在程序中使用这些字节构建相同的数据包,然后再发送一次。这工作很好,数据包已发送并收到回复。我可以用相同的ID发送100个数据包 - 没问题。更改IP标头中的标识字段

但是,当我试图改变ID字段,比如3039到3038,我不再收到服务器的回复。而且我不能总是使用相同的ID,因为即使它适用于单个网站,它也不适用于其他网站。

什么问题?我应该如何生成此ID?先谢谢你。

回答

0

好吧,好像我终于找到了解决方案!我遇到的问题是由于这样的事实造成的,即当您更改IP标头中的任何字段时,您总是需要重新计算它的校验和,而我完全忘记了这一点。现在我改变了它,一切都很顺利。