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表的规则列表和统计信息
相关推荐
chlk1231 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑1 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件1 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI2 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
十日十行3 天前
Linux和window共享文件夹
linux
木心月转码ing3 天前
WSL+Cpp开发环境配置
linux
崔小汤呀4 天前
最全的docker安装笔记,包含CentOS和Ubuntu
linux·后端
何中应4 天前
vi编辑器使用
linux·后端·操作系统