Java-Based Airport Base Station Configurator

The Airport Base Station Configurator is a Java application which is used to inspect and change the configuration of Apple's Airport Base Station. Apple itself offers software to provide this functionality; however, it requires a Macintosh running Mac OS 8.6 or greater to run. This application, being written entirely in Java, will run on any host which has a Java Runtime Environment installed, including Windows-based machines and most Unix variants.
 

Running the Configurator

To run the configurator, "cd" into the directory containing it and type "java -jar AirportConfigurator.jar". If you get an error message, you may not have the Java Runtime Environment installed. On Windows machines, you may alternately run the software by simply double-clicking on the file "AirportConfigurator.jar".
 

Configurator Main Window

When it starts, the Configurator opens to its main window, which contains several text fields and buttons and a messages area at the bottom, along with a large tabbed pane that holds the configurable settings for a base station - these will be empty (or 0) until valid settings are retrieved from a base station. A description of the function of the text fields and buttons is given below; a detailed description of the tabbed pane functions follows.
 
 





Text Fields

Buttons Generally, you'll first use the "Discover Devices" button to determine the IP address of your base station, copy this address into the "Device Address" field and use the "Retrieve Settings" button to get the base station's current settings, edit the settings as desired, and use the "Update Settings" button to update and restart the base station.
 
 

Tabbed Panes

The tabbed panes contain fields, checkboxes and radio buttons for editting the base station settings. The panes and their settings are described below.
 

Main Pane

Contains fields for entering a name for the base station, its location, the name of a contact person, and one for entering a new community name (password) for future updates. As discussed above, one of the first changes you should make is to change the community name from the default "public" to something else, so your base station won't be re-configured by someone else!
 

Wireless LAN Settings

Network Connection

This panel sets how the base station connects to the external world - either via its built-in modem (using the small phone-jack connector), or through its Ethernet port (using the fat jack). If you already have an Ethernet LAN, or are using a cable or DSL  modem, you'll want to connect through the Ethernet port; if you're using a dial-up line, you'll want to connect through the modem. The settings needed depend on which is selected, and are discussed below.

A benefit for dial-up users is that when connecting through the modem, non-wireless hosts can connect to the base station through the Ethernet port and use its modem to connect, sharing the connection with the wireless hosts. Thus several machines, wireless and wired, can be on-line simultaneously using just a single phone line! This capability (known as Network Address Translation, or NAT) is discussed further under the "Bridging Functions"; in any case, the Ethernet port isn't "wasted" when you're connecting through the modem!
 

Modem Settings
Most of these are pretty self-explanatory: your ISP's phone number, and button for username and password for connecting. The modem timeout setting determines how long the modem will stay connected when there's no activity. Note that the value supplied should be in 10-second units; thus a value of 30 represents 300 seconds, or 5 minutes: the modem will disconnect after 5 minutes of inactivity. (Sure, I could have made it more straightforward; this is my meager effort at addressing math illiteracy...  ;-)
 
Ethernet Settings
Domain Name Settings
These take IP addresses of Domain Name Servers - these are the hosts that translate from human-friendly host names like "www.drexel.edu" to the numerical IP addresses like "129.25.1.253"  actually used for transmitting data. You need to supply IP addresses for these; your Internet service provider or network administrator should be able to provide these for you. (I still don't know exactly what the "domain name" field has to do with anything....)

Bridging Functions

This panel sets how the base station handles the hosts that are attached to it, whether wireless or those connected through the Ethernet port. For modem connection, the setting should always be "NAT", or Network Address Translation. When the base station is connected to the external network through the Ethernet port, it can be configured to act as either a transparent bridge or as a NAT provider. These options are discussed below.
  • Transparent bridge mode

  • Used when the base station is connected to the external network through its Ethernet port. The base station just transparently transfers traffic between the wireless LAN and the Ethernet port. This is the simplest setting to use when the base station is to be incorporated into an existing network which already provides all of the services hosts need: the wireless hosts will behave as if they have simply been "plugged into" the existing LAN.

    DHCP (Dynamic Host Configuration Protocol) Service

    Access Control

    This panel permits access to the wireless network to be restricted to only the listed hosts. In this way, you won't have to worry about becoming the Internet service provider for all of your neighbors who have wireless cards! The list consists of the Ethernet address of each host's wireless card, together with an optional host name (19 characters max). If the list is empty, i.e., no hosts are listed, then any wireless card will be permitted to connect; if there is at least one entry in the list, then only those hosts listed will be able to connect to the base station.

    The Ethernet address of a host's card can usually be found printed on the card, or can be found by running the command "ipconfig /All" in Windows or "ifconfig -a" on most Unix hosts. The address should be 12 hexadecimal digits, 0 to 9 or A to F (spaces and lowercase are OK)

    NOTE:  If you enter an incorrect address for your laptop, you may end up preventing your laptop from being able to communicate with the base station - which will prevent you from correcting and updating the settings!! If this happens, you can still reconfigure the base station by connecting to it through its Ethernet port if you have an Ethernet adapter card. If not, you may have to reset the base station to its default factory settings and start over! (See, "Troubleshooting", below)
     

    Port Mapping

    This panel provides a facility for reaching wireless hosts "from the outside" when Network Address Translation (NAT) is used. As per the discussion of NAT above, the base station susbstitutes its own real IP address in the source address of outgoing packets, and additionally replaces the source port with a randomly selected port. This "external" port (and the internal host's address and port) is saved and used by the base station to direct received packets to the internal host that requested them. While the base station selects such ports "on the fly", it's possible to set up initial mappings between specific internal ("private") host adresses and ports and specific external ("public") base station ports. This is useful when you'd like to initiate communication with one of the internal hosts from an external host, by using the base station's IP address and the appropriate "public" port. For example, suppose you'd like to initiate communication with one of the internal hosts from outside the wireless network - say, you'd like to Telnet into the host with internal IP address 10.0.1.5, using the standard Telnet port 23 on that host. To accomplish this, select a public port on the base station to handle this communication - say, port 1500. (Use values greater than 1023 for the public port; ports with values less than 1024 are reserved for well-known services, and shouldn't be used for other purposes.) Then add an entry in the port mapping table, with public port 1500, private IP address 10.0.1.5, and private port 23. After the base station is updated with this information, whenever a packet arrives at the base station from the outside network with destination port 1500, it will be sent to internal host 10.0.1.5, port 23. You would thus Telnet into host 10.0.1.5, port 23, by Telnetting to the base station IP address, port 1500.

    Unfortunately, the number of such "port maps" is limited to 20, and ranges (say, ports 30-35) can only be specified by mapping the individual ports separately. Also, to be effective, you need to know the base station's (real) IP address, which might change if it receives its IP address from your internet service provider using DHCP.
     
     

    Tips

    The Airport base station is a wonderful device, providing a wide array of useful services. Hoewever, this makes it somewhat complex, with a confusing array of configuration options. In fact, it's possible to set the configuration so that it doesn't operate in the way you want it to, and may not even allow your wireless host to communicate with it! Don't fret - there are a number of workarounds to configuration problems (see "Troubleshooting", below) - but the following tips might help keep you from having to use them.
    1. Always retrieve the settings from a base station, and edit these, before updating - don't try to create your own, from scratch! There are settings that are retrieved that are not altered by the configurator, but are still necessary for the station to function correctly. There is no way to set these through the configurator! To prevent problems, the "Update Base Station" button is disabled until valid settings have been retrieved.

    2.  
    3. When connecting through the modem, always use NAT in the Bridging Functions panel, not Transparent bridging.

    4.  
    5. Some configuration operations (such as firmware uploads) may take some time; wait at least 30 seconds or more for a response - an error message will appear in the Messages area if there is in fact no response.

     

    Troubleshooting

    "OK, now it's broken - what do I do?" Well, that depends on how broken it is....

    Resetting base station to factory settings (revised to include Airport 1.1 and up)

    When all else has failed, you may have to replace corrupted settings with "factory fresh" defaults. The base station's configuration will then be returned to the settings it had when it came out of the box, and you can start over with your reconfiguration. Note that with Airport 1.1 and up, this procedure requires that new firmware (base station operating system software) be uploaded. Thus make sure you have this on hand before proceeding!
        I only had to do this once, before I had discovered all of the workarounds above; hopefully you won't find this necessary - not that it's difficult, but it sort of represents a "last resort, I give up, the damn thing still doesn't work" situation....well, if you're reading this, you already know that, so here's the instructions:
    1. Unplug the base station's power supply, either from the wall or from the back of the base station (you can leave the modem/Ethernet wires connected if you want).
    2. Get a paperclip, and straighten out one leg. You'll eventually be poking this into a tiny hole on the underside of the base station - find this hole. There's a little switch in there that the paperclip actuates - stick it in, and you should hear/feel a little "click". (This won't have any effect yet, until we plug the base station back in).
    3. Read the following before doing it: when the base station is plugged back in, the three lights on the front will all glow orange for about 5 seconds; while they are glowing in this fashion, stick the paperclip in and trip the switch, and hold it closed until the three lights are no longer lit. This instructs the base station to return to its factory settings. The three lights will now start blinking red in a pretty pattern, similar to the way they blink when you update the base station's settings; the base station is actually updating its settings itself, using stored factory defaults.

    Firmware upload

    You can update the base station's software (called "firmware") to take advantages of improvements offered by the latest releases. These are avaiable free through Apple; check their Airport support page at URL:    http://www.info.apple.com/support/airport/solve.html
    Unfortunately, they deliver this software in a compressed ".smi" file, which requires a Mac to decode it. Once you have such a file, here's how you can upload it to the base station; the procedure depends on whether the base station is currently working (center light shining green) or has been reset (center light shining amber / red).
     

    Base station currently working (not reset): center light green

    1. Retrieve the current settings from the base station (or open a saved version of your base station's configurations). These settings can be automatically uploaded along with the new firmware, so that your base station will be ready to roll when it restarts. If you don't do this, the base station will be configured with "factory default settings" - these are specified on Apple's web site at URL:   http://til.info.apple.com/techinfo.nsf/artnum/n58509  You'll thus have to reconfigure the base station after the restart with all of your info (e.g., modem dial-up number, etc.).

    2.  
    3. Choose "Upload new base station firmware..." from the "File" menu; this will present a dialog asking for the firmware file to upload, followed by one asking if you'd like to upload the current settings (if any are currently displayed and valid) or the default settings, or cancel the operation. If all goes well, after a delay during which the new software is being uploaded (indicated by the right-hand LED pulsing green steadily about 10 times), you should see the base station restart, and the middle light eventually become green instead of amber. The base station is now ready to go with its new firmware, but you may have to reconfigure it if you skipped step 1.
    Base station reset: center light amber
    1. You must connect to the base station through its Ethernet port, using a crossover cable (for a single machine) or by connecting the base station to a hub; after the reset, the base station will not respond to wireless cards   :-(

    2.  
    3. after a reset, the base station's IP address becomes either 192.*.*.* or 169.*.*.*; you can determine which by using the "Discover devices" button on the configurator (the base station responds to this, at least). Save your computer's IP address setting information, as you must change this and will want to return to the originals after completing the firmware upload process. Set your computer to have its TCP/IP info configured manually; then, set its IP address to be in the same subnet as the base station's, i.e., differing in only the last digit. So if the base station's address is 192.43.243.13, use something like 192.43.243.1 for your IP address. Also, set your mask to 255.255.255.0, and use the base station's IP address as the router (don't worry about dns servers, etc.) Alas, with Win98, changing the IP address means rebooting    :-(

    4.  
    5. The base station's password (community name) after a reset is "public" (without quotes); you'll now use this to communicate with the unit.

    6.  
    7. If you have a saved version of your base station's configurations, open these now; if not, just skip this step. These settings will be automatically uploaded along with the new firmware, so that your base station will be ready to roll when it restarts. If you don't have a saved version of your previous settings, no big deal, but the base station will be configured with "factory default settings" - these are specified on Apple's web site at URL:   http://til.info.apple.com/techinfo.nsf/artnum/n58509  You'll thus have to reconfigure the base station after the restart with all of your info (e.g., modem dial-up number, etc.).

    8.  
    9. Choose "Upload new base station firmware..." from the "File" menu; this will present a dialog asking for the firmware file to upload, followed by one asking if you'd like to upload the current settings (if any are currently displayed and valid) or the default settings, or cancel the operation.  If all goes well, after a delay during which the new software is being uploaded (indicated by the right-hand LED pulsing green steadily about 10 times), you should see the base station restart, and the middle light eventually become green instead of amber. The base station is now ready to go with its new firmware, but you may have to reconfigure it with your settings if you skipped step 4. In any case, you should reconfigure it with a new password, to change it from "public".

    10.  
    11. Set your computer's IP address stuff back to how it was before step 2.

    12.