对ip6tables rule操作
来源:互联网 发布:造价工程师考试软件 编辑:程序博客网 时间:2024/06/08 19:38
#include "libip6tc.h"
int getRulePackets()
{struct ip6tc_handle *handle;
char *tables = "filter";
const char *error = NULL;
const char * chain = NULL;
struct ip6t_counters counters;
const char *pol = NULL;
const struct ip6t_entry* rule;
handle= ip6tc_init( tables );
/*
int ret = 0;
ret= xtables_init_all(&iptables_globals, NFPROTO_IPV6);
if(ret < 0 )
{
printf("initerror\n");
return-1;
}
*/
if(handle == NULL )
{
error= ip6tc_strerror(errno);
printf("iptc_initerror:%s\n",error);
return-1;
}
for(chain = ip6tc_first_chain(handle); chain; chain = ip6tc_next_chain(handle) )
{
printf("%s\t",chain);
pol= ip6tc_get_policy(chain,&counters,handle);
printf("%s\t",pol);
printf("%llu\t",counters.pcnt);//\u7ecf\u8fc7\u8be5\u94fe\u7684\u5305\u7684\u6570\u91cf
printf("%llu\n",counters.bcnt);//\u7ecf\u8fc7\u8be5\u94fe\u7684\u5b57\u8282\u6570
for(rule = ip6tc_first_rule(chain,handle); rule; rule = ip6tc_next_rule(rule,handle))
{
const char *target = NULL;
target= ip6tc_get_target(rule,handle);
printf("%s\t",target);
printf("%llu\t",rule->counters.pcnt);//\u547d\u4e2d\u8be5\u89c4\u5219\u7684\u5305\u6570
printf("%llu\t",rule->counters.bcnt);//\u547d\u4e2d\u8be5\u89c4\u5219\u7684\u5b57\u8282\u6570
struct protoent *pro = NULL;
pro= getprotobynumber(rule->ipv6.proto);
if(pro != NULL )
{
printf("%s\t",pro->p_name);
}
if(rule->ipv6.iniface[0] == '\0' )//\u8f93\u5165\u7f51\u7edc\u63a5\u53e3\u9ed8\u8ba4\u4e0d\u6307\u5b9a\u53ef\u4ee5\u901a\u8fc7-i\u6307\u5b9a\u5982 \u2013I ehh0
printf("any\t");
else
printf("%s\t",rule->ipv6.iniface);
if(rule->ipv6.outiface[0] == '\0' )//\u8f93\u51fa\u7f51\u7edc\u63a5\u53e3\u9ed8\u8ba4\u4e0d\u6307\u5b9a\u53ef\u4ee5\u901a\u8fc7-o \u6307\u5b9a
printf("any\t");
else
printf("%s\t",rule->ipv6.outiface);
char addr[128] = {0};
printf("%s\t",inet_ntop(AF_INET6,&(rule->ipv6.src),addr,sizeof(addr)));
printf("%s\t",inet_ntop(AF_INET6,&(rule->ipv6.dst),addr,sizeof(addr)));
}
}
return 0;
}
0 0
- 对ip6tables rule操作
- rule
- rule
- ip6tables -restore -h failed
- Ilog、Drools、Jess规则引擎的Rule Language 比对
- Ilog、Drools、Jess规则引擎的Rule Language 比对
- ip rule和ip route操作路由表
- ip6tables中nflog的使用
- iptables/ip6tables 手册简译
- Exception Rule
- Life rule!!!
- Horner rule
- C rule
- duiduipeng rule
- rule 规则
- sum rule
- My rule
- makefile rule
- IntelliJ IDEA 问题总结之二(待补充) —— 快捷键、主题样式、导出jar、sqlite
- Python_cmd的各种实现方法及优劣(subprocess.Popen, os.system和commands.getstatusoutput)
- oracle统计字符串中某个字符出现的次数详解
- Beanshell remove first 0
- Fixing java.net Local host name unknown error on Mac OS X
- 对ip6tables rule操作
- OkHttp –Android、Java应用中的 HTTP & SPDY 客户端库
- 培训经理辞职引发的讨论
- Libgdx中TextButton的一些思考
- 部署tomcat错误解决
- [LeetCode]Merge Sorted Array
- Java垃圾回收机制
- Ceilometer整体结构
- 设计模式---工厂模式