前两天买了一块orangepi one开发板,目的是做个局域网共享目录,具体共享协议用samba;这块板子有两个网卡,一个有线一个无线;有线主要用来ssh登陆调试,修改配置。
首先下载armbian的镜像,烧写到SD卡中,上电用SD卡启动板子,用网线直连路由器,这样便可知道DHCP获取到的IP,之后便可用ssh登陆板子做一些配置了;armbian初始化用户名和密码为root,1234.
要顺利的配置下去,要确保路由器能连上网;以下进入正题。
一、软件安装:
apt-get install hostapd udhcpd #hostapd 是一个用户态用于AP和认证服务器的守护进程,udhcp即dhcp程序,用于让连接板子wifi的设备动态获取ip。
二、配置修改:
1、修改dhcp配置文件 vi /etc/udhcpd.conf
a、修改dhcp地址池 我配置的wifi ip为192.168.30.1,所以dhcp可以获取的IP为以下范围
# The start and end of the IP lease block start 192.168.30.2 #default: 192.168.0.20 end 192.168.30.254 #default: 192.168.0.254
b、#remaining yes 这一行去掉注释
c、interface eth0 改为 interface wlan0
d、修改修改opt router为192.168.30.1 ,即路由地址
2、修改dhcp脚步 vi /etc/default/udhcpd
注释掉DHCPD_ENABLED="no"
3、设置wlan0配置为静态IP地址 ifconfig wlan0 192.168.30.1
4、vi /etc/network/interfaces 末尾追加以下内容
allow-hotplug eth0 iface wlan0 inet static address 192.168.30.1 netmask 255.255.255.0
up iptables-restore < /etc/iptables.ipv4.nat
5、修改wifi AP配置文件 vi /etc/hostapd.conf
备份原文件,该当前文件内容为
interface=wlan0 driver=nl80211 ssid=NO INTERNET #要显示的wifi名 hw_mode=g channel=6 macaddr_acl=0 auth_algs=1 ignore_broadcast_ssid=0 wpa=2 wpa_passphrase=zryaimtt #wifi密码,不少于8位 wpa_key_mgmt=WPA-PSK wpa_pairwise=TKIP rsn_pairwise=CCMP
6、修改AP服务脚本 vi /etc/default/hostapd
取消注释DAEMON_CONF="/etc/hostapd.conf"
7、配置NAT,etho数据转发到wlan0,这样如果板子直连路由器,wifi热点是可以访问网络的。
shell下输入 sh -c "echo 1 > /proc/sys/net/ipv4/ip_forward"
8、修改nat配置文件 vi /etc/sysctl.conf 取消注释net.ipv4.ip_forward=1
9、配置IPtable,shell下依次输入
iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
iptables -A FORWARD -i eth0 -o wlan0 -m state --state RELATED,ESTABLISHED -j ACCEPT
iptables -A FORWARD -i wlan0 -o eth0 -j ACCEPT
sh -c "iptables-save > /etc/iptables.ipv4.nat"
10、启动服务