Linux网络编程高手请指点一下!
最近我在编一个建立在网络层的包过滤防火墙,用到了一些常用的数据结构和常量但不知道包含在哪些头文件里,在哪里可以找到,请指点一下.数据结构有:
struct firewall_ops
struct device
struct sk_buff
struct iphdr
struct tcphdr
常量有:ETH_P_ARP,ETH_P_RARP,ETH_P_IP,SOL_ICMP,SOL_TCP,FW_ACCEPT等
请知道的指点一下,千万别笑我这个初学者啊,给点信心谢谢!
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
研究过内核源码的help me!
...
一点个人见解,不知道对不对:
包过滤最低也就是在网络层了吧,像iptables就可以做到的呀,不需要直接和内核打交道的.
我知道iptables是派这个用场的,问题是我这个作业就是要自己做一个程序并且用register_firewall登记到内核中去,作用等同于ipchians和iptables,不是简单的配置iptables了事的.
现在我找到了内核的一些基本头文件:
#include <linux/errno.h>;
#include <linux/module.h>;
#include <linux/config.h>;
#include <linux/skbuff.h>;
#include <linux/firewall.h>;
但是编译的时候说:warning:#warning Using kernel headers in userspace.
大家帮忙看看,我要怎么才能用这些头文件?