nf_test_module.zip
大小:1.23KB
价格:10积分
下载量:0
评分:
5.0
上传者:riverrrrrrrr
更新日期:2025-09-22

nf_test_module.zip

资源文件列表(大概)

文件名
大小
nf_test_module/
-
nf_test_module/Makefile
157B
nf_test_module/nf_test.c
2.19KB

资源内容介绍

nf_test_module.zipnetfilter注册函数并使用案例
#include <linux/module.h>#include <linux/kernel.h>#include <linux/types.h>#include <linux/skbuff.h>#include <linux/ip.h>#include <linux/udp.h>#include <linux/tcp.h>#include <linux/netfilter.h>#include <linux/netfilter_ipv4.h>MODULE_LICENSE("GPLv3");MODULE_AUTHOR("SHI");MODULE_DESCRIPTION("Netfliter test");static unsigned intnf_test_in_hook(unsigned int hook, struct sk_buff *skb, const struct net_device *in, const struct net_device *out, int (*okfn)(struct sk_buff*));static struct nf_hook_ops nf_test_ops[] __read_mostly = { { .hook = nf_test_in_hook, .owner = THIS_MODULE, .pf = NFPROTO_IPV4, .hooknum = NF_INET_LOCAL_IN, .priority = NF_IP_PRI_FIRST, },}; void hdr_dump(struct ethhdr *ehdr) { printk("[MAC_DES:%x,%x,%x,%x,%x,%x" "MAC_SRC: %x,%x,%x,%x,%x,%x Prot:%x]\n", ehdr->h_dest[0],ehdr->h_dest[1],ehdr->h_dest[2],ehdr->h_dest[3], ehdr->h_dest[4],ehdr->h_dest[5],ehdr->h_source[0],ehdr->h_source[1], ehdr->h_source[2],ehdr->h_source[3],ehdr->h_source[4], ehdr->h_source[5],ehdr->h_proto);}#define NIPQUAD(addr) \((unsigned char *)&addr)[0], \((unsigned char *)&addr)[1], \((unsigned char *)&addr)[2], \((unsigned char *)&addr)[3]#define NIPQUAD_FMT "%u.%u.%u.%u"static unsigned intnf_test_in_hook(unsigned int hook, struct sk_buff *skb, const struct net_device *in, const struct net_device *out, int (*okfn)(struct sk_buff*)) { struct ethhdr *eth_header; struct iphdr *ip_header; eth_header = (struct ethhdr *)(skb_mac_header(skb)); ip_header = (struct iphdr *)(skb_network_header(skb)); hdr_dump(eth_header); printk("src IP:'"NIPQUAD_FMT"', dst IP:'"NIPQUAD_FMT"' \n", NIPQUAD(ip_header->saddr), NIPQUAD(ip_header->daddr)); return NF_ACCEPT;}static int __init init_nf_test(void) { int ret; ret = nf_register_hooks(nf_test_ops, ARRAY_SIZE(nf_test_ops)); if (ret < 0) { printk("register nf hook fail\n"); return ret; } printk(KERN_NOTICE "register nf test hook\n"); return 0;}static void __exit exit_nf_test(void) { nf_unregister_hooks(nf_test_ops, ARRAY_SIZE(nf_test_ops));}module_init(init_nf_test);module_exit(exit_nf_test);

用户评论 (0)

发表评论

captcha

相关资源

哈希校验工具-计算和对比文件的 MD5、SHA1 和 SHA256 哈希值

这个哈希校验工具是一款高效且易于使用的应用,能够计算和对比文件的 MD5、SHA1 和 SHA256 哈希值。通过验证文件的哈希值,用户可以确保数据的完整性和一致性,防止文件在传输或存储过程中受到损坏或篡改。该工具适合开发者、系统管理员及普通用户的日常文件管理需求,提供直观的界面,方便用户快速查看和比较单个文件的哈希值。

4.74MB49积分

基于SpringBoot+Vue.JS开发的大学生助学贷款管理系统 JAVA毕业设计 源码+数据库+启动教程

项目启动教程:https://www.bilibili.com/video/BV11ktveuE2d大学生助学贷款管理系统是一个为高校学生提供贷款服务的在线平台,旨在帮助经济困难的学生顺利完成学业。该系统采用Vue.js和SpringBoot框架进行开发,前端使用Vue.js构建用户友好的界面,实现数据的动态展示和交互,后端则利用SpringBoot框架提供稳定高效的服务端逻辑处理。系统主要功能包括学生信息管理、贷款申请、审批流程、还款管理等。学生可以通过系统提交贷款申请,上传相关证明材料,系统自动进行初步审核。审核通过后,贷款信息将提交给审批人员进行复审。审批通过的学生将获得贷款,系统会记录贷款发放和还款情况。此外,系统还提供贷款统计报表功能,帮助管理人员了解贷款发放和回收情况,确保贷款资金的合理使用。整个系统设计注重用户体验和数据安全,确保操作的便捷性和信息的准确性。

8.75MB38积分

Fake Fucker.zip

Fake Fucker.zip

6.64MB17积分

连接linux的软件,可以用

连接linux的软件,可以用

49.47MB40积分