zoukankan      html  css  js  c++  java
  • 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

    解压:

    配置:./configure --host=arm-hisiv400-linux --prefix=/home/liuzhengwu/share/Source/App/iptables/arm-linux/ --enable-static --disable-shared --with-ksource=/home/liuzhengwu/share/Source/Kernel/Hi3516d/linux-3.4.35

    编译:make -j4

      如果编译报错:

      

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

    安装:make install

    拷贝给开发板:tar czf iptables_install.tgz arm-linux/

    解压到相应文件夹bin/ lib/ sbin/即可

  • 相关阅读:
    Common Lisp 参数传递的几种形式
    EF架构~基于EF数据层的实现
    标准架构~业务层到底是否应该关注数据持久化的方式
    Redis学习笔记~Redis主从服务器,读写分离
    Redis学习笔记~是时候为Redis实现一个仓储了,RedisRepository来了
    MVVM架构~knockoutjs系列之数组的$index和$data
    【Oracle】-【sqlplus / as sysdba登录报错问题】-新用户使用sqlplus / as sysdba登录报错
    Android---App Widget(一)
    Mit 分布式系统导论,Distributed Systems ,lab1 -lab6 总结,实验一到实验六总结
    GDAL切割重采样遥感图像
  • 原文地址:https://www.cnblogs.com/pokerface/p/7040776.html
Copyright © 2011-2022 走看看