ICMP echo request包 成功发送,却收不到reply 的原因

我的解决方法可能有局限性,读者自己甄别,

这几天在和舍友研究ICMP flood,发现能够正常发送,在被攻击者的电脑(舍友攻击我,所以这里是我的电脑)上可以用wireshark看到,收到了很多


但是就是没有收到reply的包,只有request的包

在网上搜了一遍之后,无果,只好自己抓ping的包,慢慢分析

以下是分析结果:

舍友发的包,校验码算错了,郁闷,研究了大晚上发现是这个结果(我瞬间觉得自己的这篇文章质量下降了好多,o(︶︿︶)o 唉)

char temp[]="-------Hello ICMP World! By:yellowtail----";// ICMP数据
memcpy(buf,&data,sizeof(IcmpHeader));
memcpy(buf+sizeof(IcmpHeader),temp,sizeof(temp));
int datasize=sizeof(IcmpHeader)+sizeof(temp);
((IcmpHeader*)buf)->chksum=checksum((USHORT*)buf,datasize);



改了之后,能够成功收到reply包,这样攻击强度是不是大了一点呢?

之前被攻击者只是被动接收大量数据包,现在还要被动发送大量数据包,应该会更卡了些.哦也




另外如果你要发的对象和你不在一个局域网,以太头的目的MAC 填你的网关MAC就可以了,它会帮你转发的.

如果你填的是你要发的mac的话,会收到局域网内很多主机发给你的重定向包,舍友睡了,实验不了,今天白天再说,现在是2014年4月9日 01:19:13

你可能感兴趣的:(socket)