LinuxCommandLibrary

crda

Configure wireless regulatory domain settings

SYNOPSIS

crda

DESCRIPTION

The crda command is a userspace helper program in Linux used to set the regulatory domain for wireless devices. Regulatory domains define the allowed frequencies, transmit power, and other parameters for wireless communication in a specific geographic region. crda typically interacts with the kernel's wireless subsystem (primarily mac80211) to ensure compliance with local regulations.

It accomplishes this by reading the regulatory domain from a configuration file (typically /etc/default/crda) and then using the nl80211 netlink interface to communicate this information to the kernel.

crda is often triggered automatically during system boot or when a wireless interface is brought up. It's an essential component for ensuring legal and safe wireless operation.

CAVEATS

crda itself doesn't take any command-line parameters. It reads its configuration from /etc/default/crda, and relies on the kernel to enforce the regulatory domain. Incorrect configuration can lead to non-compliant wireless operation or even legal issues. Proper configuration requires understanding local regulations and careful configuration of the wireless interface (using iw, or a similar tool).

CONFIGURATION FILE

The /etc/default/crda file typically contains a single line specifying the regulatory domain, for example: `REGDOMAIN=US`. This file is read by crda to determine the regulatory domain to set.

REGULATORY DOMAIN DETECTION

crda can also use the country code detected by the wireless device (e.g., from access point beacons) to automatically set the regulatory domain. If automatic detection fails or is not desired, the regulatory domain can be manually configured in /etc/default/crda.

HISTORY

crda was developed as part of the Linux wireless subsystem to provide a centralized mechanism for managing regulatory domains. It addresses the need to dynamically set the regulatory domain based on the detected country code or user-defined settings.

Historically, managing regulatory domains was a more manual process, potentially requiring kernel recompilation or complex configurations. crda simplified this process by providing a userspace tool to communicate with the kernel's mac80211 subsystem.

SEE ALSO

iw(8), iwconfig(8), rfkill(1)

Copied to clipboard