iptables交叉编译(Hisiav300平台)

参考文章:https://blog.csdn.net/Bgm_Nilbb/article/details/135714738

https://bbs.archlinux.org/viewtopic.php?pid=1701065

1、libmnl 交叉编译

c 复制代码
tar xvf libmnl-1.0.5.tar.bz2
sudo chmod 777 -R libmnl-1.0.5
cd libmnl-1.0.5
mkdir _install
//host和CC需要修改成自己的,其他版本可能需要先执行autogen.sh脚本
./configure --host=arm-himix410-linux CC=arm-himix410-linux-gcc LDFLAGS=-static --prefix=$PWD/_install
make 
make install

2、libnftnl交叉编译

c 复制代码
tar xvf libnftnl-1.2.6.tar.xz
sudo chmod 777 -R libnftnl-1.2.6
cd libnftnl-1.2.6
mkdir _install
//PKG_CONFIG_PATH为libmnl的产物路径libmnl-1.0.5/_install/lib/pkgconfig
./configure --host=arm-himix410-linux CC=arm-himix410-linux-gcc  \
		LDFLAGS=-static --prefix=$PWD/_install \
		PKG_CONFIG_PATH=/home/johan/share/Hi3516CV500/wifi/iptables_build/libmnl-1.0.5/_install/lib/pkgconfig
make
make install

3、iptables交叉编译

c 复制代码
tar xvf iptables-1.8.9.tar.xz
sudo chmod 777 -R iptables-1.8.9
cd iptables-1.8.9/
mkdir _install
./autogen.sh
//PKG_CONFIG_PATH中添加libmnl和libnftnl产物的pkgconfig路径--也可直接加在makefile中
./configure --host=arm-himix410-linux CC=arm-himix410-linux-gcc --enable-static \
	--disable-shared --prefix=$PWD/__install --disable-ipv6 --disable-largefile \
	PKG_CONFIG_PATH="/home/johan/share/Hi3516CV500/wifi/iptables_build/libmnl-1.0.5/_install/lib/pkgconfig:/home/johan/share/Hi3516CV500/wifi/iptables_build/libnftnl-1.2.6/_install/lib/pkgconfig"
make
make install

4、使用iptables

c 复制代码
#配置启用NAT转发规则 -o配置上行口即sta使用的网卡
1. iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE 
2. iptables -A FORWARD -i wlan0 -o wlan1 -m state --state RELATED,ESTABLISHED -j ACCEPT
3. iptables -A FORWARD -i wlan1 -o wlan0 -j ACCEPT
4. iptables -nvL -tnat   #查看NAT表的规则列表和统计信息
相关推荐
不吃土豆的马铃薯6 分钟前
Socket 网络编程实战教程
linux·服务器·开发语言·网络·c++·算法
零号全栈寒江独钓12 分钟前
c++跨平台实现日志重定向
linux·c++·windows
爱莉希雅&&&26 分钟前
Zabbix监控初步搭建
linux·运维·数据库·mysql·zabbix
叠叠乐27 分钟前
红米redmi k90 pro max alsc 冠军版刷TWRP
linux
oioihoii36 分钟前
CentOS 7单机部署Elasticsearch:这些坑和关键配置,生产环境踩过才知道
linux·elasticsearch·centos
愿天垂怜1 小时前
【C++脚手架】gtest 单元测试库的介绍与使用
linux·服务器·c++·gitee·前端框架·gtest
农民小飞侠2 小时前
SandboxFusion搭建教程
linux·ubuntu
晚风吹红霞2 小时前
Vim编辑器从入门到熟练 —— 三种模式与常用命令详解
linux·编辑器·vim
蚰蜒螟3 小时前
从mkdir命令到磁盘:Linux内核目录创建过程深度解析
linux·运维·数据库
coward913 小时前
Linux内核驱动初始化流程认识(关于late_initcall和modul_init驱动初始化宏差异)
linux·嵌入式硬件