您的位置:控制工程论坛网论坛 » 嵌入式系统 » 把Iptables移植到嵌入式Linux系统

nicebaby

nicebaby   |   当前状态:在线

总积分:415  2024年可用积分:0

注册时间: 2008-09-09

最后登录时间: 2011-08-09

空间 发短消息加为好友

把Iptables移植到嵌入式Linux系统

nicebaby  发表于 2008/11/2 14:24:25      1325 查看 0 回复  [上一主题]  [下一主题]

手机阅读

Linux下支持netfilter机制的配置工具就是iptables,它也就相当与一个应用程序,可以对netfilter进行配置(包过滤规则,NAT等等)。所以要实现netfilter(iptables)就要从两方面来着手:1)内核支持netfilter;2)用户层的iptables配置命令。 

  1、编译内核,支持netfilter

  在宿主机上进入Linux内核目录,配置所需的内核模块:

cd /usr/src/linux
make menuconfig

  选中如下内核选项:

General setup --->
[*] Sysctl support (在ROMFS文件系统中/proc/sys/net/ipv4/出现ip_forward)
Networking options --->
[*] Network packet filtering (replaces ipchains)
IP: Netfilter Configuration --->(全部选择即可)

  这样在内核中就选择支持了netfilter。接下来只需编译并生成内核映像文件并烧写到嵌入式系统即可。如果烧写后重起成功进入Linux,则说明新的支持netfiter的内核已经正常运行。(注意,这里的内核选项只是一些支持netfilter/iptables的选项。这里假设原有内核已支持嵌入式系统的相关硬件,并能在嵌入式平台上运行)。

  2、编译生成iptables命令

  iptables工具包可以免费从网上获得。下载iptables工具包后,进入下载目录,进行编译生成可执行文件,编译方法具体可以参考iptables目录下的INSTALL文件:

cd /root/iptables
make KERNEL_DIR = /usr/src/linux(指定内核目录)
make NO.SHARED_LIBS = 1(静态链接编译生成可执行文件)

  把生成的iptables可执行文件copy到ramdisk再下载到嵌入式系统中就可以运行。

  好了,重新启动板子后,就可以用iptables这个命令了。

1楼 0 0 回复