2005-11-16 Jason Schoonover Initial Apple Airport support was added in 1.0.3 Apple Airport plugin 1. Introduction 2. Configuration 3. Display 1. Introduction The Apple Airport plugin is very similar to the Cisco Aironet plugin, you can see the MAC address and IP address of each client, how long they've been connected for and what they're signal strength is. The output is very similar as well to the Cisco Aironet, except the fact that the Airports don't support multiple SSID's, so the output is a bit simpler. IP address support was added in 1.0.6, however in order for it to work the client must actually contact the apple base station some how. The only way an Airport will actually tell you the IP address of it's wireless clients is if it's actually handing out DHCP (I did not test this functionality). So if you have DHCP disabled, then the only way to get the IP address is to look it up in the Airport's ARP table. However the only way a MAC address would actually get to the ARP table is if the wireless client pinged or accessed the Airport somehow. I figured that since you're actually associated with access point that it would know about your IP address, I guess it doesn't care about that. This will output something similar to this: --------------------------------------------------------------------- SSID [private]: 3 total active clients Mac Address IP Address Signal Strength Time 00:72:96:2a:e9:11 10.0.0.61 -80 1424 00:11:f5:16:10:b3 10.0.0.114 -66 1318 00:90:96:5c:d5:60 10.0.0.88 -42 371 --------------------------------------------------------------------- 2. Configuration The way to configure an airport is with the 'host' directive in the unnoc.conf file. The SNMP community *must* be the read/write admin password of the Airport. Yes, the actual password. For some reason they use the password as the community. For the host directive, see t he README.hosts file for proper syntax, here is an example config: host { hostname = airport-1 community = syn21msaluy type = airport } You can specify a different interval with the 'interval' directive. If you would like to check the up/down status via 'ping' then specify the 'updown' directive as 'ping'. The default value of 'updown' is 'snmp' -- this means that if it does not get a response via snmp, then it will consider it down, or will wait until 'fuzz' attempts before it considers it down (if fuzz is defined). 3. Display If you have multiple airports, then you can view the status of all of them on the same page by using the link: display.php?all=airports The airports.php file has been removed, the new display.php file replaced it. You can also use the print_href functions to display all of the airports. print_href_* is a new addition to unnoc as of 1.0.6, and it will display each airport that you are monitoring and will also give you the ability to print all airports To see the airport link, enable it with the print_href functions on the front page (or wherever you want it to be displayed). The proper argument is 'airports': If you would like to print out all of the access points on one page (without the graphs), then you can use the term 'all_airports', to the print_href_type() function, so if you wanted to see a list of all of your airports and then at the bottom have a link to 'All Airport Associations', you could to: OR If you would like to setup links manually, the links that are printed are: For single host display, hostname 'airport-1': display.php?host=airport-1 For all display: display.php?all=airports Each interface on the Airport will be graphed and logged, so you can see how much traffic is going through. The only problem with the Airports is that you actually see packet counters, instead of byte counters. I'm not sure who's idea that was at Apple, but I have not found a way to look at how many bytes are going across each interface. So when you display each interface, it will be displayed in Packets Per Second (pps) instead of bytes per second. You can still get a general idea of how much traffic is going across. Perhaps in future versions there will be a way to determine packet sizes, but I believe each packet is variable, so it wouldn't be an accurate calculation. vim:tw=72:wm=1