嵌入式linux开启无线热点模式(AP),联机设备通过 wifi 热点访问外网。
一、内核和文件系统。
1、确认已移植好了hostapd。
2、确认文件系统中已移植好了iptables。
iptables编译:
./configure --host=arm-arago-linux-gnueabi --prefix=/root/335x/localcode/iptables/install --disable-nftables --with-ksource=/root/335x/localcode/kernel-3.2.0 --enable-static --disable-sharedmakemake install
3、内核对iptables的支持,配置如下。
[*] Networking support --->Networking options --->[*] Network packet filtering framework (Netfilter) --->Core Netfilter Configuration --->(全部选上)IP: Netfilter Configuration ---> (全部选上)
二、WIFI热点相关文件配置。
1、配置文件hostapd.conf中,确认热点名称和密码。
2、配置文件dhcpd.conf中,修改dhcp相关参数。
mkdir -p /var/db
创建空文件/var/db/dhcpd.leases
touch /var/db/dhcpd.leases
二、WIFI热点连接外网命令。
1、开启网口设置,非固定IP,自动分配IP。
ifconfig eth0 upudhcpc -i eth0
2、开启 wlan0 设备,设置相关参数等。
ifconfig wlan0 upifconfig wlan0 10.5.5.1 netmask 255.255.255.0
3、打开 IP 转发模式。
echo 1 > /proc/sys/net/ipv4/ip_forward
4、启用iptables伪装ip。
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
5、设置网卡的混杂模式。
root@ms:~# ifconfig wlan0 promisc[ 309.997884] device wlan0 entered promiscuous mode
6、开启热点。
dhcpd -cf /etc/dhcpd.conf wlan0 &hostapd /etc/hostapd.conf -B
参考:
嵌入式linux 4G 软路由共享网络_justgg的专栏-CSDN博客
基于嵌入式Linux的无线路由器设计——Bridged Adapter网桥模式_Biao-CSDN博客_基于linux路由器
基于嵌入式linux路由转发功能的实现 - Sanz - 博客园