Установка OpenWrt на Raspberry Pi 5

Установка OpenWrt на Raspberry Pi 5

Эта статья является резервной копией ныне недоступной страницы документации Pineboards по установке OpenWrt на Raspberry Pi 5, предназначенной для пользователей HatNET! 1G/2.5G. Мы создали этот пост, чтобы гарантировать, что эта информация останется доступной для наших клиентов после неудачного закрытия Pineboards.


OpenWrt — одно из самых популярных программных решений для маршрутизаторов, позволяющее развернуть собственный роутер на одном из тысяч устройств, и, как бы вы знали, Raspberry Pi 5 входит в этот список.

Хотя OpenWrt официально не поддерживается на Raspberry Pi 5, он доступен через систему SNAPSHOT-релизов, и мы хорошо изучили, что требуется для установки OpenWrt на Raspberry Pi 5.

Примечание!

Это руководство предполагает, что у вас есть RJ45 Ethernet-подключение для интернет-сервиса, готовое к использованию, либо потому, что интернет доставляется напрямую в вашу квартиру через Ethernet, либо если у вас PPPoE-сервис, потому что у вас есть совместимый роутер в режиме моста (bridge mode). Мы не будем рассматривать PPPoE (или другие более сложные) конфигурации в рамках этого руководства.

Мы также предполагаем, что вы хотите использовать это устройство сразу в качестве основного маршрутизатора, поскольку OpenWrt присвоит себе IP-адрес 192.168.1.1, и добавление его в существующую сеть потребует дополнительных шагов, которые выходят за рамки этой статьи.

Если вы не используете одну из наших PCIe HAT-плат для второго NIC/WAN-порта, имя вашего устройства может отличаться от указанного ниже, и дополнительные пакеты в сборке могут не потребоваться.

Что вам понадобится

Подготовка Raspberry Pi 5 к установке OpenWrt

Поскольку мы не устанавливаем OpenWrt поверх существующей операционной системы, подготовка минимальна. Все, что вам нужно сделать, — это собрать Raspberry Pi 5 и HAT, а затем подключить все необходимые кабели.

Встроенный сетевой контроллер (NIC) на Raspberry Pi 5 будет работать как порт «LAN», а дополнительный порт на HatNET! будет использоваться как «WAN»-подключение, поэтому подключите кабель RJ45 Ethernet, через который приходит интернет (либо напрямую в здание, либо от роутера в режиме моста), к Ethernet-порту на плате HatNET!.

Загрузка OpenWrt для Raspberry Pi 5

Как я упоминал ранее, OpenWrt в настоящее время предлагает только SNAPSHOT-сборку для Raspberry Pi 5, поскольку он ещё не полностью поддерживается в официальном релизе.

Однако это не конец света, поскольку SNAPSHOT-релиз зарекомендовал себя как довольно стабильный и подходящий для ежедневного использования.

Первым шагом является переход на страницу SNAPSHOT OpenWrt для Raspberry Pi 5 и нажатие на опцию Customize installed packages and/or first boot script (Настроить установленные пакеты и/или скрипт первой загрузки).

Нам нужно добавить несколько дополнительных пакетов, чтобы убедиться, что всё работает как ожидается при использовании Pineboards HatNET! 1G, поэтому добавьте r8169-firmware, kmod-r8169 и pciutils в список пакетов в разделе Customise. Эти пакеты устанавливают драйверы сетевого интерфейса и утилиту PCI, чтобы вы могли проверить свой NVMe-накопитель (если используете таковой).

Страница SNAPSHOT OpenWrt для Raspberry Pi 5

Теперь нажмите Request Build (Запросить сборку) и дождитесь, пока ваш образ будет собран. Через пару минут система подтвердит, что образ готов, и вы сможете скачать Factory-образ с файловой системой ext4 или squashfs.

Установка OpenWrt

Образ теперь готов к прошивке на NVMe SSD или microSD-карту.

Обычно мы рекомендуем balenaEtcher для простоты, и вам просто нужно открыть программу, найти скачанный файл образа OpenWrt в папке «Загрузки» и выбрать NVMe/microSD-карту, на которую вы хотите записать образ.

balenaEtcher

После завершения этого процесса вы можете установить NVMe SSD в слот M.2 на HatNET или вставить microSD-карту в слот на Pi 5.

Первоначальная настройка

При первой загрузке у вас будет доступен веб-интерфейс по адресу http://192.168.1.1, а SSH будет слушать на порту 22 по умолчанию. Имя пользователя для обоих будет root без пароля по умолчанию.

Первым делом вы захотите настроить WAN-порт. Это можно сделать, перейдя в Network -> Interfaces -> Add new interface… (Сеть -> Интерфейсы -> Добавить новый интерфейс…) из главного меню навигации.

Назовите интерфейс wan (нижний регистр важен!), выберите DHCP client и выберите eth1 в качестве устройства, затем нажмите Create interface (Создать интерфейс). Сохраните и примените изменения, и вы готовы перезагрузить систему. Это можно быстро сделать из System -> Reboot (Система -> Перезагрузка) в веб-интерфейсе или набрав reboot в вашем SSH-терминале.

Веб-интерфейс OpenWrt

Когда система загрузится снова, у вас должны быть оба порта — LAN и WAN, и, теоретически, работающее интернет-подключение, обслуживаемое вашим Raspberry Pi 5! Вы можете подтвердить это, перейдя на страницу Network -> Interfaces (Сеть -> Интерфейсы) из навигации и проверив, есть ли у вашего WAN-интерфейса IP-адрес.

Включение точки доступа Wi-Fi

У нас работает проводная сеть, но что, если вы хотите жить без проводов?

Хотя не стоит ожидать великих свершений от встроенного Wi-Fi-чипа Broadcom, настроить точку доступа в OpenWrt на Raspberry Pi 5 возможно, и, к счастью, это довольно просто!

Перейдите в Network -> Wireless (Сеть -> Беспроводные сети) из навигации и выберите Add (Добавить) с правой стороны в обзоре Cypress CYW43455 802.11ac/b/g/n. Вам будут представлены все настраиваемые параметры для вашей беспроводной точки доступа, так что установите всё как требуется, и вы готовы к работе.

Защита OpenWrt

По умолчанию в OpenWrt не установлен пароль для пользователя root, и хотя в локальной сети это не всегда критично, лучше всего установить пароль и предпринять несколько шагов для обеспечения безопасности.

Для этого мы направим вас к их собственной документации по защите вашей установки OpenWrt, где вы сможете выбрать, какие пункты актуальны для вашей настройки, потому что, как они отмечают, система хорошо защищена по умолчанию, и для большинства пользователей установки пароля root будет достаточно.

Заключение

На данном этапе у вас должен быть полностью функционирующий маршрутизатор, работающий на вашем Raspberry Pi 5. Поздравляем! Это отличное чувство, когда вы впервые развёртываете что-то подобное, поскольку вы берёте легкодоступное оборудование и используете его по-настоящему осмысленно.

Является ли Raspberry Pi 5 избыточным для такого маршрутизатора? Скорее всего, да! Во время тестирования я наблюдал минимальную загрузку процессора при маршрутизации полного 1-гигабитного интернет-соединения, а максимальное использование оперативной памяти составило около 120 МБ. Это делает новый, более дешёвый Raspberry Pi 5 с 2 ГБ ОЗУ отличным выбором, хотя для OpenWrt существует множество дополнений, таких как интеграция с Docker, поэтому, если вы хотите запускать ключевые приложения, такие как сетевая блокировка рекламы, или небольшую песочницу для вашей домашней лаборатории, дополнительная оперативная память пригодится!