How to setup the Wi-Fi working on STA+AP mode at the same time.
Configure wlan0
to STA
mode, and wlan1
to AP
mode.
Setup wlan1
as a hotspot.
For example, the following commands will create AP configuration named Hostspot
on interface wlan1
, with SSID khadas_ap_2.4G
, 2.4GHz
band, channel 1
, WPA2-PSK
security, CCMP encryption
and passphrase 12345678
.
sudo nmcli con add type wifi ifname wlan1 mode ap con-name Hostspot ssid khadas_ap_2.4G sudo nmcli con modify Hostspot 802-11-wireless.band bg sudo nmcli con modify Hostspot 802-11-wireless.channel 1 sudo nmcli con modify Hostspot 802-11-wireless-security.key-mgmt wpa-psk sudo nmcli con modify Hostspot 802-11-wireless-security.proto rsn sudo nmcli con modify Hostspot 802-11-wireless-security.group ccmp sudo nmcli con modify Hostspot 802-11-wireless-security.pairwise ccmp sudo nmcli con modify Hostspot 802-11-wireless-security.psk 12345678 sudo nmcli con modify Hostspot ipv4.method shared sudo nmcli con up Hostspot
For example, the following commands will create AP configuration named Hostspot
on interface wlan1
, with SSID khadas_ap_5G
, 5GHz
band, channel 149
, WPA2-PSK
security, CCMP encryption
and passphrase 12345678
.
sudo nmcli con add type wifi ifname wlan1 mode ap con-name Hostspot ssid khadas_ap_5G sudo nmcli con modify Hostspot 802-11-wireless.band a sudo nmcli con modify Hostspot 802-11-wireless.channel 149 sudo nmcli con modify Hostspot 802-11-wireless-security.key-mgmt wpa-psk sudo nmcli con modify Hostspot 802-11-wireless-security.proto rsn sudo nmcli con modify Hostspot 802-11-wireless-security.group ccmp sudo nmcli con modify Hostspot 802-11-wireless-security.pairwise ccmp sudo nmcli con modify Hostspot 802-11-wireless-security.psk 12345678 sudo nmcli con modify Hostspot ipv4.method shared sudo nmcli con up Hostspot
Use ifconfig
to check if everything has been setup correctly:
$ ifconfig
wlan0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 192.168.31.219 netmask 255.255.254.0 broadcast 192.168.31.255
inet6 fda2:a164:f7fb:4b66:1466:7d8b:b8e3:49a prefixlen 64 scopeid 0x0<global>
inet6 fe80::6eed:eaf2:6ba8:5cd7 prefixlen 64 scopeid 0x20<link>
inet6 fda2:a164:f7fb:4b66:a823:4487:8651:4d61 prefixlen 64 scopeid 0x0<global>
ether 10:2c:6b:10:d5:0a txqueuelen 1000 (Ethernet)
RX packets 4271 bytes 3725737 (3.7 MB)
RX errors 0 dropped 13 overruns 0 frame 0
TX packets 1663 bytes 321613 (321.6 KB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
wlan1: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
inet 10.42.0.1 netmask 255.255.255.0 broadcast 10.42.0.255
inet6 fe80::6342:2516:ef70:23a0 prefixlen 64 scopeid 0x20<link>
ether 12:2c:6b:10:d5:0a txqueuelen 1000 (Ethernet)
RX packets 1569 bytes 299041 (299.0 KB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 3241 bytes 3693502 (3.6 MB)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
Verify that wlan0
has a working internet connection:
You need to connect Wi-Fi first.
khadas@Khadas:~$ sudo ping -I wlan0 www.khadas.com
PING td-balancer-dc11-60-161.wixdns.net (185.230.60.161) from 192.168.124.80 wlan0: 56(84) bytes of data.
64 bytes from 185.230.60.161 (185.230.60.161): icmp_seq=1 ttl=240 time=293 ms
64 bytes from 185.230.60.161 (185.230.60.161): icmp_seq=2 ttl=240 time=316 ms
64 bytes from 185.230.60.161 (185.230.60.161): icmp_seq=3 ttl=240 time=238 ms
...
Verify that wlan1
can be used as a hotpot:
khadas_ap_2.4G
, 5G/khadas_ap_5G
12345678