Skip to content

Infocom 2016 Demo

Manuel Peuster edited this page Mar 4, 2016 · 36 revisions

Testbed Setup

General

Machine Networks SSH Shortcut BSSID Other
Controller VM eth1: 10.10.10.210/24
eth0: DHCP (VBox NAT)
- - -
LED Controller 10.10.10.99/24 - - need DHCP? TODO!
AP1: green01 10.10.10.1/24 green01 TODO U: root
P: gr33ntouch
AP2: green02 10.10.10.2/24 green02 TODO U: root
P: gr33ntouch
AP3: green03 10.10.10.3/24 green03 TODO U: root
P: gr33ntouch
UE1 (UPB Sandy) 10.10.10.11/24 - - -
UE1 (UPB Chantal) 10.10.10.12/24 - - (optional)

GreenTouch VM

Network

  • eth0: NAT DHCP from VirtualBox host (to have a internet connection)
  • eth1: Bridged to host interface connected to testbed (static: 10.10.10.210/24)

Access Points

Wi-Fi

  • SSID: BCG2Demo
  • PSK: gr33ntouch

hostapd config

/ets/hostapd/hostapd.conf

interface=wlan0
driver=nl80211
bridge=bridge

country_code=DE
ieee80211d=1

ssid=BCG2Demo
hw_mode=g
channel=1
wme_enabled=0

# Station MAC address -based authentication
# Please note that this kind of access control requires a driver that uses
# hostapd to take care of management frame processing and as such, this can be
# used with driver=hostap or driver=nl80211, but not with driver=madwifi.
# 0 = accept unless in deny list
# 1 = deny unless in accept list
# 2 = use external RADIUS server (accept/deny lists are searched first)
macaddr_acl=0

# Accept/deny lists are read from separate files (containing list of
# MAC addresses, one per line). Use absolute path name to make sure that the
# files can be read on SIGHUP configuration reloads.
#accept_mac_file=/etc/hostapd/mac.accept
#deny_mac_file=/etc/hostapd/mac.deny

auth_algs=1
wpa=2
wpa_passphrase=gr33ntouch
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP

ctrl_interface=/var/run/hostapd
ctrl_interface_group=0

logger_syslog=-1
logger_syslog_level=1
logger_stdout=-1
logger_stdout_level=1

Public SSH Key

Our controller needs a SSH connection to each AP to obtain traffic data from it. For this, the following key has to be added into .ssh/autorized_keysfile on each AP. The controller VM is configured (.ssh/config) to have SSH shortcuts green01- green03to connect to the APs.

ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQC9avqGL22oIccihw5ikQOIU6q5WG/loBvQbc5ziMzoYWgXbLK9NIuLXU/C1RtnHn7vfkUy+4lV9Kq08s3FPrHxPic10PnyUrO+YMs0whn4ZqD4Og6x9alnuxwd9GApee0gNdWZ5SeBL721x6cpdj3QOOM+/3fREzf7wHjZsv0Cpg6DXqRYsEcgjTqkqF1ubgggH67CtlnVo/sBX6tkdJm8rqWbQ01DisMLSTE2Bk9MmPWCyEgj3psYSzE8tmMAKzOcDsSTZho/tzjx8HgrwHrEW55a2GFhUbyQv9jeiPSswFPIC4jakl1/Lg6zQqHkPcrTln8+jteUfcqlFx4hgPTt greentouch@greentouch-VirtualBox

Test UPB access point Manager with new access point setup

The following steps describe how to test if the new access points work together with UPB's access point manger. Before doing these tests, check if the APs are reachable from the controller VM: ping 10.10.10.1 - 3.

  • cd Desktop/BCG_DEMO/mt_backend/ap_manager
  • python upb_apmanager.py -v -l debug -a start -c config_infocom.json

Start a second terminal and check the REST API of the access point manager:

  • curl 127.0.0.1:6682/api/network/accesspoint

  • Response: {"offline": [], "online": ["e60db822c51d330bbf6954f306941678", "c3b4a156913a37bf8e11e0bf756fcd9f", "dd8a05d9212131dcbb531ffc5cdd3979"]}

  • curl 127.0.0.1:6682/api/network/accesspoint/e60db822c51d330bbf6954f306941678/info

  • Response: {"state": "online", "uuid": "e60db822c51d330bbf6954f306941678", "serial": "00156195a7c1", "name": "green01"}

  • curl 127.0.0.1:6682/api/network/accesspoint/e60db822c51d330bbf6954f306941678/stats

  • Response: {"aps": [{"txbyte": 748644, "name": "wlan0", "rxbyte": 353270, "timestamp": 1457093744.035127, "txpkt": 0, "rxpkt": 0}]}

  • TODO: This one might be critical because it parses ifconfig output after executing the command via SSH on the access point. A different ifconfig versions might cause trouble here. This is why we have to check this before Infocom.

Clone this wiki locally