Embeded linux之移植iptables

一、内核环境:

linux-3.4.35

-*- Networking support  --->

  Networking options  --->

    [*] Network packet filtering framework (Netfilter)  --->

      IP: Netfilter Configuration  --->

        <*> IP tables support (required for filtering/masq/NAT) //iptables
        <*> "ah" match support //允许对IPSec包头的AH字段进行匹配
        <*> "ecn" match support //允许对TCP/IP包头的ECN(Explicit Congestion Notification)字段进行匹配.ECN是一种显式拥塞通知技术,它不但要求路由器支持而且要求端到端主机的支持,其基本思想是当路由器发生早期拥塞时不是丢弃包而是尽量对包进行标记,接收方接到带有ECN提示的包时,通知发送方网络即将发生拥塞,也就是它通过对包的标记提示TCP源即将发生拥塞,从而引发拥塞避免算法
        <*> "rpfilter" reverse path filter match support //rpfilter反向路径过滤
        <*> "ttl" match support //允许对ip包头的TTL(生存期)字段进行匹配
        <*> Packet filtering //定义filter表以允许对包进行过滤
        <*> REJECT target support //允许返回一个ICMP错误而不是简单的丢弃包
        [*] Force socket error when rejecting with icmp*
        <*> ULOG target support //透过netlink socket将符合条件的封包交给用户空间的ulogd守护进程.反对使用该选项,因为它已经被NETFILTER_NETLINK_LOG代替
        <*> Packet mangling //在iptables中启用mangle表以便对包进行各种修改,常用于改变包的路由
        <*> ECN target support
        <*> "TTL" target support
        <*> raw table support (required for NOTRACK/TRACE) //在iptables中添加一个'raw'表,该表在netfilter框架中非常靠前,并在PREROUTING和OUTPUT链上有钩子,从而可以对收到的数据包在连接跟踪前进行处理

二、软件移植

基于:iptables-1.4.22.tar.bz2

解压:tar xvf iptables-1.4.22.tar.bz2

配置:./configure --host=arm-hisiv400-linux --enable-static --disable-shared --prefix=/home/liuzhengwu/share/Source/App/iptables/iptables-1.4.12/_install --disable-ipv6 --disable-largefile

编译:make -j4

  如果编译报错:

  

  解决方法:sed  -i  '/if_packet/i#define __aligned_u64 __u64 __attribute__((aligned(8)))'    extensions/libxt_pkttype.c

安装:make install

去符号表:arm-hisiv400-linux-strip _install/sbin/xtables-multi

拷贝给开发板:mv _install/sbin/xtables-multi /开发板/rootfs/usr/sbin/iptables

//---------------------------------------------------------------------------------------------------------------------//

基于:iptables-1.6.1.tar.bz2

解压:tar xvf iptables-1.6.1.tar.bz2

配置:./configure --host=arm-hi3516cv300-linux --enable-static --disable-shared --prefix=/home/liuzhengwu/share/Source/App/iptables/iptables-1.6.1/_install --disable-ipv6 --disable-largefile --disable-nftables

编译:make -j4

安装:make install

去符号表:arm-hi3516cv300-linux-strip _install/sbin/xtables-multi

拷贝给开发板:mv _install/sbin/xtables-multi /开发板/rootfs/usr/sbin/iptables

 

 

转载于:https://www.cnblogs.com/pokerface/p/7040775.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值