Chinaunix
标题:
如何从内核里获取TCP数据包发送到用户空间,然后在用户空间处理
[打印本页]
作者:
zimang
时间:
2009-07-16 12:01
标题:
如何从内核里获取TCP数据包发送到用户空间,然后在用户空间处理
如何从内核里获取TCP数据包发送到用户空间,然后在用户空间处理,
netlink+netfilter(NF_IP_LOCAL_IN)会是一种方法吗?
谢谢先
作者:
beepbug
时间:
2009-07-16 19:05
为什么要这样做呢?
作者:
zimang
时间:
2009-07-17 10:08
标题:
回复 #2 beepbug 的帖子
在用户空间做TCP协议 以及其他的一些工作
[
本帖最后由 zimang 于 2009-7-17 10:11 编辑
]
作者:
Cyberman.Wu
时间:
2009-07-17 10:21
不知道你要做啥?是类似于抓包上来,还是什么?如果是复位包出来可以用PF_PACKET,如果要进行一些拦截处理不知道netfilter能否做到,FreeBSD的ipfw是可以的。
还有就是TUN/TAP,也可以把包导到用户空间。要说清楚你的具体需求,才能搞清楚用哪种方式更好。
作者:
zimang
时间:
2009-07-17 10:39
标题:
回复 #4 Cyberman.Wu 的帖子
在用户层实现tcp功能,因为要分析数据包里面的内容,还要处理一下数据段(插入或过滤一些内容) 就是进来的TCP数据包要直接到用户空间。
作者:
Cyberman.Wu
时间:
2009-07-25 15:14
你这个需求是要拦截吧?这样通常只能用防火墙一类的提供的机制可以办到,netfilter我不熟悉,不知道能不能设置一下就传到用户空间,不过它好像支持自己再开始一些东西吧?或者拿源代码自己改一下了。
作者:
cipher_ly
时间:
2013-04-15 15:08
提示:
作者被禁止或删除 内容自动屏蔽
欢迎光临 Chinaunix (http://bbs.chinaunix.net/)
Powered by Discuz! X3.2