LoveUnix » 编程开发 & Rational » 使用SOCK_RAW时的SOCKET编程的问题
让LU留住您的每

一天 让LU博客留住您的每一天
2007-3-23 19:51 liw
使用SOCK_RAW时的SOCKET编程的问题

一个服务器程序,创建了两个SOCKET套接字,一个时普通的UDP套接字,一个是用SOCK_RAW创建的SCTP(132)协议的套接字;
在BIND了通配地址INADDR_ANY后,进入无限循环使用FD_ZERO, FD_SET设置了读描写字符集,然后调用SELECT,并用FD_ISSET判断返回值。

目前的情况是:
对于UDP消息能够接正常接受,并SELECT出来;
如果是SCTP消息,当客户端和服务器程序在同一台PC上的时候,可以SELECT出来,并且通过FD_ISSET判断,但是,如果客户端在其他机器上,则SELECT返回值为0;使用ETHEREAL抓包,能够发现网口有收到这些包,而且在抓包工具中认出了是SCTP包,为什么服务器程序SELECT不到该包了?

谢谢各位大侠了

2007-3-28 22:39 99大话王
SOCK_RAW
是不是还需要设置网卡为混杂模式?俺不清楚
建议你上google搜索
SOCK_RAW+混杂模式

页: [1]


Powered by Discuz! Archiver 5.5.0  © 2001-2006 Comsenz Inc.