1#!/bin/bash 2# ------------------------------ 3 4# Clean up first. 5./unload_ap.sh 6./unload.sh 7./clean_log.sh 8 9# Load driver for AP mode. 10./ap.sh 11 12sleep 2 13 14# Check interface 15if [[ _$1 = _wlan* ]]; then 16 SSV_WLAN=$1 17else 18 SSV_WLAN=`./find_ssv_wlan` 19 20 if [[ _$SSV_WLAN != _wlan* ]]; then 21 echo "No SSV WLAN device found." 22 exit 1; 23 fi 24fi 25echo SSV device for AP mode is $SSV_WLAN 26 27# Stop network manager from handling WiFi 28nmcli nm wifi off 29sudo rfkill unblock wlan 30 31# Configure 32ifconfig $SSV_WLAN 192.168.33.1 netmask 255.255.255.0 33cp dhcpd.conf /tmp/dhcpd_$SSV_WLAN.conf 34dhcpd -cf /tmp/dhcpd_$SSV_WLAN.conf -pf /var/run/dhcp-server/dhcpd.pid $SSV_WLAN 35bash -c "echo 1 >/proc/sys/net/ipv4/ip_forward" 36iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE 37cat hostapd.conf.TKIP.template | sed -s s/HOSTAPD_IF/$SSV_WLAN/g > hostapd.conf 38 39trap handle_stop INT 40 41function handle_stop() { 42 nmcli nm wifi on 43 44 ./unload_ap.sh 45 ./unload.sh 46 47 echo AP mode stopped 48} 49 50hostapd hostapd.conf 51