- install hostapd
apt install hostapd
- configure hostapd
/etc/hostapd/hostapd.conf
# the interface used by the AP
interface=wlan0
# bridge
bridge=br0
# "g" simply means 2.4GHz band
#hw_mode=g
# the channel to use
#channel=5
# "a" simply means 5Ghz
hw_mode=a
# the channel to use
# run "iw list", that should give a detail report with various frequencies and channels that can be used
# select an appropriate channel from that that is legal in your country/context
channel=36
ieee80211ac=1
# limit the frequencies used to those allowed in the country
#ieee80211d=1
# the country code
#country_code=US
# 802.11n support
ieee80211n=1
# QoS support, also required for full speed on 802.11n/ac/ax
wmm_enabled=1
# the name of the AP
ssid=yourap_ssid
# 1=wpa, 2=wep, 3=both
auth_algs=1
# WPA2 only
wpa=2
wpa_key_mgmt=WPA-PSK
rsn_pairwise=CCMP
wpa_passphrase=your_wifi_passphrase_min_8_char
- enable hostapd
systemctl enable hostapd.service
note:
-
there is a bridge br0 that connects the ethernet interface end0 and wlan0.
The bridge is configured outside this file independently.
one possible config is to setup a bridge br0 that place both the wlan0 and end0 interfaces on the bridge. note hostapd will patch wlan0 into the bridge br0, so what needs to be configured onto the bridge is only end0 the ethernet interface. that could be done e.g. using network manager.note and warning you need to connect to the using a usb-uart (serial) dongle to the 'debug pins' using a terminal app e.g. https://www.youtube.com/watch?v=UpVMO7gbnYM
if you don't you may be locked out while messing with the network configuration.e.g.
nmcli con add connection.id bridge type bridge ifname br0 nmcli con add connection.id br-eth type bridge-slave ifname end0 master br0 nmcli con down "Wired connection 1" nmcli con del "Wired connection 1" #this is for dynamic (dhcp IP address) #nmcli c modify bridge ipv4.method auto #this is for fixed ip address, and assume that your gateway router is at 192.168.1.1 nmcli c modify bridge ipv4.method manual ipv4.addresses 192.168.1.2/24 ipv4.gateway 192.168.1.1
-
disable wpa_supplicant
systemctl stop wpa_supplicant.service systemctl disable wpa_supplicant.service
and reboot (preferably)
-
If network manager is managing wlan0, to use hostapd you may need to unmanage it. e.g. create a file /etc/NetworkManager/conf.d/99-unmanaged-devices.conf
[keyfile] unmanaged-devices=interface-name:wlan0
and reboot, or restart network manager
-
dhcpd if needed needs to be installed and configured separately
-
the same goes with routing / NAT etc if those are needed, those need to be configured separately