Docs/Drafts/WiFiNetworking

From FedoraProject

< Docs | Drafts
Revision as of 18:03, 30 December 2008 by Pfrields (Talk | contribs)

(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
Jump to: navigation, search
Warning (medium size).png
This page is a draft only
It is still under construction and content may change. Do not rely on the information on this page.
This is quite good! However, it would be nice to see better adherence to our Style Guide . Please read through that material, compare it to published works at http://docs.fedoraproject.org/, and see if you can match the tone and guidelines a little more closely. The more of this work that you can comfortably accomplish, the faster the editorial process will go, given our current dearth of resources. -- PWF 2007-09-07

Contents

WiFiNetworking

Introduction

If your Wi-Fi networking is not working in Fedora Linux the clues which follow should assist you in repairing or circumventing the problem. An optimistic strategy to follow would be to:

leads to wireless success.

then try one or more of the desktop wireless networking tools , again.

Wi-Fi is a licensed brand of the Wi-Fi Alliance, and is a commonly used term for wireless local area network products which observe the IEEE 802.11 standard (including its a, b, g, or.(expected) n amendments). A typical limit for the distance over which this wireless communication can be effective is several tens of meters or a few hundred feet.

If you are scanning for information before obtaining a system or obtaining a wireless network adapter for an existing system, you may wish to quickly read a short list of wireless adapters to avoid at: [1]

This collection of information focuses on the wireless networking management applications which are included in the Fedora Linux distribution. While each of these applications is also included in some other Linux or Unix distribution, they and the version of the kernel in the Fedora distribution are the main unique ingredients for wireless networking. Once one delves into command-line tools for wireless networking, there are few if any details which are unique to Fedora. So on these topics, especially, we settle for a brief outline or sketch, and supply links to selected bits of the large volume of wireless networking information available elsewhere. There is little benefit in duplicating such information here. If software and / or hardware change more so that some of the linked information becomes inaccurate or stale, then the link should be removed and the corrected information supplied directly here.

In an attempt to remain unbiased, the window manager environments are listed in alphabetical order, as are the individual applications which run in each environment. We do not attempt to rate the quality, completeness, or popularity of any wireless networking application. Instead, we hope to highlight some of the differentiating features which may be pertinent to an individual's choice for which application best fulfills their needs.

A goal in Fedora Collection 7 (presumably to be preserved or improved upon in subsequent releases) was to provide wireless networking support that "just works", transparently, with no additional user effort. Releases/FeatureRockSolidWireless

As the initial draft of this document is started, such robust wireless behavior has been partially implemented. The goals of this document are to provide:

  • pointers toward user documentation for the applets / commands

used to initiate and support wireless networking,

  • help for you to recognize some of the various modes of failure, and
  • confidence for gathering what may be a useful collection of

state or debugging information to present in a bug report (with maybe an initial guess as to which set of developers may be the initial audience for the bug report). Realize that as drivers for networking hardware are updated, as new technology is introduced within the networking hardware, and other changes are made in the Linux system, you may witness a failure of your combination of wireless software and hardware for a combination that e.g.:

  • has not previously functioned correctly, or
  • has operated flawlessly until a regression was made in a recent change.

In either case, the developers are unlikely to repair the failure unless you report your experience.

We start with a field guide to the appearance of some of the Desktop (or Graphical User Interface) applications which may provide some status information about your network connectivity or offer some control or configuration choices.

NOTE BENE: Only ONE of these network management applications (e.g. NetworkManager, Network Monitor, KWiFiManager) should be active at any given time. Otherwise unintended interactions may prevent your network connection from working well.

Wireless Networking Applications under GNOME

This section describes applications which run in the GNOME environment. If you are unsure whether you are currently using GNOME, try to select the System entry in the top panel, and notice if there is an entry in the middle of the resulting drop-down menu titled About GNOME. If there is, you are reading the correct section of this document.

If you are currently running in the environment of a window manager other than GNOME, you may start GNOME via (First save any work you have in progress.):

  • KMenu, Log Out, or
  • KMenu, Switch User

(if you know the password for another Username on this system). On the resulting graphical login screen, after selecting the Username and typing the Password:

  • select Options (beneath the Username / Password textbox),
  • then select Select Session... from the context menu,
  • then select GNOME, and
  • then select the Change Session command button,

If GNOME is not a choice in the next to last step above, you will need to install it first. If you are running KDE, this can be done via KMenu, System, Add/Remove Software. Within the resulting Package Manager application, select Desktop Environments (in the left pane), and select GNOME Desktop Environment in the right pane. Use the Apply command button to start the process.

NetworkManager

Appearance of NetworkManager

NetworkManager runs by default on systems which were installed from the one of the LiveCD versions of Fedora 7. NetworkManager is already running on your system if in the notification area (in some default desktop configurations, this is in the top panel near the right side, probably just to the left of the User Name and the clock) there is a icon resembling:

  • two overlapping terminal screens with an

overlaid icon of a white X on a red background (when you have No network connection, or Networking disabled as the hover text displays), [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/gnome/22x22/places/gtk-stop.png, alt=overlaid no connection icon (once masked to square shape), if NetworkManager installed on your system ]

  • two overlapping terminal screens

(when you have e.g. Wired network connection, as the hover text displays), or [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/gnome/22x22/places/gtk-network.png, alt=mirror image of wired network icon, if NetworkManager installed on your system ]

  • the 4 stair-step style bar graph of

wireless access point signal strength (when the hover text is similar to e.g. Wireless network connection to 'YourNetworkName' (56%) when you are within range and authenticated with a wireless network) [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/22x22/apps/nm-signal-00.png, alt=0 bars ] [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/22x22/apps/nm-signal-25.png, alt=1 bars ] [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/22x22/apps/nm-signal-50.png, alt=2 bars ] [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/22x22/apps/nm-signal-75.png, alt=3 bars ] [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/22x22/apps/nm-signal-100.png, alt=4 bar icon, if NetworkManager installed on your system ]

  • (need description of this NetworkManager icon and hover text)

" ? " (when you are within range and authenticated with a Bluetooth network) Note that NetworkManager will automatically switch from a wireless network to a wired network, when one becomes available.

The terminal screens in this icon appear to have a 4:3 aspect ratio, and the icons of the screens do not blink when network traffic occurs on the wired network.. This icon (in some of its states) closely resembles the icon used by another program. To verify that this icon is the public face of NetworkManager (and not Network Monitor), point at the icon and select it with secondary click (default right mouse button), and from the resulting context menu select About. If the resulting displayed dialog includes something like NetworkManager Applet 0.6.5 you are reading the correct section of this document.

How to Activate NetworkManager

So you wish to try using the NetworkManager applet, but it is not currently running? First stop or kill any other network management application that is running. Select the System entry in the top panel, select the Administration entry in the resulting menu, then select the Services entry in the cascaded menu.

Warning (medium size).png
Unless your username has been granted access to run the Service Configuration application /usr/bin/system-config-services by the sudo utility , you will need to supply the root password to continue.

On the Background Services tab of the Service Configuration application, in the left hand pane select the checkbox beside NetworkManager then select the Start icon at the top of the pane. Also select File, Save Changes if you would like to have NetworkManager running after future system restarts / reboots.


How to Deactivate NetworkManager

So you wish to try some other network management application than NetworkManager? Select the System entry in the top panel, select the Administration entry in the resulting menu, then select the Services entry in the cascaded menu.

Warning (medium size).png
Unless your username has been granted access to run the Service Configuration application /usr/bin/system-config-services by the sudo utility , you will need to supply the root password to continue.

On the Background Services tab of the Service Configuration application, in the left hand pane select the NetworkManager line, then select the Stop icon at the top of the pane. Also select File, Save Changes if you would like to leave NetworkManager inactive after future system restarts / reboots.

Partial Documentation for NetworkManager

Since as of yet there seems to be no compact collection of complete documentation for NetworkManager (beyond e.g. a Frequently Asked Questions page: [2] and a little bit of other information on the GNOME project page: [3] ), here are some hints toward what behaviors to expect. While some people assert that NetworkManager labors with one goal, namely "to manage your network connection", some users perceive NetworkManager to wander among a complicated set of goals. Here, we do not attempt to describe in detail how this application interacts with your wired or Bluetooth networks. We attempt to remain focused on how NetworkManager may assist you with your goal of using your wireless network.

When you are within range of a [#Sec secured wireless network] , the icon may not reveal this fact if you are also still within range of another __unsecured__ wireless network, or are connected to a wired network. However, if you make a primary selection (with default left mouse button) on the NetworkManager icon in this circumstance, the context menu will reveal under the heading Wireless Networks a list resembling:

  • [ radio button] SecuredNetworkName [ icon of hand grabbing a wave] [strength]
  • [ radio button] UnSecuredNetworkName [ signal strength bar graph]

If you select the radio button by the SecuredNetworkName, a dialog window will open. [ It may not open as the topmost window, so notice if a new window appears ]in the list across the bottom panel, and minimize or drag aside other applications as needed to see this one. The dialog will be titled Wireless Network Key Required and will contain something similar to:

Passphrase Required by Wireless Network
A passphrase or encryption key is required to access the
wireless network 'SecuredNetworkName'.
Wireless Security:  WEP 128-bit Passphrase (drop-down list may include)
WEP 64/128 bit Hex
WEP 64/128 bit ASCII
LEAP
WPA
WPA2
PEAP
EAP-TLS
Passphrase:
(default unselected checkbox) Show passphrase
Authentication:  Open System  (drop-down list from textbox)
Shared Key
Cancel  Connect

Note that a 128-bit WEP key is expressed in 13 characters or 26 hex digits,. while a 40-bit key takes five characters (10 hex digits).

Idea.png
Why does the Connect command button remain greyed-out and unavailable for me to select?
If you select WEP 64/128 bit Hex or WEP 64/128 bit ASCII and do not enter the correct number of characters or digits for the key, the Connect command button will remain inoperative. Count those characters or digits correctly!

Once you select the Connect command button, the NetworkManager icon changes into something resembling a comet chasing its tail in a circle between two LEDs while the wireless network adapter attempts to authenticate and join the network. [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/22x22/apps/nm-stage03-connecting04.png, alt=one still frame from the connecting icon series, if NetworkManager is installed on your system ]

If your network is not broadcasting its ESSID (Extended Service Set Identifier) you will need to:

  • make a primary selection (with default left mouse button) on the NetworkManager icon,
  • select in the resulting context menu Connect to other network, and then
  • select the options to properly configure it.

Reporting Bugs in NetworkManager

NetworkManager is still being designed and developed. You may wish to read the developer's partial list of features which are under development, or planned for future consideration: [4]

There is an email discussion list dedicated to the topic of NetworkManager: [5] You may wish to search the archives of this list for reports about wireless networking issues which resemble your current puzzle. If there are still unresolved questions, join this email list, and post your question or bug report.

You can search among failures previously reported to GNOME's database of NetworkManager bugs: [6] [7] You can register, login, and report new bugs to this database.

If you encounter a previously unreported failure, DO NOT follow the advice listed on the FAQ page for debugging: [8] to:

  • stop NetworkManager,
  • restart it by entering the following command in a terminal:
$ sudo Network<code></code>Manager --no-daemon > nmlog.txt 2>&1
  • repeat the attempt to connect to your wireless network.

This technique may work properly under other Linux distributions, but as NetworkManager is configured under Fedora different techniques are used [#NMActivate to activate NetworkManager] and [#NMDeactivate to deactivate NetworkManager] .

Instead, while NetworkManager (and no other network configuration application) is running,

  • repeat the attempt to connect to your wireless network.
  • then extract all of the relevant lines from

/var/log/messages e.g. via:

  • selecting the System entry in the top panel,
  • selecting the Administration entry in the resulting menu, then
  • selecting the System Log entry in the cascaded menu.
Warning (medium size).png
Unless your username has been granted access to run the System Log or System Log Viewer application /usr/sbin/gnome-system-log by the sudo utility , you will need to supply the root password to continue.
  • Within the System Log Viewer application:
  • Select /var/log/messages in the left pane,
  • Select today's date (if needed) in the right pane,
  • Scroll down to the first NetworkManager message,
  • __While holding down the Shift key__ use the cursor down arrow key

to scroll down (possibly a few hundred lines) to the last NetworkManager message.

  • Select Edit from the menu bar of System Log Viewer, then
  • select Copy from the resulting drop-down menu.
  • In your favorite text editor (e.g. gedit, vi, emacs)

Paste these selected lines, and

  • Save this file as e.g. nmlog.txt

It would be wise to edit this file to obscure portions of

  • IP addresses,
  • ESSID names,
  • keys,
  • passphrases or

other information which should remain private, then Save this sanitized version of the file. The debug log in the file e.g. nmlog.txt should then be attached to your bug report at: [9]

Network Monitor

Appearance of Network Monitor

Network Monitor runs by default on systems which were installed from the full DVD version of Fedora 7. Network Monitor is already running on your system if in the top panel (in some default desktop configurations, this is in the top panel near the right side, probably a little bit to the left of the User Name and the clock) there is a icon resembling one of:

  • two overlapping terminal screens

with hover text Network Connection: lo (for the local loopback device)

  • two overlapping terminal screens

with the rear screen in the icon blinking when your system receives data [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/48x48/apps/gnome-netstatus-rx.png, width=64, height=48, alt=receiving icon, if Network Monitor installed on your system ] and with the front screen in the icon blinking when your system sends data, and with hover text e.g. Network Connection: eth0, or the same icon with an icon of a white X on a red background in some conditions when the network cable is disconnected or your system is not connected to the wireless network, but with the same hover text. In addition, when when a wireless network device is selected immediately to the right of the terminal screens an additional portion of the icon:

  • displays a vertical stacked bar graph of signal strength

(which may appear merely as a diamond shape for a very weak signal), [[Image:Docs_Drafts_WiFiNetworking_file:////usr/share/icons/hicolor/48x48/apps/gnome-netstatus-75-100.png, alt=4 bar icon, if Network Monitor installed on your system ] and

  • changes color, with the bar graph being green when you are connected

to the network, or red when your system is not connected to the network.

The terminal screens in this icon appear to have a 16:9 aspect ratio. This icon (in some of its states) closely resembles the icon used by another program. To verify that this icon is the public face of Network Monitor (and not NetworkManager), point at the icon and select it with the secondary selection button (default right mouse button) then select About from the resulting context menu, and the resulting dialog will reveal it to be e.g. "Network Monitor 2.12.1"

How to Activate Network Monitor

If you are running GNOME, but do not currently have Network Monitor running, first stop or kill any other network management application that is running. Use the secondary selection button on the top panel, and in the resulting context menu select Add to Panel.... In the resulting Add to Panel dialog, scroll down to select Network Monitor.

(Since the gnome-netstatus package is currently one of the 37 packages included in a default installation of the GNOME Desktop Environment, you should not have to make any special effort to install this applet.)

Documentation for Network Monitor

The Network Monitor Manual can be opened by

  • moving your mouse or pointing device over the Network Monitor icon,
  • selecting it with the secondary selection button

(default right mouse button), then

  • selecting Help from the resulting context menu.

Making a primary selection (default left button select) on the Network Monitor icon, or making a secondary selection (default right button select) on the icon then selecting Properties from the resulting context menu will open the Connection Properties: network_device dialog. This application will NOT automatically change the network device it monitors / displays / uses. But it does automatically update the list of devices available in the Name: textbox drop-down list of this Connection Properties: dialog. For example, when there is no other network device active, the list in the Name: textbox of the General tab of this properties dialog consists of:

  • lo (local loopback)

When another network device is or devices are active, this list may grow to include e.g.

  • eth0
  • eth1 (... with a signal strength bar graph within the dialog

for a wireless network adapter)

  • lo (local loopback)

Note that this dialog also shows e.g. network packet received and sent counts. This can provide a more compact way to view some of the information available from running System, Administration, System Monitor and watching the Network History portion of the Resources tab.

Reporting Bugs in Network Monitor

[10]

Wireless Networking Applications under KDE

This section describes applications which run in the KDE environment. If you are unsure whether you are currently using KDE, try to select the K icon (with flyover text of KMenu - Applications, tasks,and desktop sessions) for the Application menu in the bottom panel, and notice if the resulting menu is labelled something similar to KDE 3.5 along the left vertical edge. If it is, you are reading the correct section of this document.

If you are currently running in the environment of a window manager other than KDE, you may start KDE via (First, save any work you have in progress.):

  • System, Log Out, or
  • via the User Switcher in the notification area of the top panel

(if you know the password for another Username on this system). On the resulting graphical login screen, after selecting the Username and typing the Password:

  • select Options (beneath the Username / Password textbox),
  • then select Select Session... from the context menu,
  • then select KDE, and
  • then select the Change Session command button,

If KDE is not a choice in the next to last step above, you will need to install it first. If you are running GNOME, this can be done via Applications, Add/Remove Software. Within the resulting Package Manager application, on the Browse tab select Desktop Environments (in the left pane), and select KDE (K Desktop Environment) in the right pane. Also, select the List tab, and select kdenetwork-extras -... - Extras packages from KDEnetwork Use the Apply command button to start the process. Installing these packages will consume at least as much time as is required to download 230 MiB over your network connection.

KNetworkManager

Appearance of KNetworkManager

KNetworkManager is already running on your system if in the notification area (in some default desktop configurations, this is in the bottom panel near the right side, probably just to the left of the User Name and the clock) there is a icon resembling:

  • a cable outside of a port with a white X in red square in front

with hover text of Disconnected, or

  • an ethernet connector on end of wire

with hover text similar to Wired ethernet connection active: eth0

On the slight chance there is any remaining doubt about the identity of this application, make a secondary selection (using the default right mouse button) on the assumed KNetworkManager icon, and the presence of KNetworkManager as the title of the resulting menu should confirm your assumption.

How to Activate KNetworkManager

So you wish to try using the KNetworkManager applet, but it is not currently running? First stop or kill any other network management application that is running. Then select KMenu, select System, select KNetworkManager.

If you attempt to start KNetworkManager via the KMmenu, and it appears nothing happens, open a terminal window and try again. That is, select KMenu, select System, select Terminal and in the resulting window titled "user@system:dir = Shell - Konsole" at the command prompt type:

knetworkmanager

(all lowercase). If the response is:

org.freedesktop.Network<code></code>Manager<code></code>Info already owned.

then another user is already running this application. If you are on friendly terms with this other user, you may use KMenu, Switch User to select their existing session, and after supplying their password you can end their KNetworkManager or NetworkManager session. (? is there a safer / easier way than killing notification area applet and NetworkManager (root pw) )

Documentation for KNetworkManager

As of yet, there is no documentation available for KNetworkManager within the KDE Help Center (which is available via e.g. KMenu, Help). Given the heritage of the application as "a NetworkManager front-end for KDE", the clues offered above as [#NMDoc Partial Documentation for NetworkManager] should be pertinent. The visual presentation of information is different between the GNOME and KDE versions, but one assumes some of the base behaviors are quite similar.

Reporting Bugs in KNetworkManager

[11]

Make a secondary selection (using the default right mouse button) on the KNetworkManager icon, on the resulting menu select Help, and on the resulting cascaded menu select Report Bug.... This will allow you the opportunity to send email to bugs@kde.org with your bug report.

system-config-network

There are at least two paths through the menus when running KDE that lead to this same system-config-network utility.

  • Select KMenu,

select System, then select Network Device Control from the cascaded menu.

  • Alternatively select KMenu,

select Administration, then select Network from the cascaded menu.

Warning (medium size).png
Unless your username has been granted access to run the system-config-network application /usr/sbin/system-config-network by the sudo utility , you may find this application to be impotent.
When running as a normal user, selecting the Activate command button leads to an error messagebox Cannot activate network device eth1! Users cannot control this device. OK instead of a state change, and selecting the Configure command button leads to a challenge to supply the root password, before a window with a tabbed view of the devices is displayed.

KWiFiManager

Appearance of the KWiFiManager Applet

The KWiFiManager applet uses as its icon in the notification area the 4 stair-step style bar graph of wireless access point signal strength (with the hover text similar to e.g. SSID: YourNetworkName).

Once you have opened the KWiFiManager application (e.g. by making a secondary selection (default right mouse button) on the KWiFiManager applet icon, then selecting Restore from the context menu) its dialog can be identified by the title of the window.

How to Activate KWiFiManager

Make a secondary selection (default right mouse button) on an empty area of the bottom panel, select Add Applet to Panel... from the context menu, and in the resulting Add Applet - KDE Panel dialog select: Wireless Network Information which has the description of Displays information about wireless network devices.

If this choice is not available, you will need to install the package containing KWiFiManager by selecting KMenu, selecting System, then selecting Add/Remove Software from the cascaded menu.

Warning (medium size).png
Unless your username has been granted access to run the Package Manager application /usr/bin/pirut by the sudo utility , you will need to supply the root password to continue.

Within the resulting Package Manager application, on the List tab select kdenetwork-extras -... - Extras packages from KDEnetwork Use the Apply command button to start the installation. Once the installation is complete, you will need to log out and log back in, or use the User Switcher to start a new session in order to activate KWiFiManager as [#KWMActivate described above] .

If you do not want to run the notification area applet, you can select KMenu, select Internet, select More Applications, then select KWiFiManager to start the application.

Documentation for KWiFiManager

From within KWiFiManager select Help, then select KWiFiManager Handbook to read thorough the documentation.

The same information is also available by selecting KMenu, selecting KDE Help, selecting Application Manuals, selecting Internet, selecting More Applications, then selecting KWiFiManager.

Note that the encryption status of a wireless connection is displayed only if you are [#Sudo running KWiFiManager as root] . Also, scanning for networks is likely to provide complete or consistent results only if KWiFiManager was [#Sudo started by the root user] .

[guest@localhost ~] $ sudo kwifimanager &
Password:
[1]  3956
[guest@localhost ~] $ kbuildsycoca running...

Selecting File, then selecting Connection Statistics opens a real-time graph of the signal strength from the wireless access point

Selecting Settings, then selecting Configuration Editor

Warning (medium size).png
Unless your username has been granted access to run the KWiFiManager application /usr/bin/kwifimanager by the sudo utility , you will need to supply the root password to continue.

will open a dialog titled Configure - KDE Control Module where one can configure encryption keys, etc. for connecting to a [#Sec secured wireless network] .


Reporting Bugs in KWiFiManager

You can search for previously reported bugs, or report newly discovered bugs in KWiFiManager through Red Hat's bugzilla: [12] for the kdenetwork-extras component. You may also find information at the KWiFiManager project website: [13]

Might a Different Driver or Firmware Improve Matters?

You may be reading this section because you found that on your system at the moment the wireless networking components are not working and playing well together. In this situation it is possible that:

  • finding and loading new firmware

(software loaded into your wireless network adapter), and / or

  • finding and loading new drivers

(software loaded into your Fedora operating system) may lead to correctly operating wireless communications. Your manual efforts are required because

  • in some cases licensing constraints bar Fedora from redistributing

firmware that is known to be necessary (or at least better than what is still loaded on your hardware), and

  • for some hardware there are multiple drivers available,

and the one driver that works best for many users on other systems may not provide the best experience for all users.

The first step is to identify the wireless networking hardware in your system.

Since there are many different ways a wireless adapter can be packaged and built into or installed into your computer, there are different commands which may be needed to encourage your Fedora Linux software to compactly reveal to you what it knows about your wireless hardware. If you are running Gnome,

  • select the Applications entry in the top panel,
  • select the System Tools entry in the resulting menu, then
  • select the Terminal entry in the cascaded menu.

If you are running KDE:

  • select KMenu,
  • select System,
  • select Terminal.

In either case, type the following commands after the prompt (e.g. [user@localhost ~] #).

$ /sbin/lspci | grep 802
$ /sbin/lsusb
$ /sbin/pccardctl ident

If no relevant information seems to be provided in response to those queries, you may need to swim through the more voluminous output of

$ /sbin/lspci

If you are willing to take the time to read several short paragraphs, scan the section "5 How to identify a card" in: [14]

Once you know an identification for your device, you may learn more about it by reading the appropriate section under: [15] or [16]

You may find even more interesting details about the changes and interactions with software for your device by searching. As an example, if your wireless adapter is built around a Broadcom chipset, you may benefit by reading postings such as: https://www.redhat.com/archives/fedora-list/2007-July/msg04468.html https://www.redhat.com/archives/fedora-list/2007-July/msg02069.html

Now you are armed with the knowledge of what wireless networking hardware you are attempting to use, and the knowledge (or at least someone else's opinions) of which software pieces are thought to be best to configure and control that hardware. You may now be led to:

  • determine which version of firmware is loaded in your

wireless networking hardware (This is a device-dependent step you will need to find documented in your reading elsewhere.)

  • install a different version of firmware in your

wireless networking hardware (This is a device-dependent procedure you will need to find documented in your reading elsewhere.)

  • determine which driver is being loaded into

your Fedora Linux kernel to support this wireless hardware via:

$ /sbin/lsmod
  • if you have been led to try a different driver,
  • you may need to find the new or different driver

which may entail downloading its source and compiling it for your kernel, see the linked section for some clues on how this may be done: [17]

  • you may need to remove a currently loaded module via:
$ /sbin/modprobe -r Old''Module''Name ...    (maybe several)
  • you may wish to try loading a different module via:
$ /sbin/modprobe New''Module''Name
  • and then make these changes known by:
$ /sbin/service network reboot

See the linked section for some additional clues. [18]

Now, return to [#Gui the previous section] and see if your preferred (or any) desktop / GUI applications now provide a useful wireless network connection.

If even with another or the best known drivers and firmware the desktop / GUI applications do not provide a functional wireless network connection, you may wish to see if you can manually configure a useful connection by entering commands, as described in the following section.

Terminal Commandline Tools for Wireless Networking

Here is an outline of a sequence of commands you may be able to issue within a shell to configure and use your system's wireless networking capability. For example if you are running Gnome,

  • select the Applications entry in the top panel,
  • select the System Tools entry in the resulting menu, then
  • select the Terminal entry in the cascaded menu.

If you are running KDE:

  • select KMenu,
  • select System,
  • select Terminal.

In either case, type the following commands after the prompt (e.g. [user@localhost ~] #). Once you find a sequence of commands with a set of proper parameters that tickles your wireless networking device into a working state, you probably wish to record this sequence of commands in a shell script to improve your chances for repeatable success.

It would be wise to Restart or Boot your system before beginning this procedure, as your previous attempts with other tools may have left the system in an interesting or inconsistent state.

Start by querying to find the device name for your wireless networking gear:

$ /sbin/iwconfig

In this example we will carry on using eth1 as the wireless device name; your device name is likely to differ.

Next, configure the wireless interface to be up:

Warning (medium size).png
If your username has not been granted access to run the /sbin/ifconfig command by the sudo utility , you will need to preface this command with su -c ', add a closing single quote at the end, and supply the root password when prompted to be able to continue.
$ /usr/bin/sudo '/sbin/ifconfig eth1 up'

Are there signals from wireless routers or access points available in your current location?

$ /sbin/iwlist eth1 scan

Depending upon the security mechanism in use for this wireless network, follow the appropriate one set of steps below:

1. If you recognize the name of your wireless network in this output, and you are brave enough to be running it with no encryption , configure your wireless interface to associate with the device whose MAC address you supply, which you obtain from your prior knowledge of your network and verify from the response to the previous iwlist ... scan command

Warning (medium size).png
If your username has not been granted access to run the /sbin/iwconfig command by the sudo utility , you will need to preface this command with su -c ', add a closing single quote at the end, and supply the root password when prompted to be able to continue.

|}

$ /sbin/iwconfig eth1 ap BE:EF:FE:D0:A5:58

This is a bit safer than configuring an unsecured network with. e.g.

$ /sbin/iwconfig eth1 essid "YourNetworkName"

as it would be rather simple for someone to plant a new access point which impersonates at least the ESSID of your previously existing network, yet which mainly logs your keystrokes to capture passwords, etc.; yes, folks with no ethics may also spoof the MAC address of a previously existing network, but that usually requires a bit more effort.

1. If you recognize the name of your wireless network in this output, and you are brave enough to be running it with the easily-compromised WEP encryption , you may configure your wireless interface to associate after supplying the encryption key.

Warning (medium size).png
If your username has not been granted access to run the /sbin/iwconfig command by the sudo utility , you will need to preface this command with su -c ', add a closing single quote at the end, and supply the root password when prompted to be able to continue.
$ /sbin/iwconfig eth1 key dead0beef1cafe2fed3abe4ba
$ /sbin/iwconfig eth1 ap BE:EF:FE:D0:A5:58

This example illustrates configuring an encryption key for a network using a 128-bit WEP key, which should be expressed in 13 characters or 26 hex digits. If network is using a 40-bit WEP key, it should be expressed in exactly 5 characters or 10 hex digits.

1. If you recognize the name of your wireless network in this output, and your network uses Wi-Fi Protected Access or WPA encryption, there are a few additional configuration steps. You may wish to read portions from:

$ info wpa_passphrase
$ info wpa_supplicant.conf
$ info wpa_supplicant

To save you from the error-prone task of entering a 256-bit PSK (Pre-Shared Key) via your keyboard, you may wish to append the standard output of the command that generates the WPA PSK directly into the configuration file,

Warning (medium size).png
Given the file access permissions for /etc/wpa_supplicant/wpa_supplicant.conf you will need to preface this command with su -c ', add a closing single quote at the end, and supply the root password when prompted to be able to continue.
$ /usr/sbin/wpa_passphrase YourESSID >>/etc/wpa_supplicant/wpa_supplicant.conf
Type your secret passphrase in plain text, then press Enter.

Substitute the name of your network or its ESSID (Extended Service Set Identifier) in place of YourESSID The passphrase has a length limit of 64 characters. Alternatively:

$ /usr/sbin/wpa_passphrase YourESSID
Type your secret passphrase in plain text, then press Enter.
network={
ssid="YourESSID"
psk=fc757c332c4d18a06da91a5670e25fab1b6b8b296e2da5a74029be7a72b8cde8
}

and then Copy the 5 lines of output into the configuration file. Also, within /etc/wpa_supplicant/wpa_supplicant.conf if the network is using the weaker WPA (compared to WPA2) encryption the following lines should appear within this network stanza:

key_mgmt=WPA-PSK
proto=WPA

while if the network is using the stronger WPA2 (compared to WPA) encryption the following lines should appear within this network stanza:

key_mgmt=WPA-PSK
proto=RSN
Warning (medium size).png
But you will need to start your edit session with root privileges, or have the superuser perform this editing task for you. If you create multiple conflicting stanzas in this file, you may need to edit out the erroneous stanzas.

You may also need to alter the contents of another configuration file, /etc/sysconfig/wpa_supplicant

Warning (medium size).png
Given the file access permissions for /etc/sysconfig/wpa_supplicant you will need to start your edit session with root privileges, or have the superuser perform this editing task for you.

The INTERFACES line should refer to the name of your wireless device, and the DRIVERS line should be appropriate for your wireless hardware. You may wish to re-read a portion of:

$ info wpa_supplicant

It is possible that lines such as

INTERFACES="-iwlan0"
DRIVERS="-Dwext"

may be appropriate (using the generic wireless extensions driver).

Now, you need to start the wpa_supplicant system service.

Warning (medium size).png
If your username has not been granted access to run the /sbin/chkconfig command by the sudo utility , you will need to preface this command with su -c ', add a closing single quote at the end, and supply the root password when prompted to be able to continue.
$ /sbin/chkconfig wpa_supplicant on


1. EAP ...

You may find some additional relevant wireless configuration instructions in: [19]


At this point, the wireless device specific configuration steps should be complete, and now you merely wish to configure this network link to be a useful link to the remainder of the network, just as if you were configuring a wired network connection. Namely, if your Internet Service Provider or network administrator has informed you to use the Dynamic Host Configuration Protocol (DHCP) try:

$ dhclient eth1

(as above, substituting your wireless interface device name for eth1) and your system should now be in communication with the DHCP server, and soon allow you to communicate with the remainder of the network. Otherwise, you will probably need to configure:

  • a static IP address for your system,
  • the IP address(es) for your nameserver(s),
  • the gateway IP address, and
  • the netmask.

via the ifconfig and route commands again per information from your Internet Service Provider or network administrator.

You may find some additional relevant network configuration instructions in: [20]

Diagnostic Steps

Recognize that your wireless network may encounter accidental competition or jamming or radio frequency interference from other devices such as:

  • portable cordless telephones,
  • baby monitor systems, and
  • maybe other electronic devices such as microwave ovens

So if you can configure your wireless network device well enough to at least see a measure of the received signal strength it detects, you may gain enough information to focus on the real problem. Moving the location of your computer system or even the location of the wireless access point or router, or selecting a different channel (radio frequency used for communication) may reduce interference. Such physical activities may be simpler to implement than learning more about the software ingredients of a working wireless network connection.

While it may be a source of frustration as you attempt to configure and use your own network, take solace in the following for how it also slightly complicates life for those who would attempt to use your network without permission. In some situations, one cannot distinguish between:

  • attempting to associate with a secured network using

an incorrect key or passphrase

  • attempting to authenticate with the incorrect protocol

(e.g. WEP when WPA is needed) Beware of your own fumble-fingered typing, and of keyboard keys in marginal condition which sometimes transmit zero or two events when you intended a single keypress. Unfortunately for you, but fortunately in general, no debug log or query will provide helpful insights such as

You made a typographical error beginning at the 37th character
of the passphrase.

An interesting query is:

$ /sbin/iwconfig

which can list:

  • which 802.11 protocol (among a, b, g, and maybe someday n) is in use
  • the name or ESSID of the network with which your system has associated
  • the frequency (channel) used for wireless communication with this network
  • the MAC address of the network access point (or router)
  • the communication rate available with the current signal strength
  • the encryption key in use, if any
  • as well as several other measures of signal strength, and

counters of various packet transmission or reception events. The absence of a field that you believe to have been configured, or the presence of a surprising value in one of these fields may provide insight as to the cause of wireless network communication failures.

If you have installed NetworkManager on your system, the following command shows some of the state of your wireless network:

$ /usr/bin/nm-tool

If your wireless networking device and driver supports it, try:

$ /sbin/iwspy

Another revealing command is:

$ /sbin/iwevent

which you may wish to leave running in a terminal while a set of wireless network configuration commands are issued.

You may even wish to attempt to monitor the packets transmitted over the wireless network, e.g..

$ /sbin/iwconfig wlan0 mode monitor
$ /sbin/iwconfig wlan0 channel 11
$ /usr/sbin/tcpdump -i wlan0
v

You may find some additional wireless network diagnostic instructions in: [21]

Hints Toward a More Secure Wireless Network

The zeroth step in any initial connection attempt to a wireless network is information collection. If the wireless access point or router with which you wish to communicate filters its responses by MAC address (which is a useful technique for improving the security of a wireless network), you need to have the MAC address of __your__ wireless adapter added to the list. You can learn the MAC address of your wireless adapter from:

  • viewing the "HWaddr" in the response to the ifconfig command:
$ /sbin/ifconfig
eth0      Link encap:Ethernet  HWaddr 00:01:30:68:48:59
:

(Yes, if your wireless adapter has not yet been successfully configured, it may not yet be displayed in this output; in any case, ensure that you note the MAC address for your wireless adapter, as there may be additional MAC addresses displayed for wired network adapters.),

  • visual inspection of the adapter for a label containing

an address of the form of 12 hex digits, conventionally shown in 6 groups of 2 digits, separated by either spaces or colons ":", or

  • if the network adapter is installed on a system where

Microsoft Windows can be run, viewing the response to the command

> ipconfig /all

issued in a command prompt window.

If you:

  • have administrative control over your wireless access point or router, and
  • all of the other devices which participate in this wireless network

have hardware and software support for WPA or WPA2 your network will be more secure using WPA2, which is more secure than WPA, which is more secure than any variety of WEP, which is better than an unsecured network with no encryption at all..

LEAP

PEAP

EAP-TLS

Using the sudo Command

Several of the wireless networking configuration or diagnostic applications or commands noted in this document require root or superuser privileges to run. If you are a mere user on your Fedora system, this may imply that resolving your wireless networking puzzles is the responsibility of the individual who is the root user or the superuser. Or it may imply that you would like to seek permission from that individual to be allowed to run some of these applications or commands to assist in resolving the networking problems.

As has been observed elsewhere, e.g. [22] due to the lack of an audit trail and the increased security risks it is not wise for someone to merely tell you what the root password is.

Type

$ info sudo

or, if you prefer

$ man sudo

following the shell prompt (e.g. $) to learn more about the sudo (super user do) maintenance command.

Troubleshooting the regulatory domain restrictions

A regulatory domain is a region (such as USA, Europe, but also separate countries) where the same regulations for wireless networking apply. These regulations contain among other things also restriction what channels (frequencies) are allowed to be used for wireless in the specified domain. This can cause several problems as these restriction differ among many regulatory domains of course -- including allowed channels:

USA (FCC) Channels 1-11
Canada (IC) Channels 1-11
Europe (ETSI) Channels 1-13
Japan (TELEK) Channels 1-14

Note: this table is not kept to be up to date.

No wireless adapter should use channels which are not permitted in the regulatory domain. Therefore, since kernel 2.6.24, the default regulatory domain is set to be USA for drivers based on the mac80211 stack. Currently (05/2008) there is only one other choice available, namely the Japanese regulatory domain which can be set by adding the following line into you /etc/modprobe.conf file:

options cfg80211 ieee80211_regdom="JP"

This can be helpful also for other countries (e.g. if you come accross a network which uses channel 13 in Europe). Handling of regulatory problems is a known problem which should be solved in the future kernel development.

Sources:

http://www.cisco.com/en/US/docs/wireless/access_point/1200/vxworks/configuration/guide/bkscgaxa.html http://www.cisco.com/en/US/docs/wireless/wlan_adapter/cb21ag/admin/2.0/administration/guide/auappb.html https://bugzilla.redhat.com/show_bug.cgi?id=438756

Other Linux Wireless Networking Documentation

[23] ManagerFAQ

[24]

[25]