Беспроводная сеть на Linux обычно просто настраивается. Существует два пути конфигурации wifi: либо с использованием графического клиента, либо из командной строки.
Однако, если вам не нужно использовать графический клиент, то вы можете сконфигурировать wifi из командной строки, отредактировав несколько конфигурационных файлов. Это потребует немного больше времени для настройки, но также и требует меньше пакетов для скачивания и установки. Так как графические клиенты в большинстве своем понятны (с полезными скриншотами на своих сайтах), мы сфокусируемся на альтернативах — утилитах командной строки.
Вы можете настроить беспроводную сеть из командной строки, установив
# emerge net-wireless/wpa_supplicant
Теперь нам необходимо настроить
# выбор wpa_supplicant modules="wpa_supplicant"# важно указать wpa_supplicant, какой драйвер нужно использовать, # так как программа пока не слишком хорошо угадывает сама wpa_supplicant_eth0="-Dбезумный-wifi"
Это довольно просто, не так ли? Однако, нужно настроить саму программу
# следующую строку нельзя изменять, иначе программа не сможет работать ctrl_interface=/var/run/wpa_supplicant# ограничим доступ к настройкам WPA только для root ctrl_interface_group=0# пусть wpa_supplicant заботится о сканировании и выборе точки доступа ap_scan=1# простой случай: WPA-PSK, согласованный ключ - текстовая строка, # принимать любой допустимый шифр network={ ssid="просто" psk="очень тайный пароль"# чем выше приоритет, тем скорее выбор priority=5 }# как в предыдущем, но с запросом сканирования по определенному SSID # (для точек доступа, отклоняющих широковешательный SSID) network={ ssid="второй ssid" scan_ssid=1 psk="очень тайный пароль" priority=2 }# использовать только WPA-PSK; принимать любое допустимое сочетание шифров network={ ssid="пример" proto=WPA key_mgmt=WPA-PSK pairwise=CCMP TKIP group=CCMP TKIP WEP104 WEP40 psk=06b4be19da289f475aa46a33cb793029d4ab3db7a23ee92382eb0106c72ac7bb priority=2 }# открытое подключение без шифрования (не WPA, не IEEE #802.1X) network={ ssid="тест-открытого-текста" key_mgmt=NONE }# подключение с общим ключом WEP (не WPA, не IEEE #802.1X) network={ ssid="тест-статического-wep" key_mgmt=NONE# Ключи в кавычках считаются ASCII-ключами wep_key0="abcde"# Ключи без кавычек считаются hex-ключами wep_key1=0102030405 wep_key2="1234567890123" wep_tx_keyidx=0 priority=5 }# подключение с общим ключом WEP (не WPA, не IEEE #802.1X), # допуск c использованим общего ключа IEEE 802.11 network={ ssid="тест2-статического-wep" key_mgmt=NONE wep_key0="abcde" wep_key1=0102030405 wep_key2="1234567890123" wep_tx_keyidx=0 priority=5 auth_alg=SHARED }# сеть IBSS/ad-hoc с WPA-None/TKIP network={ ssid="тест adhoc" mode=1 proto=WPA key_mgmt=WPA-NONE pairwise=NONE group=TKIP psk="тайный пароль" }
Для настройки Wireless Tools служат несколько основных переменных. В примере файла настроек, приведенном ниже, описано все, что вам потребуется. Нужно помнить, что отсутствие настройки означает «подключаться к нешифрующей точке доступа с самым сильным сигналом». Программа будет всегда пытаться подключить вас к чему-нибудь.
# emerge net-wireless/wireless-tools
# приоритет использования iwconfig над wpa_supplicant modules="iwconfig"# Настройка ключей WEP для точек доступа ESSID1 и ESSID2 # Можно указывать до 4 ключей WEP, но только 1 может работать в каждый # момент, поэтому мы указываем индекс по умолчанию [1], чтобы сделать ключ [1], # а впоследствии снова, чтобы изменить активный ключ на [1]. # Это нужно, если вы настраиваете другие ESSID на использование WEP-ключей, # отличающихся от [1]. # # Приставка s: перед ключом означает, что ключ текстовый, иначе - # шестнадцатиричный # # enc open указывает открытую защиту (более безопасно) # enc restricted указывает ограниченную защиту (менее безопасно) key_ESSID1="[1] s:ваш-ключ-здесь key [1] enc open" key_ESSID2="[1] aaaa-bbbb-cccc-dd key [1] enc restricted" ## Нижеследующее работает только при поиске доступных точек доступа. # Иногда видны несколько точек доступа, и требуется задать # предпочтительный порядок подключения preferred_aps="ESSID1 ESSID2"
Можно указать несколько дополнительных параметров для уточнения порядка выбора точки доступа, но обычно этого не требуется.
Вам решать, подключаться ли только к указанным точкам доступа, или нет.
По умолчанию, если подключение ко всем настроенным точкам доступа не удалось,
и есть возможность подключиться к нешифрующей точке доступа, такое соединение
произойдет. Этот порядок зависит от переменной
Значение | Описание |
---|---|
Наконец, мы можем указать
# иногда требуется полностью исключить возможность подключения # к определенным точкам доступа blacklist_aps="ESSID3 ESSID4"# если у вас несколько беспроводных плат, можно указать, можно ли им # подключаться к одной и той же точке доступа # значение - "yes" или "no" # по умолчанию - "yes" unique_ap="yes"
Если вы хотите становиться отдельным узлом (ad hoc), когда не удается подключиться ни к какой точке доступа в ведомом режиме, это тоже возможно.
adhoc_essid_eth0="Этот отдельный узел"
Как насчет подключения к сетям Ad-Hoc или запуска в режиме ведущего (master), чтобы стать точкой доступа? Есть конфигурация и для такой работы! Вам может потребоваться определить WEP-ключи, как показано выше.
# установка режима: допускается managed (ведомый, по умолчанию), # ad-hoc (отдельный) или или master (ведущий). Не все драйверы поддерживают # каждый режим mode_eth0="ad-hoc"# установка ESSID интерфейса # в ведомом режиме заставляет интерфейс пытаться подключиться к указанному # ESSID, и больше ничего essid_eth0="Этот отдельный узел"# если не указан, используется канал 3 channel_eth0="9"
Существуют дополнительные переменные, которые можно использовать для запуска своего беспроводного оборудования и устранения неполадок, возникших из-за драйвера или проблем с сетевым окружением. Ниже приведена таблица прочих функций, которые можно перепробовать.
Переменная | Значение по умолчанию | Описание |
---|---|---|
Иногда необходим статический IP при соединении с
config_ESSID1="192.168.0.3/24 brd 192.168.0.255" routes_ESSID1="default via 192.168.0.1" config_ESSID2="dhcp" fallback_ESSID2="192.168.3.4/24" fallback_route_ESSID2="default via 192.168.3.1"# можно также указать сервера имен и др. # ПРЕДУПРЕЖДЕНИЕ: DHCP переопределит настройки, если не указано иное dns_servers_ESSID1="192.168.0.1 192.168.0.2" dns_domain_ESSID1="some.domain" dns_search_domains_ESSID1="search.this.domain search.that.domain"# перенастройка производится по МАС-адресу точки доступа; # это полезно, когда в разных местах есть точки доступа с одинаковым ESSID config_001122334455="dhcp" dhcpcd_001122334455="-t 10" dns_servers_001122334455="192.168.0.1 192.168.0.2"