这次加载netfilter模块比上篇的helloworld能稍微难一点,但万变不离其宗,一些细节就不赘述,本文引用了这篇文章部分代码。内核是3.10版本。
1.编写http.c文件
#include <linux/netfilter.h>
#include <linux/init.h>
#include <linux/inet.h>
#include <linux/ip.h>
#include <uapi/linux/netfilter_ipv4.h>
unsigned int my_hookfn(unsigned int hooknum,
struct sk_buff *skb,
const struct net_device *in,
const struct net_device *out,
int (*okfn)(struct sk_buff *))
{
struct iphdr *iph = ip_hdr(skb);
printk(KERN_INFO"source