cancel
Showing results for 
Search instead for 
Did you mean: 
cancel
Announcements

Installing Autonomous IOS (aIOS) on a Lightweight AP from the CLI

49564
Views
35
Helpful
5
Comments

 

 

Introduction

 

Installing Autonomous IOS (aIOS) on a Lightweight AP from the CLI

 

Procedure

 

This tip shows how to install an autonomous IOS image (i.e. the k9w7 feature set) on an access point running lightweight IOS. 

 

Set up the TFTP Server

 

As the first step, set up a TFTP server as needed.  Tftpd32 for Windows works well.  Put the TFTP server somewhere on the network where the AP can reach it via IP.  Put the desired aIOS (k9w7) image on the TFTP server.  In this case, we will use ap3g1-k9w7-tar.124-25d.JA1, the aIOS image for the 1260 series AP.

 

Connect to the AP CLI (Exec)

 

Next, set up a terminal session to the AP's CLI (exec.)  This can be done with an asynchronous serial connection to the AP console, from a terminal emulator program such as PuTTY.  You may also use a TELNET/SSH session to the AP, if and only if it is running a lightweight IOS version of 12.4(21a)JA2 (6.0.188.0), 12.4(10b)JDE (4.2.209.0), or above.  (See CSCsz95595).

 

Enter the IOS commands

 

If the AP is running a pre-CAPWAP image - i.e. one prior to 12.4(18a)JA (5.2) - then first enter the following hidden command.

ap#debug lwapp console cli


If the AP is running a CAPWAP image - i.e. 12.4(18a)JA (5.2) or above - enter this hidden command:

 

ap#debug capwap console cli

 

The above command is necessary in order to permit you to enter the archive command.

 

If the AP is now joined to a WLC, then proceed to the Archive Command step below.  If not, then the AP is going to cycle through DHCP release/renewal, and will possibly reboot, defeating your efforts to load in the autonomous IOS, unless you take the following steps:

 

ap#debug capwap client no-reload

(this hidden command prevents the AP from reloading when it can't join a controller)

 

And create a DHCP scope with a fixed lease for the AP - you can do this on an IOS DHCP server with:

ip dhcp pool APNAME

host 10.2.3.4 /24

client-id 01<LAN MAC>


(or just create a scope with a single address ... otherwise, the AP will release its DHCP address and renew with a new address, breaking the TFTP operation.)

 

Archive Command

 

In either case, now enter the archive download-sw command to copy the aIOS image from the TFTP server, and install it  onto AP flash, overwriting the currently installed image as needed:

 

ap#archive download-sw /overwrite tftp://<TFTP-server-address>/<filename>

Example:


AP1260#archive download-sw /overwrite tftp://10.95.42.136/ap3g1-k9w7-tar.124-25d.JA1
examining image...
Loading ap3g1-k9w7-tar.124-25d.JA1 from 10.95.42.136 (via GigabitEthernet0): !
extracting info (286 bytes)
Image info:
Version Suffix: k9w7-.124-25d.JA1
Image Name: ap3g1-k9w7-mx.124-25d.JA1
Version Directory: ap3g1-k9w7-mx.124-25d.JA1
Ios Image Size: 5673472
Total Image Size: 6502912
Image Feature: WIRELESS LAN
Image Family: AP3G1
Wireless Switch Management Version: 7.0.94.21
Extracting files...
ap3g1-k9w7-mx.124-25d.JA1/ (directory) 0 (bytes)
ap3g1-k9w7-mx.124-25d.JA1/html/ (directory) 0 (bytes)
[ ... ]
extracting info.ver (286 bytes)
[OK - 6512640 bytes]

Deleting current version: flash:/ap3g1-k9w8-mx.124-23c.JA2...done.
New software image installed in flash:/ap3g1-k9w7-mx.124-25d.JA1
Configuring system to use new image...done.
archive download: takes 129 seconds

AP1260#

Reload the AP running IOS

 

Now validate that the AP is configured to boot the aIOS image, and reload:

 

 

AP1260#more flash:/env_vars | include BOOT
BOOT=flash:/ap3g1-k9w7-mx.124-25d.JA1/ap3g1-k9w7-mx.124-25d.JA1
AP1260i#reload
Proceed with reload? [confirm]
Writing out the event log to nvram...
y
*Sep 1 00:41:58.714: %SYS-5-RELOAD: Reload requested by Cisco on console. Reload Reason: Reload
command. [ ... ]

Cisco IOS Software, C1260 Software (AP3G1-K9W7-M), Version 12.4(25d)JA1, RELEASE SOFTWARE (fc1)

[ ... ]

Press RETURN to get started!

 

Comments
Beginner

.

Beginner

Hi,

I'm trying to install IOS on a  brand new CAP3600 (revery image still).

Even when statically fixing the IP on BVI 1, the AP will eventually drop it to look for a controller (new DHCP request).

If  the AP gets a new IP assigned, it messes up the download of the  firmware image, as the AP has another IP address assigned and the tftp  extraction cannot continue.

The workaround to this  (personal one) - set a DHCP server that only provides a single IP  address. Even if the AP looks for an IP address it will always get the  same and the tftp extraction process will be able to continue  independently.

If anybody sees another way of doing so, please contribute. I tried setting statically the Controller IP address, with no luck.

Hope this helps

Gustavo

Community Member

the command missing from this article is:

debug capwap client no-reload

this stops the lightweight AP from constantly restarting and permits the upgrade process to proceed smoothly.

cheers, Wiz!!

Cisco Employee

Thanks for your suggestions, Gustavo and David - I've incorporated them into this doc.  (If the lightweight AP is joined to a controller, as is typically true in my lab, then you don't need to worry about keeping the AP from releasing its DHCP lease, and rebooting ... but of course that's not necessarily going to be true in the real world.)

Aaron

Beginner

Hi,

I know its an old post but I just figure it out for me.

You could also set a manual binding for your AP in the DHCP pool:

1- Router(config)# ip dhcp pool Test

2- Router(dhcp-config)# host 192.168.1.22 255.255.255.0

3-Router(dhcp-config)# client-identifier unique-identifier

The unique identification of the client is specified in dotted hexadecimal notation, for example, 01b7.0813.8811.66, where 01 represents the Ethernet media type and the rest of the notation is the AP mac address.

4- Router(dhcp-config)# hardware-address hardware-address type

Specifies a hardware address(MAC) for the client.

The type value Indicates the protocol of the hardware platform. Strings and values are acceptable.

The string options are:

         ethernet

         ieee802

The value options are:

          1 10Mb Ethernet

          6 IEEE 802

regards,

CreatePlease to create content
Content for Community-Ad
August's Community Spotlight Awards