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表的规则列表和统计信息
相关推荐
007php00723 分钟前
linux服务器上CentOS的yum和Ubuntu包管理工具apt区别与使用实战
linux·运维·服务器·ubuntu·centos·php·ai编程
djykkkkkk37 分钟前
ubuntu编译遇到的问题
linux·运维·ubuntu
qq_429856571 小时前
linux 查看服务是否开机自启动
linux·运维·服务器
7yewh2 小时前
Linux驱动开发 IIC I2C驱动 编写APP访问EEPROM AT24C02
linux·arm开发·驱动开发·嵌入式硬件·嵌入式
dessler2 小时前
Docker-Dockerfile讲解(三)
linux·运维·docker
KevinRay_3 小时前
命令行之巅:Linux Shell编程的至高艺术(中)
linux·运维·服务器·重定向·shell编程
程序员JerrySUN3 小时前
Yocto 项目 - 共享状态缓存 (Shared State Cache) 机制
linux·嵌入式硬件·物联网·缓存·系统架构
林农4 小时前
C05S16-MySQL高可用
linux·mysql·云计算
码中小白鼠4 小时前
Ubuntu系统部署Mysql8.0后设置不区分大小写
linux·mysql·ubuntu·adb
gz94564 小时前
Virtualbox安装ubuntu20虚拟机无法打开终端
java·linux·开发语言