【发布时间】:2016-01-03 22:29:01
【问题描述】:
我搜索了很长时间,但现在只能获取 IP 并记录它们。
__be32 sip,dip;
if(skb){
struct sk_buff *sb = NULL;
sb = skb;
struct iphdr *iph;
iph = ip_hdr(sb);
sip = iph->saddr;
dip = iph->daddr;
printk("Packet for source address: %d.%d.%d.%d\n destination address: %d.%d.%d.%d\n ", NIPQUAD(sip), NIPQUAD(dip));
}
return NF_ACCEPT;
我尝试sb->data,但无法获得包数据之类的任何内容..
我只想删除包含这些数据的包,data.data == 25:3f:08:52:45:47:49:53:54:45:52:46:4d:4c:00:46:4d:4c:7c:48:53:00:46:4f:52:47:45:00:42:75:6e:67:65:65:43:6f:72:64,因为这些包可能来自某些攻击者..
我应该使用netfilter(Linux kernel) 吗?我无法更改程序的代码,所以我想通过 Centos 删除这些包..
【问题讨论】: