LinuxSir.cn,穿越时空的Linuxsir!

 找回密码
 注册
搜索
热搜: shell linux mysql
查看: 763|回复: 2

【求助】一直想不通的问题,请各位大大指教

[复制链接]
发表于 2005-5-25 20:40:36 | 显示全部楼层 |阅读模式
在内核中,linux内核中网络部分的处理都是一层扣一层,将数据包向上传递的,然后在最上面给出socket这个应用编程接口。
但是有没有办法从其中一层,比如网络协议层开始使用它们向上提供的接口进行编程处理呢,相当与在上面再写个类socket层。
或者从更下面的层开始写起,接管linux接下去的工作。。。
如果可以的话,那是不是要重新编译内核,改写源代码的,还是有现成的函数接口可以使用处理的?
请各位指教,感激不尽。。。。
发表于 2005-5-25 21:16:43 | 显示全部楼层
不是有raw socket吗?哪一层都可以随便用。可以参考我那个tcp端口扫描的贴子,不过不知道沉到第几页去了……
回复 支持 反对

使用道具 举报

 楼主| 发表于 2005-5-26 18:27:44 | 显示全部楼层
raw socket的作用主要在三个方面:
1.通过raw socket来接受发向本机的ICMP,IGMP协议包,或者用来发送这些协议包.
2.接受发向本机的但TCP/IP栈不能够处理的IP包.
3.用来发送一些自己制定源地址特殊作用的IP包(自己写IP头,TCP头等等)  

跟我的要求有区别的吧
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

快速回复 返回顶部 返回列表