archlinux配置netfilter開發環境

前言php

    使了一段時間的你archlinux,發現本身真的愈來愈喜歡這種操做系統,我深深地體會到了大道至簡是什麼含義。netfilter是什麼維基百科和百度百科都有,我就很少說廢話了。linux

正文工具

    若是你使用pacman -S iptables安裝的iptable,恭喜你,最好是卸載掉使用源代碼安裝。我我的 在個人操做系統中找不到我要使用的頭文件,因此我果斷選擇了卸載,由源代碼安裝。測試

卸載iptables,使用命令:spa

pacman -Rn iptables操作系統

而後能夠下載iptables:http://www.net-security.org/software.php?id=4.net

個人在虛擬機中,我使用putty工具將源代碼傳到archlinux中。code

而後就是解壓,安裝:ip

./configureget

make 

make install

安裝完畢以後

便可在 /usr/local/include/libiptc目錄下看到頭文件,/usr/local/include/lib目錄下看到庫文件

下面就能夠進行代碼的測試工做了。

#include "stdio.h"
#include "errno.h"
#include "libiptc/libiptc.h"
#include "sys/types.h"

int main()
{
	const char* tables="filter";
	
	struct iptc_handle *handle;
	
	char* chain=NULL;
	
	handle = iptc_init(tables);

	if(handle == NULL)
	{
	}

	for(chain=iptc_first_chain(handle);chain;chain=iptc_next_chain(handle))
	{
		printf("%s\n",chain);
	}
	
	return 0;
}

而後開始編譯:

    gcc -o test -L/usr/local/lib -lip4tc iptables.c

編譯以後,可在當前目錄查看到可執行文件test

鏈接動態庫

    export LD_LIBRARY_PATH=/usr/local/lib

  接下來就能夠運行程序了

./test

運行程序便可打印出一下:

INPUT

FORWARD

OUTPUT

相關文章
相關標籤/搜索