当前位置:  技术问答>linux和unix

跪求解决嗅探问题

    来源: 互联网  发布时间:2016-01-23

    本文导语:  ...我自己网上找了个代码,,..用来分析有所经过网卡的IP数据包,, 但不知道怎么的老是收不到包,就是在read那里阻塞住了,,,,,,,,很奇怪,搞了一天了...郁闷死了,,= =我用freebsd的,,,,,,....先谢谢了... 代码如下: #define INTERFACE ...

...我自己网上找了个代码,,..用来分析有所经过网卡的IP数据包,,
但不知道怎么的老是收不到包,就是在read那里阻塞住了,,,,,,,,很奇怪,搞了一天了...郁闷死了,,= =我用freebsd的,,,,,,....先谢谢了...
代码如下:
#define INTERFACE "vr0" 

int bytes_recieved = 0;

int Open_Raw_Socket(void);
int Set_Promisc(char *interface, int sock);
static void
sig_alrm(int signo)
{
printf("alrm.bytes_recieved :%d...n", bytes_recieved);
alarm(2);
}


int main() 
{

int sock, bytes_recieved;
char buffer[2048];
memset(buffer, 0, 2048);

struct ip *iptemp;
struct tcphdr *tcptemp;

sock = Open_Raw_Socket();
Set_Promisc(INTERFACE, sock);

#if 1
/*alarm time*/
if (signal(SIGALRM, sig_alrm) == SIG_ERR)
{
exit(1);
}

alarm(2);
#endif

while(1)
{
printf("waiting data:n");
bytes_recieved = read(sock, buffer,  sizeof(buffer));


//printf("recived %dn", bytes_recieved);

if(bytes_recieved ip_p == 6)
  {
printf("IP header length :::%dn", iptemp->ip_hl);
printf("Protocol :::%dn", iptemp->ip_p);
tcptemp = (struct tcphdr *)(buffer + (4*iptemp->ip_len));
printf("Source port :::%dn", ntohs(tcptemp->th_sport));
printf("Dest port :::%dn", ntohs(tcptemp->th_dport)); 
}
#endif

}
}

int Open_Raw_Socket(void) 
{
int sock;
if((sock = socket(PF_INET, SOCK_RAW, 0)) 

    
 
 

您可能感兴趣的文章:

 
本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • secureCRT下Linux终端汉字乱码解决方法
  • VS2005解决方案管理器中不显示解决方案节点的解决办法
  • 修改配置真正解决php文件上传大小限制问题(nginx+php)
  • sqlserver iis7站长之家
  • 修改配置真正解决php文件上传大小限制问题(apache+php)
  • 解决 select 挡住div的解决方法
  • window.onload事件覆盖掉body onload事件(window.onload和html body onload事件冲突)解决办法
  • 奇怪,怎么“已解决”问题只有4页(10/17日之后的),以前的已解决问题到哪里看?
  • sharepoint 2010中item.Update()和item.SystemUpdate 修改数据版本问题解决
  • 解决!解决!求助如何安装多系统!
  • andriod中UIScrollView无法正常滚动的解决方法
  • 解决多级索引速度慢的问题可否像解决多级页表那样使用TLB?
  • 错误:将'const x'作为'x'的'this'实参时丢弃了类型限定问题解决
  • Liunx命令tar压缩出现如下错误该怎么解决?急需解决!感谢
  • vs2010下禁用vmware的方法以及解决vmware插件导致vs2010变慢的问题
  • 求数据库解决方案===求数据库解决方案
  • windows server2008上PowerBuilder程序系统错误解决方法
  • MYSQL安装时解决要输入current root password的解决方法
  • Linux/CentOS下的CST和UTC时间的区别以及不一致的解决方法
  • 解决oracle用户连接失败的解决方法
  • Linux下时钟同步问题:Clock skew detected原因分析及解决方法
  • 呵呵,前段时间Ubuntu服务器版的问题总算解决了,解决方法就是重新安装桌面版-_-!


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3