Введение
Практически в каждой статье данного раздела мы говорим о том, что современные беспроводные домашние роутеры в массовом сегменте представляют собой «программно-аппаратные комплексы», поэтому потребительские качества продукта нельзя оценивать только по одной из этих плотно взаимосвязанных компонент. И как бы странно это ни звучало со стороны автора старейшего сайта о «железе», в данном случае «мегагерцы» и «мегабайты» являются морально устаревшей строчкой в техническом описании устройства и очень вторичной информацией с точки зрения полезности для потребителя. Ключевым вопросом является возможность эффективно решать конкретные задачи пользователя, а возраст использованной SoC на это влияет мало.
Конечно, это не относится к таким характеристикам, как поддерживаемые стандарты беспроводной связи, число и скорости проводных портов и портов USB. Их стоит рассматривать в разрезе планируемого использования устройства. Скажем если нужна функция сетевого хранения файлов или подключение сотового модема — потребуется порт USB, а если от провайдера нужно получить более 100 Мбит/с, то без гигабитных портов сделать это невозможно.
Но аналогичное замечание касается и встроенного программного обеспечения. Если речь только о раздаче интернета от провайдера по Wi-Fi на десяток клиентов в небольшом помещении, то на это способна практически любая модель. Но если требуется широкое покрытие беспроводной сетью несколькими точками, удаленный доступ к устройствам локальной сети, гибкие настройки межсетевого экрана и так далее, то обязательно нужны соответствующие функции в прошивке, одними мегагерцами и мегабайтами ситуацию не исправить. И конечно, универсального рецепта тут нет — «хотелки» у пользователей очень разные.
В комментариях к публикациям в данном разделе читатели часто упоминают в качестве альтернативы «готовым» роутерам решения сегмента «сделай сам» в виде сочетания недорогой модели «железа» и альтернативной прошивки. Несомненно, такой подход к выбору вполне возможен. Но хочется все-таки заметить, что его сложно назвать «универсальным решением всех проблем». И вопрос тут скорее не в собственно прошивке, а в подходе потребителя к выбору продукта и пониманию того, что есть явная связь функции-время-знания-деньги. Если пользователю нужно решение формата «купил, включил, настроил и работаешь» с минимальными затратами времени и усилий, то обычно выбираются присутствующие на рынке роутеры с требуемыми возможностями по аппаратной и программной части и используются с прошивками производителя. Да, в этом случае за разные интересные готовые к использованию функции придется доплатить.
А если есть опыт по установке альтернативных прошивок и понимание, что они способны решить ваши задачи, то можно купить условно более доступное оборудование, соответствующее аппаратным требованиям, и заменить прошивку производителя на более удобный вариант, что потребует как минимум времени. «С нуля» разобраться с этим может быть не так просто, но если «набить руку», то, конечно, всё можно сделать быстро и без риска «окирпичивания». Следующим уровнем можно назвать самостоятельную сборку прошивки под себя, на что придется потратить еще больше усилий, но теоретически получить более качественный или более функциональный вариант. Далее можно придумать полностью самостоятельное создание прошивки, что еще более трудоемко.
Понятно, что развивать это направление можно очень долго. Причем не только в программной части. Аналогичное движение может быть и для аппаратной платформы — от относительно простой доработки (скажем добавления каких-нибудь портов или увеличения объема памяти) до создания платы на готовых чипах.
В качестве аналогии можно посмотреть на рынок автомобилей: подавляющее большинство покупает готовые и пользуется ими. Некоторые вкладывают дополнительные средства в тюнинг, еще меньшая часть создает собственные уникальные транспортные средства.
Стоит отметить здесь и отличия в таких характеристиках, как гарантии, обновление, исправление ошибок, дополнительные сервисы производителя (к примеру, облачный доступ или мобильное приложение) и так далее. На наш взгляд, ситуация с выбором непростая. С одной стороны, мы имеем готовое решение производителя устройства, в котором он реализовал свой набор функций и выйти за его пределы невозможно, с другой — альтернативное программное обеспечение, где почти нет ограничений по расширению, но на его внедрение потребуются и время, и знание.
Сколько-нибудь адекватно сравнить эти варианты по «качеству/надежности/безопасности» кода практически невозможно, поскольку всё пишут люди. Но как минимум стоит заметить, что у крупных компаний есть более плотное взаимодействие с производителями аппаратных компонентов и более организованное внутреннее взаимодействие, что теоретически может давать возможность более эффективного использования аппаратных ресурсов с целью повышения производительности. Кроме того, они могут задействовать и коммерческие компоненты (например, драйвера файловых систем, сервисы фильтрации контента и так далее). С другой стороны, проекты с открытым исходным кодом могут быть более гибкими и более активными по внедрению новых сервисов.
Одной из наиболее известных универсальных прошивок для беспроводных маршрутизаторов является OpenWrt, которой скоро исполнится 20 лет. Решение основано на ядре Linux и предлагается с лицензией GNU GPL 2. Наиболее важным при выборе модели роутера под эту прошивку является объем флеш-памяти. Старые версии могли работать на устройствах с 4 и 8 МБ, но актуальные для комфортной работы хотят от 16 МБ и более. Что касается оперативной памяти, то тут рекомендуется от 128 МБ и более. К счастью, подавляющее число современных моделей этим требованиям удовлетворяют. В официальном списке подходящих роутеров на момент подготовки публикации было более 2000 моделей.
В то же время, надо отметить, что по платформам ситуация не такая хорошая, поскольку производители SoC не всегда предоставляют публичную информацию о своих разработках. Это может приводить к тому, что подобные открытые проекты не могут полностью раскрыть все возможности платформы (например, если речь идет о таких специфических функциях как «ускорители» или специализированные вычислительные блоки) и даже совсем или частично не поддерживают оборудование. Так что в любом случае рекомендуется очень внимательно читать информацию на сайте об особенностях работы OpenWRT на конкретном устройстве.
Непосредственно тесты мы проведем в следующих статьях с несколькими популярными моделями роутеров, а здесь, чтобы далее не повторяться, коротко расскажем о собственно прошивке. Для определенности ссылки далее будут для модели Redmi AX6S.
Установка OpenWrt
В наиболее удачном варианте на сайте есть страничка, посвященная именно вашему роутеру. На ней приводится подробное описание установки и особенности этого процесса. Желательно прочитать всю информацию внимательно, поскольку производители оборудования могут менять аппаратные версии и конфигурации флеш-памяти, а это является важным моментом совместимости. Далее вам предстоит выбрать собственно версию прошивки. Для начала и первого знакомства оптимальным вариантом является последняя официальная релизная версия. Если вы точно понимаете, что вам нужно что-то новее, то можно поискать на сайте так называемые снапшоты, которые представляют собой ежедневные сборки наиболее актуальных версий прошивки, модулей и пакетов. Это позволяет оперативно добавлять поддержку новым устройствам и функциям, однако разработчик предупреждает, что они как минимум не имеют графического интерфейса «из коробки» и не протестированы. Еще один вариант — поиск прошивок пользователей на тематических форумах. Обычно они построены на базе относительно актуального снапшота и имеют встроенные дополнительные пакеты, которые создатель посчитал необходимыми (например, графический интерфейс или поддержку сотовых модемов). Понятно, что в случае вопросов по последнему варианту адресовать их нужно будет автору сборки.
Для собственно установки прошивки обычно требуется прямой доступ к флеш-памяти через консоль. В зависимости от производителя и модели могут быть разные варианты получения такого доступа. В нашем случае использовалась китайская версия устройства, для которой в сети есть формально официальная прошивка, на которую можно перейти штатным образом через веб-интерфейс, а уже в ней специальным консольным инструментом включить telnet. Процесс относительно простой, но требует определенных знаний и, конечно, внимательности.
В более сложных вариантах может потребоваться работа с аппаратной консолью — со вскрытием корпуса, подключением специальных адаптеров и так далее. В случае неверных действий есть риск «окирпичивания» устройства, когда для восстановления его работоспособности потребуется провести уже более сложные операции, в самом неудачном случае требующие перепрошивки микросхем на отдельном программаторе.
Далее всё по инструкции: подключаемся к консоли и проверяем все указанные требования по установке. Желательно также сделать полный дамп (копию) установленной версии. После этого закачиваем прошивку и записываем ее во флеш-память. Если вы пока только раздумываете о переходе, то стоит также ознакомиться с информацией о вариантах возврата на официальную прошивку производителя устройства.
Обратная процедура в нашем случае относительно проста: оригинальную прошивку можно вернуть через специальный режим восстановления. Для этого потребуется специальная настройка локальной сети и сервер TFTP или же можно воспользоваться специальной утилитой восстановления, в которой уже всё есть. Сам файл прошивки также потребуется предварительно скачать из сети. Далее зажимаем кнопку сброса и включаем питание роутера. Когда начнет мигать желтым индикатор, отпускаем кнопку сброса и ждем, пока индикатор начнет мигать синим. Далее всё настраивается как на новом устройстве.
Базовые возможности OpenWrt
Прошивка представляет собой полноценную операционную систему и имеет поддержку системы управления пакетами. Конечно в единственной публикации описать их все невозможно. Так что для начала посмотрим, что есть «из коробки», а когда будем тестировать конкретные модели, коснемся и дополнительных функций. Поскольку мы использовали стабильный релиз, то в нем уже есть GUI-интерфейс для работы через браузер. Однако часть функций, особенно если вы добавили пакеты, настраивается через командную строку.
Поскольку здесь изложение будет кратким, приведем прямые полезные ссылки, где можно найти больше информации: руководство по началу работы, руководство пользователя, руководство разработчика, ветка в нашей конференции.
После перезагрузки роутера и переподключения к нему клиента открываем штатный веб-интерфейс LuCI, расположенный по адресу 192.168.1.1. Здесь есть поддержка HTTPS и автоматический редирект. Аккаунт по умолчанию — root без пароля. И конечно, пароль нужно будет обязательно поменять в настройках устройства. Отметим, что по умолчанию беспроводные интерфейсы неактивны, так что начинать настраивать роутер нужно будет по кабелю. Язык интерфейса на свежеустановленной прошивке английский, но в репозитории есть пакеты локализации LuCI, в том числе с русским языком.
После входа мы видим общую страницу состояния устройства. На ней представлены данные о прошивке, времени работы, отчеты по оперативной памяти и диску, сетевые интерфейсы, клиенты и другие данные. Несколько странно, что нет цифр по процессору, так что их придется смотреть на другой странице. Верхний уровень меню состоит из четырех пунктов, последний из который — выход.
В разделе Status кроме описанной выше страницы Overview есть еще шесть. Routing показывает текущую таблицу маршрутизации, Firewall — актуальные таблицы межсетевого экрана (в данной версии основан на firewall4 и nftables). Системный журнал System Log представлен выводом dmesg.
На странице Processes можно посмотреть список текущих процессов и потребляемых ими ресурсов процессора и оперативной памяти с возможностью принудительного завершения.
Channel Analysis предоставляет информацию о соседних беспроводных сетях (имя, уровень сигнала, номер и ширина канала, режим, BSSID) по каждому радиоблоку.
На Realtime Graphs представлены полезные графики для оценки текущей нагрузки на роутер: загрузка процессора, график по каждому интерфейсу, уровни сигнала беспроводных соединений, список UDP- и TCP-соединений. Заметим, что долговременного хранения данных, конечно, не предусмотрено, так что если это требуется, нужно будет использовать внешние сервисы.
В разделе System, как понятно из названия, находятся системные настройки. На первой странице можно указать сетевое имя и настроить часы (есть поддержка синхронизации через NTP). На Logging можно выбрать размер буфера для хранения журнала и уровень протоколирования, а также указать удаленный сервер Syslog для отправки событий на него. И конечно, не обошлось без смены языка и темы веб-интерфейса.
На странице Administration настраивается пароль пользователя root, сервис SSH, ключи SSH и редирект на HTTPS.
Установка дополнительных пакетов opkg осуществляется на странице Software. На момент подготовки статьи там было представлено более 7000 модулей. Конечно, большинство из них скорее служебные или библиотеки, но в целом масштаб оценить можно. Заметим также, что речь идет исключительно о пакетах операционной системы, а не о готовых модулях для реализации конкретной функции для пользователя. К примеру, если устанавливается веб-сервер apache, то есть основной пакет и различные дополнения (модули). Удобно что в таблице представлен и требуемый объем на накопителе, а также текущее состояние системного накопителя. В случае нашего роутера на «чистой» прошивке было свободно 90 МБ.
На странице Startup можно управлять скриптами инициализации, а также создать и изменить пользовательский скрипт /etc/rc.local.
Страница Scheduled Tasks позволяет отредактировать системный файл планировщика crontab.
Если позволяет аппаратная конфигурация роутера, на странице LED Configuration можно настроить работу светодиодов на корпусе устройства.
Страница Backup / Flash Firmware пригодится для сохранения/восстановления/сброса конфигурации, обновления прошивки, создания копий блоков флеш-памяти. Обратите внимание, что с обновлениями всё может быть не так просто, как хотелось бы. В частности, для рассматриваемой модели роутера из-за конфигурации блоков флеш-памяти вариант обновления через GUI неработоспособен.
Последняя страница в разделе — принудительная перезагрузка роутера (Reboot).
Итого в этой группе имеет смысл настроить несколько параметров — пароль администратора, встроенные часы и, может быть, работу светодиодов. Пока всё выглядит достаточно просто и мало отличается от интерфейсов других роутеров, но дальше будет немного сложнее.
Настройки по умолчанию уже включают режим клиента DHCP для порта WAN, объединяют все порты LAN и настраивают на этом интерфейсе сервер DHCP. Так что если у вас провайдер с IPoE и автоматической настройкой, то по кабелю всё будет работать сразу. Если требуется что-то изменить — идем на страницу Interfaces в разделе Network.
Для WAN штатно поддерживаются наиболее востребованные и распространенные режимы IPoE и PPPoE, а также IPv6. Гибкость настроек интерфейсов позволяет настроить конфигурации с несколькими WAN и использовать технологи VLAN.
Настройки LAN мало отличаются от других рассмотренных моделей. Стоит только обратить внимание на то, что подробные опции сервера DHCP расположены на отдельной странице.
С первого раза может быть непросто разобраться с беспроводными интерфейсами, поскольку здесь разделены понятия радиоблока и сети. При этом на один радиоблок можно назначить сразу несколько сетей, но готового шаблона для сценария гостевой сети нет.
В настройках собственно сетей базовый набор опций уже понятный: стандарт, номер и ширина канала, мощность передатчика, режим работы (например, можно реализовать схему с беспроводным подключением к интернету), имя, защита (есть поддержка WPA3), фильтр MAC-адресов и так далее. Набор каналов и максимальная мощность определяются региональными настройками.
С разделом Routing вопросов нет: можно добавить собственные маршруты для IPv4 и IPv6 в статическом режиме или с учетом назначенных правил.
На странице DHCP and DNS назначаются постоянные адреса клиентам, есть пункты для реализации на базе роутера загрузки по сети с использованием PXE и TFTP, настройка локального разрешения имен.
Встроенные диагностические утилиты — ping, traceroute и nslookup — могут быть полезны при диагностике проблем прохождения трафика.
Последний пункт раздела — настройка межсетевого экрана.
Он работает с использованием зон, имеет функцию проброса портов, а в правилах предусмотрено использование в том числе и расписаний.
В целом даже базовый состав прошивки вполне конкурентноспособен по сравнению с массовыми моделями представленных на рынке роутеров. Конечно, многие производители, особенно в верхнем и/или игровом сегментах, сегодня реализуют широкий набор дополнительных функций, например облачное управление, Mesh-сети, родительский контроль и так далее, однако оценить их реальную востребованность достаточно сложно, тут всё зависит от требований конкретного пользователя.
В последующем тестировании мы устанавливали на роутер серверы VPN для различных протоколов, и эти операции сложно было назвать простыми и интуитивно понятными (для примера — официальная инструкция для сервера OpenVPN), однако в целом это вполне осуществимо за разумное время при наличии определенного опыта работы с Linux и сетями. Но совершенно точно, что простым «копипастом» примеров из интернета здесь не обойтись, потребуется еще и разбираться в том, что конкретно делают предлагаемые команды и скрипты, возможно адаптировать их под вашу версию оборудования и/или общаться с сообществом активных пользователей на многочисленных форумах. Другое дело — если вы хорошо знакомы с этой прошивкой и уже имеете собственную коллекцию рецептов на разные случаи. Тогда, конечно, всё существенно проще и быстрее. Впрочем, это касается всех областей жизни, где опыт имеет значение.
Заключение
Очередное знакомство с OpenWrt, как ярким представителем альтернативных прошивок для беспроводных роутеров, показало, что в настоящий момент этот продукт является вполне зрелым для активного использования, и не только энтузиастами. Если по какой-то причине вы считаете, что у вашего роутера прошивка «глючит», или если вам требуются какие-то функции, ждать реализацию которых от производителя нет никакого смысла, то стоит заглянуть на страничку совместимости проекта OpenWrt.
Второй вариант — когда вы сразу выбираете новый роутер уже с прицелом на работу с OpenWrt. В частности, это касается «китайских» моделей, которые обычно имеют привлекательные технические характеристики в сочетании с невысокой стоимостью, но штатная прошивка у них мало того что на незнакомом языке, так еще и очень «грустная» по возможностям. Но еще раз напомним, что все-таки такая схема — это не «включил и работаешь». Если у вас действительно сложные запросы и нет опыта в данной области — потребуется потратить достаточно много времени для достижения своей цели.
Третий вариант — у вас есть какой-то старый роутер, который хочется использовать для решения нестандартных задач (например, мониторинга, удаленного управления, веб-сервисов, хранения данных) в формате микросервера.
Ну и четвертый вариант для настоящих энтузиастов — выбор модели (платформы), уже сразу ориентированной создателями на работу с OpenWrt, или установка данного ПО на обычный стандартный компьютер. В этом случае можно будет забыть про ограничения по памяти, диску и мощности процессора, добавить различную периферию и так далее. Но вполне возможно, что придется ближе познакомиться с миром аппаратной поддержки оборудования в конкретном дистрибутиве.
OpenWrt был создан в 2004 году и имеет лицензию GPL. Это бесплатная операционная система с открытым исходным кодом на базе Linux, которую можно установить на разные маршрутизаторы и Устройства шлюза Интернета вещей. Благодаря небольшому весу и множеству вариантов настройки OpenWrt идеально подходит для устройств, которым требуются мощные сетевые возможности, но ресурсы которых ограничены. Он предлагает множество инструментов и возможностей для контроля и оптимизации сетевого трафика, а также поддержку ряда протоколов и функций безопасности, таких как поддержка брандмауэра и VPN.
Гибкость настройки маршрутизаторов и шлюзов в соответствии с предпочтениями пользователя является основным преимуществом OpenWrt. В результате он в основном используется для модификации оригинальной прошивки на всех типах маршрутизаторов и домашних шлюзов. Прошивка по умолчанию для вашего оборудования может быть не такой надежной или полностью регулируемой, как OpenWrt, которая предоставляет веб-интерфейс под названием Luci.
OpenWrt — это дистрибутив GNU/Linux, который изначально был разработан как прошивка для беспроводных маршрутизаторов. Но с тех пор он превратился в основу встроенного программного обеспечения для управления возможностями сетевой маршрутизации многих встроенных систем. Эти системы включают IoT-шлюзы, проводные маршрутизаторы, смартфоны и даже некоторые ноутбуки.
Разница между большинством прошивок, включая OEM, и OpenWrt в том, что последняя не статична. С прошивкой для большинства встроенных систем, если вы хотите внести изменения — например, добавить или удалить функцию — вам придется прошить совершенно новую ОС. С OpenWrt пользователи могут вносить изменения точно так же, как устанавливать или удалять пакеты.
OpenWrt начался, когда Linksys выпустила беспроводной маршрутизатор на основе открытого исходного кода и была вынуждена выпустить модифицированный код. Позже этот код стал основой для дистрибутива Linux, известного сейчас как OpenWrt.
С OpenWrt вы можете легко управлять своими устройствами через соединение Secure Shell (SSH) и терминал Linux. Пользователи также могут использовать веб-интерфейс пользователя (UI) OpenWrt, называемый LuCI и Lua, для настройки прошивки на своих встроенных устройствах. Но эта функция может быть ограничена маршрутизаторами с более чем 4 МБ флэш-памяти; другим придется управляться только с терминалом.
В то время как OpenWrt вызвал идею модифицированной прошивки для маршрутизаторов, вскоре после этого появилось множество альтернатив. Многие из этих альтернатив основаны на самой OpenWrt, например DD-WRT, LEDE, ClearOS и Tomato.
За операционной системой стоит очень активное сообщество, поддерживающее и поддерживающее ее развитие. Разработчики регулярно встречаются удаленно (а иногда и лично) для обсуждения изменений и разработок.
Аппаратные требования операционной системы OpenWrt
OpenWrt доступен для широкого спектра встроенных систем от разных производителей. Ранее OpenWrt был открыт для маршрутизаторов со значительным количеством аппаратных возможностей. Но последние версии OpenWrt ориентированы только на маршрутизаторы с 4 МБ флэш-памяти и 32 МБ ОЗУ.
Рекомендуется иметь достаточно оперативной памяти для стабильной работы, а также достаточно флэш-памяти для хранения образа прошивки, чтобы запустить OpenWrt на оборудовании.
Нестабильность может быть вызвана нехваткой оперативной памяти
- 32 МБ может регулярно «зависать» при выполнении основных действий маршрутизатора/точки доступа. Имея всего 32 МБ ОЗУ, Linux 5.4 практически не работает на нем, а скачки использования памяти могут привести к сбою маршрутизатора из-за проблем с OOM (недостаточно памяти).
- В зависимости от вашего оборудования и ситуаций использования достаточно 64 МБ. Менее 64 МБ ОЗУ может привести к нестабильной работе устройства под OpenWrt, начиная с версии 19.07. Ожидайте, что обновления безопасности/исправления для ядра, драйверов и/или прикладного программного обеспечения будут недоступны, и что поддержка устройства может быть прекращена в любое время.
- Рекомендуется 128 МБ или больше. если для работы маршрутизатора/точки доступа требуется дополнительное программное обеспечение.
Low Flash не может загрузить обновленные пакеты или прошивку
- Минимальное требование к флэш-памяти составляет 4 МБ, однако вы не сможете установить веб-интерфейс LuCI, VPN или любой другой пакет, требующий шифрования, Samba, ключей 3G/4G или драйверов и инструментов файловой системы;
- Если у вас есть только 8 МБ флэш-памяти, LuCI можно установить вместе с несколькими дополнительными программными пакетами;
- В обозримом будущем 16 МБ флэш-памяти (минимум) обеспечивают большую гибкость и рекомендуется.
Вы можете просмотреть более официальное объяснение здесь.
Рекомендация шлюза OpenWrt
DSGW-030 MTK7688 Шлюз OpenWrt
В MediaTek MT1A интегрированы радиомодем 1T802.11R 580n Wi-Fi, процессор MIPS® 24KEcTM с частотой 5 МГц, коммутатор 1p FE или 2.0p Fast Ethernet PHY, хост USB 2, PCIe, I7688S/PCM и многочисленные GPIO. Поддерживаются Python, Node.js и собственный C, что делает его подходящим для приложений для умного дома. Он может работать под управлением OpenWrt Linux..
Проекторы, системы наблюдения за домашней безопасностью и шлюзы для умного дома — это лишь несколько примеров более сложных или ресурсоемких гаджетов для умного дома, с которыми может работать MTK7688. Аппаратная платформа MTK7688 на базе OpenWrt идеально подходит для IoT в умных домах. Из-за сложности так называемого соединения одним ключом между мобильным приложением и устройством, которое включает множество драйверов устройств Wi-Fi, разработчикам чрезвычайно сложно самостоятельно разработать надежную и быструю конфигурацию с одним ключом. Кроме того, чип MTK7688 имеет относительно низкую цену. Кроме того, программисты могут легко создавать приложения верхнего уровня, интегрировать множество комплектов разработки с открытым исходным кодом и компилировать их благодаря большому объему поддерживаемой памяти DDR2.
DSGW-090 MTK7628 Потолочный шлюз OpenWRT IoT
В качестве центрального узла шлюза, DSGW-090 Шлюз Интернета вещей OpenWRT поддерживает несколько беспроводных протоколов, включая Wi-Fi и zigbee3.0, BLE, Z-WAVE. Пользователи могут подключаться к сети через Wi-Fi, Ethernet и сотовую сеть LTE.
Узнайте больше: Разработка шлюза Интернета вещей
Каковы преимущества и преимущества OpenWrt?
Одним из основных преимуществ OpenWrt является то, что вы можете использовать его для добавления дополнительных функций к вашему домашнему маршрутизатору. Например, вы можете:
- Запускайте SSH-серверы и выполняйте SSH-туннелирование на своих маршрутизаторах.
- Настройте различные типы серверов, включая веб-сайт, протокол передачи гипертекста (HTTP) и протокол передачи файлов (FTP) на своих маршрутизаторах.
- Установите и запустите клиенты BitTorrent на своих маршрутизаторах.
- Создайте независимую сеть Wi-Fi помимо основной WLAN в качестве гостевой сети.
- Настройте виртуальную частную сеть (VPN) через свои маршрутизаторы, что позволит вам обойти любую интернет-цензуру или другие фильтры контента.
Помимо этого, опытные пользователи также могут использовать OpenWrt для формирования трафика, анализа сетевых пакетов и применения правил качества обслуживания (QoS) в сети. Есть утверждения, что вы можете увеличить радиус действия своего маршрутизатора с помощью OpenWrt.
Хотя добавление дополнительных функций к вашему домашнему маршрутизатору, безусловно, весело, во многих случаях OpenWrt необходим. Иногда роутер устарел или производитель перестал выпускать обновления прошивки. Во многих случаях OpenWrt часто оказывался более стабильным, чем прошивка производителя.
Как начать работу с OpenWrt?
Сложность настройки OpenWrt зависит от модели роутера. Примерно для 30% устройств OpenWrt имеет довольно простой процесс.
Хотя обновить прошивку OpenWrt несложно, шаги по замене прошивки OEM и первой установке OpenWrt зависят от конкретного устройства. В некоторых случаях это может быть так же просто, как перейти к веб-интерфейсу прошивки OEM, выбрать «Обновить прошивку» и выбрать файл образа OpenWrt. В других случаях вам, возможно, придется пройти через загрузчик, где шаги могут быть более сложными.
Первый шаг к установке OpenWrt — найти ваше устройство в Страница OpenWrt, на которой перечислены доступные прошивки.
Вы можете найти множество различных вариантов прошивки для ваших устройств. Поскольку вы устанавливаете в первый раз, нажмите ссылку «URL-адрес установки прошивки OpenWrt». Прежде чем продолжить, OpenWrt рекомендует пользователям ознакомиться с данными устройства. Вы можете найти это по ссылке в последнем столбце таблицы. На странице также будет таблица под названием «Ввод данных», в нижней части которой вы найдете руководства по установке. В зависимости от устройства вы можете найти более одного метода.
После того, как вы установили OpenWrt на свое устройство, его достаточно просто обновить.
Какие меры предосторожности следует принять перед использованием OpenWrt?
Когда вы устанавливаете OpenWrt, вы аннулируете гарантию производителя на свое устройство. Как и при установке любой сторонней прошивки, OpenWrt также может привести к поломке устройства. Никаких гарантий при работе с ним нет; есть много документации и активный форум, но если что-то пойдет не так, вам придется разбираться без какой-либо индивидуальной поддержки.
OpenWrt также позволяет пользователям иметь почти беспрепятственный доступ к устройству, что означает, что вы можете непреднамеренно нарушить местные или региональные законы. Например, вы можете использовать частоты или полосы, не предназначенные для беспроводных сетей. Или вы не можете использовать технологии, разрешенные регулирующими органами, чтобы избежать нарушения других сигналов связи. В худшем случае вы можете нарушить работу других служб или технологий на устройстве.
Из-за риска получить непригодное для использования или кирпичное устройство, OpenWrt рекомендует пользователям делать каждый шаг очень медленно и осторожно.. Перед началом работы пользователям рекомендуется очень хорошо ознакомиться с документацией по устройству. Если что-то кажется неправильным или идет не так, как вы себе представляли, веб-сайт предлагает пользователям остановиться, найти ответы и затем продолжить. Везде, где это применимо, OpenWrt показывает риски и лучшие практики при работе с ним.
Вы также можете оценить риски модификации вашего конкретного устройства в зависимости от того, насколько оно популярно. Согласно OpenWrt, обычно модифицированные маршрутизаторы будут иметь более полную и подробную страницу. Может быть проще найти поддержку для этих устройств на случай, если вы застрянете в какой-то момент.
Прежде чем начать, убедитесь, что вся информация об устройстве находится рядом с вами, как от производителя, так и от OpenWrt. Убедитесь, что у вас есть источник бесперебойного питания, и не пытайтесь настроить устройство через беспроводное соединение.
OpenWrt в разработке шлюза IoT
OpenWrt — это мощная операционная система с открытым исходным кодом на базе Linux для встраиваемых устройств. Он широко использовался при разработке шлюзов IoT благодаря своей гибкости и надежности. Разработка шлюза IoT с помощью OpenWrt может обеспечить множество преимуществ по сравнению с традиционными решениями, включающими проприетарное аппаратное и программное обеспечение.
OpenWrt позволяет разработчикам использовать широкий выбор существующих программных пакетов, что может сэкономить время и деньги при создании нового шлюза IoT. Используя плагины, такие как LuCI или LUCI2, процесс разработки можно упростить еще больше. Кроме того, его модульная конструкция облегчает разработчикам создание настраиваемого встроенного ПО для конкретных случаев использования.
Хотя OpenWrt предлагает много преимуществ, есть и несколько недостатков, связанных с его использованием.
Основным недостатком OpenWrt является то, что он не поддерживает все типы оборудования, используемого при разработке шлюза IoT. Это может быть проблематично для разработчиков, которым может потребоваться поддержка специализированных аппаратных компонентов, поскольку без надлежащей поддержки программного обеспечения процесс может быть значительно затруднен. Кроме того, известно, что OpenWrt имеет проблемы с масштабируемостью при работе с большими сетями или наборами данных, что может затруднить эффективное управление ресурсами при разработке шлюза IoT в большем масштабе.
Как производитель, специализирующийся на разработке шлюзов Интернета вещей с открытым исходным кодом, Dusun имеет несколько шлюзов, основанных на системе OpenWrt. Например, это внутренний шлюз LoRaWAN со встроенной системой OpenWrt, которую можно использовать в самых разных условиях, таких как умные города, системы промышленной автоматизации (МИОТ), управление логистикой, и решения для отслеживания активов и другие.
Установите OpenWrt и откройте совершенно новый набор функций для своих устройств
OpenWrt — это мощный дистрибутив Linux, который позволяет вам делать гораздо больше с вашим домашним маршрутизатором, шлюзами Интернета вещей (IoT) и система на модулях. Многие производители, в том числе Dusun IoT, использовать OpenWrt для питания своих встраиваемых решений. С Dusun и его IoT-решения на базе OpenWrt, вы можете сделать больше.
Источники
OpenWrt — Основы LuCI
OpenWrt — Краткое руководство по установке OpenWrt
GitHub — openwrt/люси
OpenWrt — Добро пожаловать в проект OpenWrt
OpenWrt — Таблица аппаратного обеспечения: загрузки прошивки
OpenWrt — Поддерживаемые устройства
Ядро операционной системы Linux часто становится базой для работы различных устройств вроде маршрутизаторов и навигаторов. Они имеют ограниченный функционал, зато гарантируют высокую стабильность работы оборудования, а также обеспечивают возможность установки сторонних приложений, помимо заводских утилит.
Относится это и к Openwrt – самой известной операционной системе для роутеров.
Требования к роутеру для установки Openwrt
Openwrt – это не простая прошивка, а целая операционная система для маршрутизаторов, созданная на базе Linux. Если вы решили перепрошить свой роутер и установить данную ОС, то проверьте, соответствует ли ваше устройство следующим требованиям:
- соответствие архитектурам, которые указаны на официальном сайте;
- минимум 4 Мб флеш-памяти (без возможности установить GUI (LuCI));
- от 32 Мб ОЗУ.
Перед тем как экспериментировать с сетевым устройством, рекомендуется усвоить – перепрошивка оборудования часто лишает пользователя заводской гарантии. Кроме того, вероятно, интерфейс новой оболочки будет несколько непривычным по сравнению с предыдущим, и это вызовет некоторые затруднения в настройке параметров.
Комьюнити теперь в Телеграм
Подпишитесь и будьте в курсе последних IT-новостей
Подписаться
Шаг 1: Подготовка и прошивка
Рассмотрим процедуру прошивки на примере роутера TP-Link модели TL-WR740N. Перед запуском изменений нужно зайти в панель администратора (через браузер) и посмотреть текущую версию встроенного программного обеспечения. Следующий шаг – скачивание операционной системы Openwrt, она доступна по ссылке. В открывшейся таблице отображается перечень поддерживаемых роутеров и техническая информация о них. Пользователю достаточно найти прошивку, соответствующую текущей версии. В названии должна присутствовать приставка factory.
Если к названию прошивки добавлено слово Sysupgrade, это означает, что файл предназначен для обновления версии ранее установленной операционной системы. После скачивания требуется зайти обратно в панель администратора и нажать на кнопку «Обновить». Система предложит указать файл – здесь нужно выбрать архив с Openwrt.
Все, осталось дождаться завершения процесса прошивки. Важно на этом этапе обеспечить питание без аварийных отключений, чтобы не повредить программное обеспечение. Если это случится, оно перестанет запускаться, и аппарат останется только «выкинуть» или отнести по гарантии. Если все прошло корректно, после перезагрузки веб-интерфейс будет доступен по адресу http://192.168.1.1.
Шаг 2: Первоначальная настройка Openwrt
В перечень базовых настроек ПО входит изменение пароля администратора. Это исключит вход в панель посторонних лиц на удаленной основе в результате перехвата сигнала Wi-Fi. Плюс нужно включить интерфейс в режим «LAN», чтобы активировать поддержку протокола SSH.
Шаг 3: Настройка PPPOE
Теперь требуется настроить подключение к интернету. Если провайдер предлагает соединение по протоколу DHCP, этот шаг допускается пропустить, потому что роутер «по умолчанию» настроен на передачу данных через DHCP Client.
Если же речь идет о PPPOE, нужно провести следующую настройку:
- Перейти в подраздел Interfaces раздела Network.
- Кликнуть по пункту Add new interface.
- Задать имя интерфейса и указать протокол PPPoE.
- Выбрать режим WAN для пункта Cover the following interface.
После внесения перечисленных настроек нужно нажать на Submit, ввести переданные от провайдера логин-пароль и без сохранения настроек перейти в раздел Firewall Settings, где выбрать зону WAN. Теперь остается применить изменения и перезагрузить роутер. Если еще раз перейти в раздел Interfaces в Network, пользователь увидит, что PPPoE подключен, и можно выходить в интернет.
Шаг 4: Настройка Wi-Fi
Wi-Fi на Openwrt включается вручную. Сразу же после инсталляции операционной системы интерфейс обычно отключен. Выполняется процедура в подразделе Wireless раздела Network. Там нужно кликнуть по кнопку Edit и изменить несколько параметров:
- Mode – режим работы установить в значение Access Point (точка доступа).
- ESSID – имя сети Wi-Fi по свободному выбору пользователя.
Во вкладке Wireless Security нужно указать режим WPA2-PSK для пункта Encryption, а в строке Key ввести желаемый пароль для подключения к беспроводной сети. Остается кликнуть по кнопке Enable и попробовать подключение с любого устройства с модулем Wi-Fi.
Network devices can operate in 3 different modes:
Router/gateway and double NAT problem with IPv4 or mixed IPv4/IPv6
Are you an OpenWrt newcomer? Does this page with lots of technical network information seem scary? Are you worried that you don’t know enough to make these decisions now?
→ Just stop reading and use the default configuration for now. Your device will act as a router in a cascaded double NAT scenario which will work just fine for normal internet access, so you don’t have to do anything.
→ Alternatively, get familiar with OpenWrt first, then come back later and decide how to proceed.
Double NAT is an issue that exists solely with IPv4. In a few decades, when the whole world is fully IPv6 enabled devices, this won’t be a problem anymore, as IPv6 strictly forbids NAT. In the meantime for IPv4, act according to this how-to.
The problem of IPv4 is that if you simply add an additional IPv4 router to an existing router of your ISP (internet service provider), you will face a problem called double NAT — both the newly added router and the existing ISP-supplied router do NAT, resulting in your client data traffic being “NATed” twice before it reaches the internet.
This double NAT scenario won’t cause problems for basic tasks like browsing the internet, but it can cause problems when you are trying to host servers at home that you want to be reachable from the internet, or when doing peer-to-peer online gaming (which often uses the UDP protocol and does some funny firewall stuff called “UDP hole-punching”).
To deal with this double NAT problem and use IPv4 as flawlessly as possible, you need to choose how OpenWrt gets connected on its upstream side from several options. Note that in all these examples, the OpenWrt device is assumed to be on the “inside” of the network, i.e. clients ↔ OpenWrt device ↔ ISP device ↔ Internet. Since the OpenWrt device is our main concern, we’ll refer to upstream and downstream connections relative to it:
There is a range of options to connect the upstream side of OpenWrt to your existing home network. Each option tries to work around the double NAT problem with different technical tricks or configuration:
NAT | Usage variant | Visualization |
---|---|---|
single | OpenWrt as router and having an internet ISP device configured as modem-bridge | clients ↔ OpenWrt router with NAT ↔ ISP bridge (no NAT) ↔ Internet |
single | OpenWrt as router, OpenWrt router being «exposed host» in the ISP router | clients ↔ OpenWrt router with NAT ↔ ISP router with NAT + “exposed host” feature ↔ Internet |
double | OpenWrt as router acting in default cascaded router double-NAT configuration | clients ↔ OpenWrt router with NAT ↔ ISP router with NAT ↔ Internet |
double | OpenWrt as router in double-NAT configuration with Dualstack Lite on ISP side | clients ↔ OpenWrt router with NAT ↔ ISP router with DS-Lite NAT ↔ Internet |
single | OpenWrt as router with disabled NAT, additional routing rules in both routers | clients ↔ OpenWrt router (no NAT) ↔ routing rules ↔ ISP router with NAT ↔ Internet |
0 | look-out: OpenWrt as router in IPv6 only configuration + ISP router | clients ↔ OpenWrt router (no NAT) ↔ ISP router (no NAT) ↔ Internet |
single | OpenWrt as gateway using either OpenWrt-device-built-in or external modem | clients ↔ OpenWrt as gateway with NAT ↔ built-in/external modem (no NAT) ↔ Internet |
Switches and client APs
single | Three usage Variants: OpenWrt as wireless repeater (Wi-Fi <-> Wi-Fi switch) OpenWrt as wireless access point (Wi-Fi <-> wired switch) OpenWrt as wire (wire <-> wire switch) |
clients ↔ OpenWrt as switch (no NAT) ↔ ISP router (with NAT) ↔ Internet |
* all variants can handle both wireless and wired clients on the downstream side (i.e. client devices connected to your LAN)
This is the default (and easiest) option for your OpenWrt device. For this scenario you simply connect the OpenWrt WAN port to an unused LAN port of your existing ISP router.
So what’s the problem? Some traffic scenarios do not work through double NAT, such as hosting servers or playing online games.
The problem isn’t so much IPv4 NAT, it’s a combination of:
-
NAT usage
-
how firewalls in consumer routers treat UDP traffic.\\The firewall treats UDP traffic as stateful. This means that if a sourceIP:sourcePort → targetIP:targetPort package goes out, it will lower the firewall in the reverse direction for a short time, such that the target can answer with the same combination of address and ports (sourceIP:sourcePort ← targetIP:targetPort).
-
many online games use tricks to get peer-to-peer data traffic of other players through your firewall(s) to your game client
Unfortunately the firewall details aren’t a fully standardized behavior. And the NAT behavior that happens in parallel isn’t predictable either — every router has a slightly different method of deciding how to map addresses to ports on outgoing traffic. Most games and game consoles report this as the “NAT status” of your router, using four broad categories of open, moderate, strict, and blocked, which aren’t standardized either — each game vendor may use them for slightly different technical details.
So should you use this double NAT scenario and be happy with it? It highly depends on your equipment and your usage scenario. Double NAT is not automatically bad.
— if you just do browsing and email, you don’t have to care (your internet browsing will not even be slowed down by double NAT)
— check if you want to run servers at home that you want to expose to the internet (e.g. a VPN or web server) — such hosting will definitely not work over double NAT
— check if your usual online games work flawlessly
Most online games use weird UDP tricks to temporarily bypass your router firewall (without opening your firewall to the whole world), to get less-laggy UDP packets to your game client. Usually those tricks can only bypass a single NATed home router, not two as in double NAT. You will find out, if you either cannot connect at all to online sessions or if there is noticeably more game lag than usual (more lag happens because most games will first try to fallback from UDP to TCP, before giving up, if the so called “UDP hole punching” through your 2 firewalls/NATs won’t work — this TCP-fallback will sometimes be noticeable). Most online games report this as “NAT status” in the game settings. Your aim usually will be to either have this status “open” or “moderate”. If your game engine reports anything else, it is usually failing on your two firewalls and double NAT, and it will then fallback to the slower TCP and can even fail completely to connect to a game session (and you should be able to notice that, if you are left alone in an online game session).
The next few sections explain what you can do to bypass these problems, while keeping both routers and firewalls enabled. Just keep in mind: don’t try to fix problems that you do not have.
Follow: Bridge mode
Mostly for cable internet, you can often choose to reconfigure your ISP cable router into either router mode or bridge mode. Sometimes you have to configure this in nested online portal menus of your ISP (and not on your ISP router web GUI).
When set to bridge mode, the ISP router starts behaving like a pass through device: it will superficially act as a modem and will authenticate you as a legitimate customer, but will otherwise just pass through the IPv4 traffic unchanged to your OpenWrt router. The firewall and NAT and DHCP and all the normal “router” services of the ISP device will simply be disabled when set to bridge mode.
Often you do not have a choice whether your ISP gives you a real IPv4 address or a discredited DS-Lite IPv4 address. If you want to understand DS-Lite in contrast to regular dual stack, please research the RFC 6333.
Very often DS-Lite is offered as a default package by cable TV- or fiber-based ISPs. A key feature of DS-Lite is that it has so called carrier-grade NAT happening in some network equipment several blocks away from your home at your ISP‘s site, not in your ISP router at home.
It is important to mention that DS-Lite and this carrier-grade NAT isn’t really implemented in a standardized way. It can have slightly different implementation behaviour, depending on the actual equipment that the ISP has bought and how this equipment is configured.
Sadly this technique won’t help you to expose any home services over IPv4 on the internet — this won’t be possible with DS-Lite in any case. But if online gaming over DS-Lite is your only concern, you might want to check if your double NAT on IPv4 is a problem at all in your favorite online games. Nowadays, often the carrier-grade NAT of DS-Lite is configured in a manner very friendly to online games, resulting in a “moderate” NAT rating in the game engine even when having the additional OpenWrt NAT cascaded in front of it and even when running with default firewall rules.
So if gaming (and game-related UDP peer-to-peer traffic handling) is your only concern regarding the double-NAT problem, you may just want to check your online games first and their reported NAT status, before investing extensive time in solving a double NAT problem that might not even cause a problem in everyday use.
Using this scenario depends on whether your ISP router supports custom routing rules. This requires that your ISP router allows you to define forward routing rules (often ISP routers are restricted in function and do not allow this).
The idea of this solution is
Follow: Poor man’s bridge
Only some ISP routers have this feature, sometimes called a DMZ (demilitarized zone), DMZ for single server, exposed host, IP passthrough, or poor man’s bridge mode (there is no standardized name). This feature enables your ISP router to define a single one of its downstream clients to be a so called “exposed host”. The ISP router will then forward all incoming Internet traffic from its upstream side to this “exposed host”.
This effectively disables NAT on the ISP router only for a single connected device on the ISP router downstream side: for obvious reasons, we will be connecting our OpenWrt router as this exposed host. So in the end, we have achieved single NAT solely in the network chain towards the OpenWrt router.
Remember you still need to define the usual port forwarding rules in your OpenWrt router if you want to expose OpenWrt-connected servers to the Internet, since we haven’t set up an exposed host on the internal network.
Drawbacks of this method are:
— the feature may not be supported by your ISP router, you’ll have to find out if it does
— the OpenWrt upstream port is exposed to the Internet, so be sure that you have not added any careless or extraneous rules to the ruleset
— one of your ISP router ports is now without firewall protection, so be careful with this one downstream ISP router port in case you ever connect something else to it
Obviously this ideal world does not yet exist, it’s just a prospect for much later. Once this happens, the previous chapters of this page can be ignored. This will then be the default and only router option required for your IPv6 OpenWrt device, as you it will just work out of the box for all business cases. There will be no NAT issues, there is no longer a discussion whether to switch the ISP router to bridged or routed, and no more discussion whether an “exposed host” configuration is needed. You will be able to choose three ways of running OpenWrt:
Device as a gateway, with a true modem between it and the Internet
Follow: Internet connection
If your OpenWrt device has no WAN port at all out of the box and has a built-in modem with something like a VDSL-phone port, or if it has a WAN port and you have an external modem that can be put in “bridge mode” (either full bridge or half bridge), this is for you.
Follow: Wi-Fi extender or repeater or bridge configuration
If your OpenWrt device does not have LAN ports or if you don’t want to connect any other devices using RJ45 LAN cables, then most probably you want to use the OpenWrt device as a WiFi repeater in your existing network.
OpenWrt as a wireless repeater (also called wireless range extender) takes an existing signal from a wireless router or wireless access point and rebroadcasts it to create a second network.
Note: In case you are interested in creating a so called “wireless mesh” instead of a wireless repeater, you will have to refer to other projects, e.g. https://libremesh.org/ or https://open-mesh.org/ at this time.
Follow: Wi-Fi access point
As a wireless access point, OpenWrt connects to the existing network by wire. OpenWrt then acts as a networking device that allows your Wi-Fi devices to connect to the wired network over OpenWrt.
This scenario has already been covered in the previous described access point scenario, as the downstream LAN ports in OpenWrt are active by default, providing switching: All your wired and wireless clients connected to either OpenWrt or your other network switches can talk to each other without restrictions, as no firewall is active on the OpenWrt device.
Введение
Данная статья может быть полезна продвинутым пользователям, которые хотят улучшить работу своего домашнего роутера, а также системным администраторам предприятий, перед которым стоит задача повысить надежность и безопасность удаленной работы сотрудников.
Как вы скорее всего знаете, ваш роутер – это маленький компьютер и него есть программное обеспечение, так называемая “прошивка” или “firmware”. Прошивку разрабатывает производитель роутера, однако существуют также альтернативные решения – проекты с открытым исходным кодом: OpenWRT, DD-WRT, Tomato.
Что нам даёт использование OpenWRT?
-
Обновления (безопасность и новые фишки) выпускаются в разы чаще и поддержка сохраняется в разы дольше, чем у большинства производителей. Особенно актуально это стало в условиях карантина. Уязвимая “прошивка” роутера – одна из наиболее частых причин инцидентов при удаленной работе.
-
“Родные” прошивки бывают нестабильными, особенно у дешевых роутеров. Так многие модели TP-Link зависали после нескольких дней беспрерывной работы.
-
Вы привыкаете к одному интерфейсу пользователя и при последующей смене/апгрейде роутера, даже от другого производителя, чувствуете себя “как дома”.
-
Вам не обязательно покупать дорогой роутер для реализации продвинутых “фишек”, таких как IPv6, родительский контроль, блокировка рекламы, VPN, гостевой WiFi, DNS шифрование, динамический DNS (DDNS) и т. д.
-
Есть активное сообщество, которое поможет оперативнее, чем даже поддержка крупного производителя, да и многое уже описано.
-
Преимущества открытого решения на базе Linux: возможность подключаться через SSH, автоматизировать настройку и управлять роутером с помощью скриптов, настройки хранятся в текстовых файлах (автоматизация, контроль версий), можно использовать роутер для других задач (умный дом, SFTP/Web сервер, закачка торрентов и т.п.).
Подробнее эти и другие причины описаны на сайте проекта.
Базовая настройка OpenWRT
Данная статья поможет вам настроить базовые функции OpenWRT, благодаря чему вы сможете быстро и безболезненно перейти на это решение. Вот перечень этих функций:
-
Установить пароль пользователя root.
-
Ограничить доступ по SSH только для интерфейса LAN.
-
Настроить PPPoE подключение по WAN.
-
Настроить WiFi.
-
Добавить гостевой WiFi (без доступа в локальную сеть).
-
Настроить динамический DNS NoIP.
-
Настроить переадресацию портов (port forwarding).
-
Сохранить конфигурацию в архивный файл.
Пункты 6 и 7 нужны, например, для того, чтобы подключаться из Интернета к домашнему компьютеру по SSH или SFTP (например, для синхронизация файлов с ноутбуком), а также для прямого подключения по Anydesk, которое работает быстрее, чем обычное.
Процесс “перепрошивки” на OpenWRT зависит от модели вашего роутера. Следует найти его в списке поддерживаемых устройств и следовать приведенным там рекомендациям.
Настройки можно делать с помощью SSH-подключения и скриптов, однако мы рассмотрим веб-интерфейс (который называется LuCI) как более наглядный и устойчивый к изменениям вариант.
1. Установить пароль пользователя root
Перейти в меню System > Administration.
2. Ограничить доступ по SSH только для интерфейса LAN
Перейти в меню System > Administration > SSH Access.
Interface = lan
После этого шага имеет смысл сделать Logout и залогиниться снова, чтобы убрать предупреждение в верхней части экрана.
3. Настроить PPPoE подключение по WAN
Перейти в меню Network > Interfaces.
Нажать кнопку “Edit” в строке “WAN”.
Protocol = PPPoE + нажмите кнопку "Switch protocol"
PAP/CHAP username = ваш_логин_у_провайдера
PAP/CHAP password = ваш_пароль_у_провайдера
4. Настроить WiFi
Перейти в меню Network > Wireless.
4.1 Нажать на кнопку “Edit” под “radio0 802.11nac”.
Channel = Auto
ESSID = имя_вашего_wifi_5GHz
Перейти на вкладку Wireless Security.
Encryption = WPA2-PSK/WPA3-SAE Mixed Mode
Key = пароль_вашего_wifi_5GHz
4.2 Нажать на кнопку “Edit” под “radio1 802.11bgn”.
Channel = Auto
ESSID = имя_вашего_wifi_2.4GHz
Перейти на вкладку Wireless Security.
Encryption = WPA2-PSK/WPA3-SAE Mixed Mode
Key = пароль_вашего_wifi_2.4GHz
Нажать кнопки “Enable” (слева от “Edit”) на обоих подключениях.
5. Добавить гостевой WiFi
Взято отсюда, плюс ужато и обновлено под новый интерфейс.
Делаем для 2.4 ГГц, но аналогично можно сделать и для 5ГГц.
5.1 Перейти в меню Network > Wireless.
5.1.1 Нажать кнопку “Add” в “radio1 802.11bgn”.
Channel = Auto
ESSID = имя_вашего_гостевого_wifi
network = выбрать "-- custom --" и ввести "guest"
5.1.2 Перейти на вкладку Wireless Security.
Encryption = WPA2-PSK/WPA3-SAE Mixed Mode
Key = пароль_вашего_гостевого_wifi
5.2 Перейти в меню Network > Interfaces.
5.2.1 Нажать на кнопку “Edit” в интерфейсе “GUEST”.
Protocol=Static address + нажать кнопку “Switch protocol”
IPv4 address = 192.168.3.1
IPv4 netmask = 255.255.255.0
5.2.2 Перейти на вкладку “Firewall settings”.
Create / Assign firewall-zone = выбрать "-- custom --" и ввести "guest"
5.2.3 Перейти на вкладку “DHCP server”.
Нажать на кнопку "Setup DHCP server" и далее Save
5.3 Перейти в меню Network > Firewall.
5.3.1 Нажать на кнопку “Edit” в зоне “guest”.
Input = reject
Allow forward to destination zones = WAN
5.3.2 Перейти на вкладку Traffic rules.
Нажать на кнопку “Add” внизу.
Name = Guest DNS
Protocol = TCP+UDP
Source zone = guest
Destination zone = Device(input)
Destination port = 53
Save
Нажать на кнопку “Add” внизу.
Name = Guest DHCP
Protocol = UDP
Source zone = guest
Destination zone = Device(input)
Destination port = 67
Save
6. Настроить динамический DNS NoIP
6.1 Перейти в меню System > Software.
Нажать кнопку “Update lists…”
Набрать “ddns” в поле “Filter”.
Установить пакеты “ddns-scripts”, “ddns-scripts-noip”, “luci-app-ddns”.
Сделать Logout и потом залогиниться снова.
6.2 Перейти в меню Services > Dynamic DNS.
6.2.1 Нажать кнопку “Edit” в строке “myddns_ipv4”.
Lookup Hostname = your.dyndns.domain.com
DDNS Service provider = no-ip.com + нажать кнопку "Switch service"
Domain = your.dyndns.domain.com
Username = your_username
Password = your_password
6.2.2 Нажать кнопку “Reload” в строке “myddns_ipv4”.
6.2.3 Нажать кнопку “Delete” в строке “myddns_ipv6” — если вам достаточно IPv4.
7. Настроить переадресацию портов (port forwarding)
Перейти в меню Network > Firewall > Port Forwards.
Нажать кнопку “Add” внизу:
Name = SSH
Protocol = TCP+UDP
External port = 22
Internal IP address = 192.168.1.2
Save
Нажать кнопку “Add” внизу:
Name = Anydesk
Protocol = TCP+UDP
External port = 7070
Internal IP address = 192.168.1.2
Save
8. Сохранить конфигурацию в архивный файл.
Перейти в меню System > Backup.
Нажать на кнопку “Generate archive”.
Сохранить скачанный файл в надежном месте.
В этом же пункте меню можно загружать обновления прошивки – кнопка “Flash image…”.
Заключение
Таким образом, мы рассмотрели недорогие в применении меры повышения безопасности и стабильности работы домашних роутеров с помощью прошивки OpenWRT. В то же время, следует заметить, что ни одна разовая мера безопасности, включая внедрение дорогого оборудования и программного обеспечения, не даст гарантий отсутствия инцидентов безопасности. Если вам нужен действительно высокий уровень защищённости, то необходим комплексный системный подход, начиная с аудита вашей ИТ-инфраструктуры, в том числе, домашнего окружения.