Concurrent modes
Multi client station
The ConnectCore 6UL can be configured as two simultaneous client stations in infrastructure mode. In order to do this we need to create an extra virtual wireless device. Create the following script to run at boot:
0755 root root /etc/init.d/virtwlans
#!/bin/sh iw dev wlan0 interface add wlan1 type managed
Now configure the /etc/network/interfaces file as follows:
- Add a post-up option to wlan0 to run the script above when the interface is configured
- Add a new entry wlan1 for the new virtual wireless interface, using a different configuration file. Each wireless interface will run its own instance of the wpa-supplicant each with a different wpa_supplicant.conf file:
/etc/network/interfaces
auto wlan0 iface wlan0 inet static address 192.168.43.30 netmask 255.255.255.0 wpa-driver nl80211 wpa-conf /etc/wpa_supplicant.conf post-up /etc/init.d/virtwlans auto wlan1 iface wlan1 inet static address 192.168.43.31 netmask 255.255.255.0 wpa-driver nl80211 wpa-conf /etc/wpa_supplicant_1.conf
- Configure each wpa-supplicant configuration file as explained in Client infrastructure mode. With these changes, the device will be set up as two client stations that will connect to their configured access points on boot.
Multi Access Point
The ConnectCore 6UL can be configured as two simultaneous access points working on the same channel. In order to do this we need to create an extra virtual wireless device. Create the following script to run at boot:
0755 root root /etc/init.d/virtwlans
#!/bin/sh iw dev wlan0 interface add wlan1 type managed
Now configure the /etc/network/interfaces file as follows:
- Add two post-up options to wlan0:
- One to run the script above when wlan0 is configured.
- Another to run hostapd instance to have it work as an access point.
- Add a new entry wlan1 for the new virtual wireless interface, running as access point using a different configuration file. Each wireless interface will run its own instance of the hostapd each with a different hostapd.conf file:
/etc/network/interfaces
auto wlan0 iface wlan0 inet static address 192.168.43.30 netmask 255.255.255.0 post-up /etc/init.d/virtwlans post-up /usr/sbin/hostapd -B /etc/hostapd.conf auto wlan1 iface wlan1 inet static address 192.168.43.31 netmask 255.255.255.0 post-up /usr/sbin/hostapd -B /etc/hostapd_1.conf
- Configure each hostapd configuration file as explained on the "Access point mode" section above. With these changes, the device will start the two different access points on boot.
The following hostapd configuration files can be used as examples. Note that the "interface" configuration entry needs to match an existing wireless interface:
/etc/hostapd.conf
ctrl_interface=/var/run/hostapd ctrl_interface_group=0 interface=wlan0 driver=nl80211 # WPA2-AES encryption ssid=ap-wpa2aes_a auth_algs=1 wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=CCMP wpa_passphrase=password-wpa2aes # IEEE 802.11ac hw_mode=a channel=36 ieee80211ac=1 ieee80211n=1 # IEEE 802.11d - Country Code ieee80211d=1 country_code=US
/etc/hostapd_1.conf
ctrl_interface=/var/run/hostapd ctrl_interface_group=0 interface=wlan1 driver=nl80211 # WPA2-AES encryption ssid=ap1-wpa2aes_a auth_algs=1 wpa=2 wpa_key_mgmt=WPA-PSK wpa_pairwise=CCMP wpa_passphrase=password-wpa2aes # IEEE 802.11ac hw_mode=a channel=36 ieee80211ac=1 ieee80211n=1 # IEEE 802.11d - Country Code ieee80211d=1 country_code=US
Station and access point
The ConnectCore 6UL can be configured simultaneously as client station and access point. In order to do this we need to create an extra virtual wireless device. Create the following script to run at boot:
0755 root root /etc/init.d/virtwlans
#!/bin/sh iw dev wlan0 interface add wlan1 type managed
Now configure the /etc/network/interfaces file as follows:
- Add a post-up option to wlan0 to run the script above when the interface is configured. This will run an instance of the wpa-supplicant and will work as station.
- Add a new entry wlan1 for the new virtual wireless interface. This will run hostapd and will work as access point.
/etc/network/interfaces
auto wlan0 iface wlan0 inet static address 192.168.43.30 netmask 255.255.255.0 wpa-driver nl80211 wpa-conf /etc/wpa_supplicant.conf post-up /etc/init.d/virtwlans auto wlan1 iface wlan1 inet static address 192.168.43.31 netmask 255.255.255.0 post-up /etc/init.d/hostapd start pre-down /etc/init.d/hostapd stop
- Configure the wpa-supplicant as explained in Client infrastructure mode, and the hostapd as explained in Access point mode.
Wi-Fi direct concurrent modes
The ConnectCore 6UL supports simultaneous group owner and group client configuration as explained in this chapter.
Add the following configuration change to the /etc/wpa_supplicant_p2p.conf file on both devices:
p2p_no_group_iface=0 p2p_group_idle=0
The above will configure the supplicant to use a different interface, p2p0, for P2P group operations. It will also maintain a group formed even if there are no other members.
The wlan0 interface needs to be removed as we are going to need all virtual MACs for the P2P setup:
ifdown wlan0 iw wlan0 del
Concurrent GO and GC using PBC
Peer (GO & GC) — PBC — Peer (GO & GC)
Steps | Peer 1 | Peer 2 | Notes |
---|---|---|---|
0 | wpa_cli -ip2p0 | wpa_cli -ip2p0 | |
1 | p2p_group_add | ||
2 | p2p_find | ||
3 | Ctrl-c to exit | ||
4 | wpa_cli -i p2p-p2p0-0 wps_pbc | ||
5 | p2p_connect <CC6UL1_go_p2p-p2p0-0_mac_addr> pbc join | This uses the MAC of the first virtual interface | |
6 | wpa_cli -ip2p0 | ||
7 | p2p_group_add | ||
8 | p2p_find | Ctrl-c to exit | |
9 | wpa_cli -i p2p-p2p0-1 wps_pbc | This is in the second virtual interface | |
10 | p2p_connect <CC6UL2_go_p2p-p2p0-1_mac_addr> pbc join | This uses the MAC of the second virtual interface | |
11 | Ctrl-c to exit | Ctrl-c to exit | |
12 | ifconfig p2p-p2p0-0 <CC6UL1_ip_addr> | ifconfig p2p-p2p0-0 <CC6UL2_ip_addr> | |
13 | ping <CC6UL2_ip_addr> | ping <CC6UL1_ip_addr> | |
14 | ifconfig p2p-p2p0-1 <CC6UL1_ip1_addr> | ifconfig p2p-p2p0-1 <CC6UL2_ip1_addr> | |
15 | ping <CC6UL2_ip1_addr> | ping <CC6UL1_ip1_addr> |
Concurrent GC
Peer (GC1 & GC2) --- PBC -- Peer1 (GO) |---PBC -- Peer2 (GO)
Steps | Peer 1 (GO) | Peer 2 (GO) | Peer 2 (GC1 & GC2) |
---|---|---|---|
1 | wpa_cli -ip2p0 | wpa_cli -ip2p00 | wpa_cli -ip2p0 |
2 | p2p_group_add | ||
3 | p2p_find | ||
4 | Ctrl-c to exit | ||
5 | wpa_cli -i p2p-p2p0-0 wps_pbc | ||
6 | p2p_connect <CC6UL1_go_mac_addr> pbc join | ||
7 | p2p_group_add | ||
8 | Ctrl-c to exit | p2p_find | |
9 | |||
10 | wpa_cli -i p2p-p2p0-0 wps_pbc | ||
11 | p2p_connect <cc6_go_mac_addr> pbc join | ||
12 | Ctrl-c to exit | ||
13 | ifconfig p2p-p2p0-0 <CC6UL1_ip_addr> | ifconfig p2p-p2p0-0 <CC6UL2_ip_addr> | ifconfig p2p-p2p0-0 <CC6UL2_ip1_addr> |
14 | ifconfig p2p-p2p0-1 <CC6UL2_ip2_addr> | ||
15 | ping <CC6UL2_ip1_addr> | ||
16 | ping <CC6UL2_ip2_addr> | ||
17 | ping <CC6UL1_ip_addr> | ||
18 | ping <CC6UL1_ip_addr> |
© 2020 Digi International Inc. All rights reserved.
Concurrent modes updated on 04 June 2020 04:00:26 PM