2013-04-29 62 views
0

我找到了一个关于使用netfilter和libipq库来拦截IPv6数据包的例子。无法创建netlink套接字:不支持协议

它开始通过声明和创建ipq_handle结构:

struct ipq_handle *h; 
h = ipq_create_handle(0, NFPROTO_IPV6); 
if (!h) die(h); 

的相应的模具()函数是像下面

static void die(struct ipq_handle *h) 
ipq_error("Passer"); 
ipq_destroy_handle(h); 
exit(1); 

但是,该程序未能正常运行产生以下内容:

传球者:无法创建netlink套接字:协议不支持

任何人都知道问题的可能原因?

+0

您是否在操作系统中启用了IPv6? – 2013-04-29 16:25:13

+0

明显的答案:该版本不支持IPv6? – 2013-04-29 17:06:49

+0

我在我的虚拟机上使用Ubuntu 12.04。我猜IPv6是默认启用的。实际上,我配置了全球IPv6地址,并在尝试使用netlink套接字之前管理发送IPv6 UDP套接字! – Mouad 2013-04-30 07:48:30

回答