Stap 1: De gebruiker schakelt de wifi in
Wanneer een gebruiker de wifi inschakelt op een apparaat, start de wifi-interface. De shill-gegevens over de huidige status van de wifi-interface worden geüpdatet. Daarnaast wordt wpa_supplicant gestart. Dit zorgt ervoor dat het apparaat verbinding maakt met het wifi-netwerk.
- De wifi-interface op het apparaat, wlan0, wordt gestart.
- wpa_supplicant rapporteert zijn eigen MAC-adres (Media Access Control) nadat de interface is ingeschakeld. In dit geval is het MAC-adres 9c:d2:1e:60:3b:71.
- wpa_supplicant stelt een roamingdrempel in van 18 dB. Deze drempel is van toepassing op de signaalsterkte, niet op de signaal-ruisverhouding (signal-to-noise ratio, SNR).
localhost shill: [0815/104602:VERBOSE2:device.cc(1178)] Device wlan0 starting
localhost shill: [0815/104602:INFO:manager.cc(1021)] Device wlan0 updated: enabled
localhost shill: [0815/104602:VERBOSE2:wifi.cc(295)] WiFi wlan0 starting.
localhost shill: [0815/104602:VERBOSE2:device.cc(1130)] OnEnabledStateChanged (target: 1, success: 1) on wlan0
localhost shill: [0815/104602:INFO:wifi.cc(1916)] wlan0: enabled supplicant: present proxy: null
localhost shill: [0815/104602:VERBOSE2:wifi.cc(1869)] WiFi debug scope changed; enable is now 1
localhost shill: [0815/104602:VERBOSE2:wifi.cc(1884)] WiFi debug level is currently msgdump; assuming that it is being controlled elsewhere.
localhost wpa_supplicant[1111]: RTM_NEWLINK: operstate=0 ifi_flags=0x1003 ([UP])
localhost wpa_supplicant[1111]: nl80211: Interface up
localhost wpa_supplicant[1111]: wlan0: Event INTERFACE_ENABLED (29) received
localhost wpa_supplicant[1111]: wlan0: Interface was enabled
localhost wpa_supplicant[1111]: wlan0: Own MAC address: 9c:d2:1e:60:3b:71
localhost wpa_supplicant[1111]: wlan0: State: INTERFACE_DISABLED -> DISCONNECTED
localhost wpa_supplicant[1111]: wpa_driver_nl80211_set_operstate: operstate 0->0 (DORMANT)
localhost wpa_supplicant[1111]: netlink: Operstate: linkmode=-1, operstate=5
localhost wpa_supplicant[1111]: wlan0: Setting scan request: 0 sec 0 usec
localhost wpa_supplicant[1111]: RTM_NEWLINK, IFLA_IFNAME: Interface 'wlan0' added
localhost wpa_supplicant[1111]: wlan0: Event INTERFACE_STATUS (5) received
localhost wpa_supplicant[1111]: wlan0: No enabled networks - do not scan
localhost wpa_supplicant[1111]: wlan0: State: DISCONNECTED -> INACTIVE
localhost wpa_supplicant[1111]: wlan0: Setting roam threshold: 18 dB
Stap 2: Scannen op wifi-netwerken
Shill verzoekt wpa_supplicant te scannen op nieuwe wifi-netwerken. Shill controleert de resultaten van de scan.
- Er worden nul (0) verborgen services gevonden. Er zijn dus geen verborgen netwerken bepaald door handmatige configuraties of beleidsconfiguraties. Een verborgen netwerk is een netwerk dat geen beacon frames uitzendt om te worden gevonden. Beacon frames bevatten gegevens over het netwerk en worden regelmatig uitgezonden om aan te geven dat er een draadloos lokaal netwerk (Local Area Network, LAN) is.
localhost wpa_supplicant[1111]: wlan0: Setting scan interval: 1 sec
localhost shill: [0815/104602:INFO:wifi.cc(407)] Scan [full] on wlan0 (progressive scan DISABLED) from ConnectToSupplicant
localhost shill: [0815/104602:VERBOSE2:wifi.cc(1290)] WiFi wlan0 scan requested.
localhost shill: [0815/104602:VERBOSE2:wifi_provider.cc(447)] Found 0 hidden services
localhost wpa_supplicant[1111]: Scan requested (ret=0) - scan timeout 30 seconds
localhost wpa_supplicant[1111]: nl80211: Event message available
localhost wpa_supplicant[1111]: nl80211: Scan trigger
Stap 3: wpa_supplicant detecteert beacon frames
Terwijl wpa_supplicant scant op nieuwe wifi-netwerken, worden de beacon frames gedetecteerd die worden uitgezonden via nabije toegangspunten (access points, AP). Elke AP wordt geregistreerd als aparte Basic Service Set Identifier (BSSID).
Logbestanden
- Elke instantie van een beaconhint staat voor een AP die netwerkgegevens uitzendt.
- wpa_supplicant heeft de vijf netwerken allemaal geregistreerd als aparte BSSID's.
- wpa_supplicant maakt een BSSID gebaseerd op twee parameters: Service Set Identifier (SSID) en MAC-adres.
- In de loop van de tijd verwijdert wpa_supplicant BSSID's die niet meer geldig zijn.
localhost wpa_supplicant[1111]: nl80211: Event message available
localhost wpa_supplicant[1111]: nl80211: Regulatory beacon hint
localhost wpa_supplicant[1111]: wlan0: Event CHANNEL_LIST_CHANGED (31) received
localhost wpa_supplicant[1111]: nl80211: Event message available
localhost wpa_supplicant[1111]: nl80211: Regulatory beacon hint
localhost wpa_supplicant[1111]: wlan0: Event CHANNEL_LIST_CHANGED (31) received
localhost wpa_supplicant[1111]: nl80211: Event message available
localhost wpa_supplicant[1111]: nl80211: Regulatory beacon hint
localhost wpa_supplicant[1111]: wlan0: Event CHANNEL_LIST_CHANGED (31) received
localhost wpa_supplicant[1111]: wlan0: BSS: Add new id 1445 BSSID 74:44:01:71:cf:91 SSID 'Network4'
localhost wpa_supplicant[1111]: dbus: Register BSS object '/fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1445'
localhost wpa_supplicant[1111]: wlan0: BSS: Add new id 1446 BSSID 00:24:6c:db:e4:d0 SSID 'Network5'
localhost wpa_supplicant[1111]: dbus: Register BSS object '/fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1446'
localhost wpa_supplicant[1111]: wlan0: BSS: Add new id 1449 BSSID 00:24:6c:e2:c0:30 SSID 'Network5'
localhost wpa_supplicant[1111]: dbus: Register BSS object '/fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1449'
localhost wpa_supplicant[1111]: wlan0: BSS: Add new id 1458 BSSID b0:c7:45:6b:b1:97 SSID 'Network1'
localhost wpa_supplicant[1111]: dbus: Register BSS object '/fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1458'
localhost wpa_supplicant[1111]: wlan0: BSS: Add new id 1471 BSSID 00:24:6c:60:f2:c1 SSID 'Network3'
localhost wpa_supplicant[1111]: dbus: Register BSS object '/fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1471'
localhost wpa_supplicant[1111]: wlan0: BSS: Add new id 1516 BSSID 00:24:6c:db:e4:d1 SSID 'Network2'
localhost wpa_supplicant[1111]: dbus: Register BSS object '/fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1516'
Stap 4: Shill registreert eindpunten
Shill slaat gegevens over de BSSID's op, zoals signaalsterkte, beveiligingstype en frequentie. Voor elk netwerk is elke AP (of BSSID) een eindpunt. Shill wijst de eindpunten toe aan een specifieke service. Als een bepaalde service niet bestaat, wordt er een gemaakt door shill zodat het eindpunt kan worden geregistreerd. Shill beheert wifi-verbindingen met services die worden gedefinieerd als paar van een SSID en een beveiligingstype.
Logbestanden
- Shill heeft service 44 gemaakt voor Netwerk4.
- Shill refereert aan eindpunten met hun MAC-adres.
- De signaalsterkte wordt gemeten in dB.
- Netwerk1 en Netwerk2 zijn respectievelijk service0 en service1. Deze netwerken hebben een hogere verbindingsprioriteit, omdat ze worden beheerd door een beleid.
- Volgens het beleid maken apparaten automatisch verbinding met Netwerk1 wanneer dit beschikbaar is. Dit netwerk heeft daarom de hoogste prioriteit en het laagste servicenummer.
localhost shill: [0815/104606:VERBOSE1:wifi.cc(1113)] Found endpoint. RPC path: /fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1445, [SSID=Network4], bssid: 74:44:01:71:cf:91, signal: -46, security: 802_1x, frequency: 5180
localhost shill: [0815/104606:INFO:service.cc(242)] wifi service 44 constructed.
localhost shill: [0815/104606:VERBOSE2:eap_credentials.cc(216)] Not connectable: Identity is empty.
localhost shill: [0815/104606:INFO:wifi_service.cc(155)] Constructed WiFi service 44 name: [SSID=Network4]
localhost shill: [0815/104606:VERBOSE2:manager.cc(965)] Registering service 44
localhost shill: [0815/104606:VERBOSE2:service.cc(1044)] SetProfile from to
localhost shill: [0815/104606:VERBOSE1:wifi_provider.cc(260)] Assigned endpoint 74:44:01:71:cf:91 to service 44.
localhost shill: [0815/104606:VERBOSE1:wifi.cc(1113)] Found endpoint. RPC path: /fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1446, [SSID=Network5], bssid: 00:24:6c:db:e4:d0, signal: -64, security: 802_1x, frequency: 5180
localhost shill: [0815/104606:INFO:service.cc(242)] wifi service 45 constructed.
localhost shill: [0815/104606:VERBOSE2:eap_credentials.cc(216)] Not connectable: Identity is empty.
localhost shill: [0815/104606:INFO:wifi_service.cc(155)] Constructed WiFi service 45 name: [SSID=Network5]
localhost shill: [0815/104606:VERBOSE2:manager.cc(965)] Registering service 45
localhost shill: [0815/104606:VERBOSE1:wifi_provider.cc(260)] Assigned endpoint 00:24:6c:db:e4:d0 to service 45.
localhost shill: [0815/104606:VERBOSE1:wifi.cc(1113)] Found endpoint. RPC path: /fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1449, [SSID=Network5], bssid: 00:24:6c:e2:c0:30, signal: -62, security: 802_1x, frequency: 5805
localhost shill: [0815/104606:VERBOSE1:wifi_provider.cc(260)] Assigned endpoint 00:24:6c:e2:c0:30 to service 45.
localhost shill: [0815/104606:VERBOSE1:wifi.cc(1113)] Found endpoint. RPC path: /fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1458, [SSID=Network1], bssid: b0:c7:45:6b:b1:97, signal: -59, security: rsn, frequency: 2422
localhost shill: [0815/104606:VERBOSE1:wifi_provider.cc(260)] Assigned endpoint b0:c7:45:6b:b1:97 to service 0
localhost shill: [0815/104606:VERBOSE1:wifi.cc(1113)] Found endpoint. RPC path: /fi/w1/wpa_supplicant1/Interfaces/0/BSSs/1516, [SSID=Network2], bssid: 00:24:6c:db:e4:d1, signal: -62, security: none, frequency: 5180
localhost shill: [0815/104606:VERBOSE1:wifi_provider.cc(260)] Assigned endpoint 00:24:6c:db:e4:d1 to service 1.