Вопрос или проблема
Как именно можно научиться создавать WiFi AP с помощью Ubuntu Server 22.04? Найдите эти ключевые слова в Google, и вы найдете противоречивые и устаревшие инструкции для более старых версий Ubuntu Server.
Я пытался использовать несколько страниц “как сделать”, но ничего не работает.
Надеюсь, это поможет:
Вот что я сделал, чтобы создать беспроводной хотспот на Raspberry Pi 3 Model B+. Эта конфигурация не предоставляет IP-адреса, поэтому вам нужен DHCP-сервер где-то в вашей сети для ее работы. Это специфично для IPV4, и Pi имеет статический адрес в сети. У меня также настроен локальный DNS-сервер в другой части моей сети, который предоставляет информацию о локальном частном домене, вот почему у меня есть запись поискового домена в Netplan [yourlocaldomain.lan]. Если у вас этого нет, то эта запись вам не нужна, но все равно нужно добавить запись для DNS-сервера.
Конфигурация WiFi настроена для использования в Австралии, поэтому вам нужно будет отредактировать это для другой страны. Все записи ниже, которые начинаются с “your”… вы должны ввести данные, соответствующие вашей сети. Например, yourStaticAddressofPi может стать 192.168.3.50, например. yournetmask в этом случае будет 24.
Я установил с изображением ubuntu-22.04-preinstalled-server-arm64+raspi.img.xz
. Затем применил все текущие обновления, т.е. sudo apt update, sudo apt upgrade, sudo reboot.
Затем я установил hostapd и wpa_supplicant. (sudo apt install hostapd, sudo apt install wpa_supplicant, sudo reboot). Конфигурация Hostapd (находится по адресу /etc/hostapd/hostapd.conf):
ctrl_interface=/var/run/hostapd
###############################
# Основная конфигурация
###############################
macaddr_acl=0
auth_algs=1
country_code=AU
require_ht=0
#ht_capab= [HT40+] [HT40-] [SHORT-GI-40] [RX-STBC1]
#ieee80211d=1
#ieee80211n=1
wmm_enabled=1
# Большинство современных беспроводных драйверов в ядре требуют driver=nl80211
driver=nl80211
##########################
# Локальная конфигурация...
##########################
interface=wlan0
bridge=br0
hw_mode=g
channel=1
ssid=yourssid
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=yourpassphrase
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
Конфигурация netplan (/etc/netplan/50-cloud-init.yaml) выглядит следующим образом:
#постоянная конфигурация
network:
version: 2
ethernets:
eth0:
dhcp4: false
dhcp6: false
wlan0:
dhcp4: false
dhcp6: false
bridges:
br0:
interfaces: [eth0,wlan0]
addresses: [yourStaticAddressofPi/yournetmask]
routes:
- to: default
via: yourdefaultgatewayaddress
mtu: 1500
nameservers:
search: [yourlocaldomain.lan]
addresses: [yourIP4addressforDNSserver]
dhcp4: no
dhcp6: no
Затем я также отредактировал sysctl.conf (/etc/sysctl.conf): Убедитесь, что net.ipv4.ip_forward=1
не закомментирована. Это включает маршрутизацию пакетов IPV4 между сетевыми адаптерами. Затем добавил следующие строки:
#Полностью отключить IP6
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.eth0.disable_ipv6=1
После того, как вы внесли все эти изменения и перезагрузили, Pi должен быть доступен по статическому адресу, а WiFi должен быть доступен для подключения. Обратите внимание: Pi 3 Model B+ требует некоторое время для запуска всех служб (по крайней мере, пару минут), поэтому вам нужно набраться терпения.
Ответ или решение
Создание WiFi-точки доступа на Ubuntu Server 22.04
В данной статье мы подробно разберем, как настроить WiFi-точку доступа на Ubuntu Server 22.04, основываясь на комплектации Raspberry Pi 3 Model B+. Будут рассмотрены необходимые установки, настройки сетевых интерфейсов и общее конфигурирование.
Шаг 1: Подготовка системы
Первым делом, убедитесь, что вы используете последнюю версию Ubuntu Server 22.04. Для этого можно выполнить команду:
sudo apt update && sudo apt upgrade
После обновления системы перезагрузите устройство:
sudo reboot
Шаг 2: Установка необходимых пакетов
Для создания WiFi-точки доступа вам понадобятся пакеты hostapd
и wpa_supplicant
. Установите их следующими командами:
sudo apt install hostapd
sudo apt install wpa_supplicant
После установки пакетов перезагрузите систему:
sudo reboot
Шаг 3: Настройка hostapd
Теперь необходимо настроить hostapd
, чтобы он мог создавать точку доступа WiFi. Откройте файл конфигурации:
sudo nano /etc/hostapd/hostapd.conf
В папке конфигурации добавьте следующее содержимое:
ctrl_interface=/var/run/hostapd
###############################
# Basic Config
###############################
macaddr_acl=0
auth_algs=1
country_code=AU # Измените на вашу страну
require_ht=0
wmm_enabled=1
driver=nl80211
##########################
# Local configuration...
##########################
interface=wlan0
bridge=br0
hw_mode=g
channel=1
ssid=yourssid # Замените на ваше имя сети
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=yourpassphrase # Замените на ваш пароль
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
Сохраните изменения и выйдите из редактора.
Шаг 4: Настройка сетевого интерфейса с netplan
Настройте сетевой интерфейс, используя netplan
. Откройте файл /etc/netplan/50-cloud-init.yaml
:
sudo nano /etc/netplan/50-cloud-init.yaml
Стандартная конфигурация может выглядеть следующим образом:
#persistent config
network:
version: 2
ethernets:
eth0:
dhcp4: false
dhcp6: false
wlan0:
dhcp4: false
dhcp6: false
bridges:
br0:
interfaces: [eth0, wlan0]
addresses: [yourStaticAddressofPi/yournetmask] # Укажите статический IP
routes:
- to: default
via: yourdefaultgatewayaddress # Укажите ваш шлюз
mtu: 1500
nameservers:
search: [yourlocaldomain.lan] # Укажите ваше локальное доменное имя
addresses: [yourIP4addressforDNSserver] # Укажите IP вашего DNS-сервера
dhcp4: no
dhcp6: no
Не забудьте заменить все параметры на соответствующие вашей сети.
Шаг 5: Включение маршрутизации
Чтобы разрешить маршрутизацию пакетов, откройте конфигурационный файл:
sudo nano /etc/sysctl.conf
Удалите комментарий перед строкой:
net.ipv4.ip_forward=1
Добавьте также следующие строки, чтобы отключить IPv6:
#Disable IP6 entirely
net.ipv6.conf.all.disable_ipv6=1
net.ipv6.conf.default.disable_ipv6=1
net.ipv6.conf.eth0.disable_ipv6=1
Сохраните изменения и закройте редактор.
Шаг 6: Применение изменений
Примените все изменения с помощью команды:
sudo netplan apply
Затем перезагрузите систему:
sudo reboot
Заключение
После выполнения всех этих шагов ваша Raspberry Pi должна быть доступна по статическому IP-адресу, а пункт доступа WiFi будет работать и позволять другим устройствам подключаться к ней. Обратите внимание, что время запуска сервисов может занять несколько минут, будьте терпеливы.
Если у вас возникли трудности или есть вопросы, не стесняйтесь обращаться за помощью к сообществу или на специализированные форумы. Удачи в настройке WiFi-точки доступа на Ubuntu Server 22.04!