
Протягом років створення саморобного маршрутизатора з комп’ютера, що вже став електронним сміттям, відбувалися певні зміни. У попередніх частинах серії ми розглядали, як цей процес змінювався, і намагалися завантажити OpenWrt для x86 на такий пристрій. Після початкової невдачі з завантаженням з SD-карти на одній системі, інша система з новішою материнською платою – Intel Board D2500CC – успішно завантажила OpenWrt з SD-карти, вставленої в USB-кардрідер.
На жаль, OpenWrt не розпізнав жодного придатного для використання Ethernet-інтерфейсу, незважаючи на наявність чотирьох контролерів Intel Ethernet, два з яких були підключені до активних мереж. Повернувшись до проєкту нещодавно, я зрозумів, чому обидва бортові Ethernet-контролери Intel 82574L не відображалися в OpenWrt: драйвери для контролерів Intel 82574L містяться в пакеті драйверів e1000e, тоді як у наданому x86-образі присутній лише пакет e1000. Ця проблема досі зберігається в профілі образу “generic”.
Однак, замість того, щоб одразу займатися створенням власного образу з пакетом kmod-e1000e, я вирішив спочатку спробувати OPNsense.
Усі Можливості
Досить сказати, що OPNsense – це зовсім інша галактика порівняно з легким і приємним OpenWrt. Замість того, щоб бути просто базовим маршрутизатором, ви отримуєте доступ до списку функцій, де, ймовірно, швидше буде запитати, чого він не робить. Це програмне забезпечення на базі FreeBSD спеціально націлене на комерційні продукти, пропонуючи функції брандмауера, аналізу мережевого трафіку та маршрутизації, а також мережевої безпеки. Плагіни додають функції, які, ймовірно, змусять середнього мережевого адміністратора пустити слину.
Хоча це може бути надмірним, коли вам просто потрібно налаштувати споживчий маршрутизатор, не кажучи вже про наявність достатніх навичок мережевого адміністрування, щоб не нашкодити собі під час роботи з майстром налаштування маршрутизатора та підключення Ethernet-кабелів, все ж приємно знати, що вся ця потужність у вас під рукою, якщо вона колись знадобиться.

Сторінка “Розпочати роботу” для OPNsense також досить заспокоює, обіцяючи, що скромна плата Intel Atom D2500CC 2012 року з двома ядрами по 1.8 ГГц буде чудово працювати. Хоча встановлено лише 2 ГБ DDR3, модулі DDR3 SODIMM все ще доступні і відносно недорогі, тому їх легко накопичити, щоб мати стратегічний запас для оновлення старих систем до 4 ГБ і більше, якщо вони це підтримують. Потай зачиняє шухляду зі запасами оперативної пам’яті.
Щодо зберігання даних, то 4 ГБ SD або CF-карта вважаються мінімальним варіантом, а 120 ГБ SSD – рекомендованим. Враховуючи, що я буду жити на повну з OPNsense, я вирішив витратитися на цілий 128 ГБ SATA SSD, причому посеред кризи постачання. Таким чином, можна буде встановити OPNsense з USB-накопичувача і запустити систему без обмежень роботи “nano”-образу з SD-карти або подібного.
Цікавим аспектом є те, що хоча Atom CPU D2500 технічно є 64-бітним процесором і повинен добре працювати з 64-бітними дистрибутивами Linux, якщо материнська плата це підтримує, фокус OPNsense виключно на x86_64 робить це вирішальним аспектом. Чи доведеться мені витягнути ще один комп’ютер з електронного сміття, щоб це працювало? Слідкуйте за новинами.
Час Розгортання

Інструкції на сторінці OPNsense “Розпочати роботу” дещо розпливчасті щодо того, який саме образ використовувати, оскільки образи DVD ISO, VGA, Serial і Nano мають, очевидно, конкретні цілі та призначення, які нелегко розшифрувати, коли намагаєшся зрозуміти, чим саме відрізняються образи “DVD” і “VGA”. Пошук за допомогою DuckDuckGo пізніше та знайдені пропозиції – включно з глибшими документами – вказали мені на образ “VGA”. Цей файл .img потрібно витягти з архіву .bz2, перш ніж його можна буде записати за допомогою Rufus або подібного на USB-накопичувач.
На щастя, ця напівздогадка щодо правильного образу виявилася вірною, оскільки система успішно завантажилася в live-образ, розвіявши початкові побоювання щодо відторгнення системою сучасних 64-бітних технологій. Цікаво, що інсталятор працює шляхом входу в live-сесію під обліковими даними “installer” з паролем “opnsense”, що є лише трохи незручним, коли ви опиняєтеся перед вікном входу для встановлення ОС.
Лише через одинадцять хвилин і сорок п’ять секунд роботи OPNsense в live-режимі встановлення було завершено, і мене попросили вийняти USB-накопичувач і перезавантажити систему, щоб помилуватися величчю OPNsense. Що означає переважно виконати первинні налаштування і переконатися, що все, що має працювати, дійсно працює. Чи завантажиться система взагалі?
Перше Завантаження
З певним трепетом я натиснув кнопку живлення на передній панелі корпусу, і побачив, як система проходить через усі типові приємні етапи завантаження FreeBSD, хоча все було спотворено, оскільки портативний монітор, який я використовував, з якоїсь причини не сприймав роздільну здатність 640×480. Під час встановлення я обрав типовий варіант файлової системи ZFS, разом з усіма іншими налаштуваннями за замовчуванням. Єдине, в чому я сумнівався, це чи буде вона за замовчуванням визначати правильний Ethernet-порт як WAN-порт, чи мені доведеться його перепризначити.
Це побоювання виявилося безпідставним: другий інтерфейс (em1), який я підключив до активної LAN-мережі, був призначений роллю WAN, залишаючи другий інтерфейс (em0) як новий LAN-інтерфейс. За замовчуванням OPNsense призначає клієнтам на цьому LAN-інтерфейсі адреси стилю /24 з маршрутизатором і DHCP-сервером, розташованим на 192.168.1.1. Клієнтам призначаються адреси в діапазоні 192.168.1.100–200.
До речі, мені дуже подобається, як OPNsense повідомляє про основні зміни стану, такі як завершення завантаження та перехід до перезавантаження/вимкнення. Це відбувається за допомогою запуску скрипта звукових сигналів, який створює мелодію, яку навіть напівглухий мережевий адміністратор, що працює в іншому кінці галасливої серверної кімнати, навряд чи пропустить. Це не жарт, я справді ціную чітку сигналізацію для всього, що вимагає від присутніх у кімнаті 100% обізнаності про цей факт.
З радісним повідомленням UP на WAN-інтерфейсі em1 та щасливо блимаючими світлодіодами на WAN-інтерфейсі, настав час підключити клієнта до нового LAN-порту, щоб побачити, чи тепер у мене є справжній інтернет-маршрутизатор.
Тестування Швидкості

Замість того, щоб діставати новий ПК або ноутбук, я використав свій ігровий ноутбук 2013 року з Manjaro. Це приблизно той самий вік, що й материнська плата Intel у новому маршрутизаторі OPNsense, хоча обидва вони явно корисні по-різному. На щастя, обидві системи були дуже раді бачити одна одну: підключення нового Ethernet-кабелю між ними одразу ж викликало спливаюче вікно підтвердження в Manjaro про Ethernet-з’єднання.
Оскільки Manjaro базується на Arch, першим тестом було оновлення системи, яке завантажило майже гігабайт оновлень. За кілька хвилин все було завантажено, і вентилятор ноутбука почав працювати, ніби закликаючи всіх трохи сповільнитися. Очевидно, настав час провести порівняльне тестування з іншими системами, які не були обмежені цим новим маршрутизатором OPNsense.
Тут я отримав дещо дивні результати, які, можливо, більше пов’язані з ненадійністю браузерних тестів швидкості інтернету. Спочатку, використовуючи fast.com у Firefox, я отримав скромні 61 Мбіт/с на завантаження і 23 Мбіт/с на віддачу, що мене дещо стурбувало. Проте, коли я перейшов на свій звичайний ПК, щоб запустити той самий тест у Waterfox на базі Firefox ESR, я отримав дуже схожий результат: 55/36.
Для перевірки я протестував за допомогою speedtest.net, який дав ноутбуку з Manjaro великий палець догори з результатом 184/187 Мбіт/с, що ближче до того, що мій інтернет-провайдер заявляє як з’єднання приблизно 300/150 Мбіт/с. На моєму ПК з Waterfox результат був ще нижчим першого разу, але другого разу він був набагато вищим і ближчим до результату на ноутбуці з Manjaro. Все відносно, гадаю.
Я також перевірив додаток speedtest.net на своєму Android-телефоні, використовуючи звичайну Wi-Fi точку доступу, і отримав добрі 163/142 Мбіт/с. Тож, що б там не відбувалося, це, ймовірно, пов’язано з JavaScript, сумісністю браузерів або подібними хитрощами, як і близько 90% усіх мережевих проблем у наші дні.
Щаслива Маршрутизація
У будь-якому випадку, з’єднання на ноутбуці з Manjaro через Firefox за допомогою маршрутизатора OPNsense було стабільним протягом години, при цьому speedtest показав 16 мс пінгу, і досі проблем не виявлено. Мені безумовно доведеться знайти кращий спосіб тестування з’єднання, а також не забути перевірити навантаження на систему цього новоствореного OPNsense, але поки що це був надзвичайно і приємно нудний досвід.
Також є багато інших функцій в OPNsense, які так і просяться бути досліджені далі, для чого я з радістю приймаю запити, оскільки я та професійне мережеве обладнання максимум знайомі на рівні сусідів. З якоїсь причини занурення в OPNsense викликає відчуття, що в певний момент вам абсолютно необхідно отримати 19-дюймову стійку, щоб відповідати клубу.
