Saturday, March 31, 2012

Fixing the aircrack "Fixed channel mon0: -1

This guide will show you how to fix the "Fixed channel mon0: -1" message that appears when using Airodump-ng and the error Aireplay-ng gives.

The guide will show you how to compile your own kernel with the channel patches. The patch has been tested and works in 3.1.6, and it will probably work on any newer kernel until the patch makes it to the kernel source itself.

First, download he latest kernel source. You can go to http://www.kernel.org/ and find the latest stable source.

Then, open a terminal. Navigate to the directory where the archive is:
cd <directory>

If the source archive was downloaded in /home/user/Downloads, then you would type
cd /home/user/Downloads

Then extract the sources. In a terminal, you can do this to extract it:
tar -xvjf <archive filename>

Using the 3.1.6 kernel source for example, one would do:
tar -xvjf linux-3.1.6.tar.bz2

Now, go into the source directory. If your distro requires any special configuration, you can copy the existing .config from /usr/src/linux-<kernel version>. If you are not sure, do this.
cp /usr/src/linux-<kernel version>/.config .

If your previous kernel version was 3.1.2, for example, you would do this:
cp /usr/src/linux-3.1.2/.config .

Then do
make mrproper

If you need to customize anything for the new kernel, you can do it now.

Now we will download and apply the patches. Make sure you are still in the source directory, and do:
wget http://patches.aircrack-ng.org/mac80211.compat08082009.wl_frag+ack_v1.patch wget http://patches.aircrack-ng.org/channel-negative-one-maxim.patch patch -p1 mac80211.compat08082009.wl_frag+ack_v1.patch patch -p1  channel-negative-one-maxim.patch

Now, compile the new kernel:
make
make modules

Note: If you want to use as much CPU as possible when compiling, use the -j flag on both commands, followed by the numbers of threads to create. For example, -j3 will tell the compiler to have 3 threads.

Then, you can install the kernel. Execute the following commands as root, using su or sudo.
make modules_install
make install

When the kernel has installed without any problems, be sure to update grub, lilo, etc, and put the new kernel into the bootloader's list. Here is some info on bootloaders in case you need help with updating the boot menu:

Grub Legacy: http://www.dedoimedo.com/computers/grub.html

Grub 2: http://www.dedoimedo.com/computers/grub-2.html

Lilo: https://wiki.archlinux.org/index.php/LILO

No comments:

Post a Comment