• Нагадуємо, що спроби повторити дії автора можуть призвести до втрати гарантії на устаткування і навіть до виходу його з ладу. Матеріал наведено виключно в ознайомлювальних цілях. Якщо ж ви збираєтеся відтворювати дії, описані нижче, настійно радимо уважно прочитати статтю до кінця хоча б один раз. Редакція 3DNews не несе ніякої відповідальності за будь-які можливі наслідки.
    Передісторія
    Для початку треба розібратися, що таке прошивка. Прошивкою прийнято називати частина енергонезалежній пам'яті практично будь-якого цифрового пристрою, в якій міститься його мікропрограма. А сам термін «прошивка» з'явився понад півстоліття тому, коли в комп'ютерних системах стала використовуватися ферритова пам'ять. Кожна комірка пам'яті в буквальному сенсі прошивалась проводом. Для перепрошивання ж доводилося висмикувати старі дроти і прошивати нові. Втім, це сильно спрощене пояснення процесу і до сучасних реалій воно не має ніякого відношення. Зараз же, зі здешевленням пам'яті, все частіше замість класичних мікропрограм прошивається повноцінна ОС, хоч і в урізаному вигляді (наприклад, відсутня можливість роботи з графікою). А чому б і ні? Багато пристрою принципово не сильно відрізняються від будь-якого ПК. У них є процесор, пам'ять, накопичувач, набір різних мікроконтролерів та інші компоненти. Тут, звичайно, можна посперечатися, але не будемо заглиблюватися в питання термінології, так як для кінцевого користувача не так уже важливо, що знаходиться всередині коробки - лише б працювала як треба. Ну а під альтернативними прошивками розуміються будь-які прошивки, які не створені розробниками пристрою.
    Часто розробники досить ревно ставляться до питань, пов'язаних з отриманням, вивченням, модифікацією прошивок з подальшою їх заливкою назад у пристрій. Найчастіше такі дії автоматично призводять до втрати гарантії. Так що якщо ви вирішили що-небудь перепрошити, то для початку ознайомтеся з ліцензійною угодою. Однак втратою гарантії справа не обмежується - нерідкі випадки судових позовів від компанії-розробника enthusiasts, які займаються модифікацією прошивок. Аналогічним чином можуть каратися і спроби апаратної модифікації пристроїв, начебто відомого процесу «чипования» деяких ігрових консолей. Особливо хитрі товариші можуть використовувати в якості програмної бази для створення прошивок відкрите пз під вільною ліцензією. У цьому випадку навіть викладаються вихідні тексти. Однак на апаратному рівні тим або іншим чином блокується можливість використання альтернативних прошивок. У кращому випадку вам вдасться відновити початкову прошивку, в гіршому ви отримаєте даремний «цегла» (brick, «брикнутое» пристрій), з яким нічого не можна зробити, крім як викинути у смітник.
    Нарешті, найголовніше питання. Навіщо взагалі потрібні альтернативні прошивки? Причин може бути багато. Як правило, такі прошивки набагато більш функціональні, дозволяють використовувати заблокированные можливості пристрою (таке часто буває, наприклад, з відеокартами), мають більш зручний інтерфейс, працюють набагато стабільніше або позбавлені будь-яких недоліків оригінальних прошивок. Деякі виробники роками не хочуть або не можуть виправити помилки в своєму ПО, а іноді просто припиняють підтримку непоганого, в загальному-те, пристрої з тонким натяком, що пора б прикупити більш свіжу версію «залозки». Зрештою, багато чого в цьому світі робиться just for fun.
    Альтернативні прошивки для ASUS WL-520GU
    Історія альтернативних прошивок для роутерів почалася з появою легендарної серії пристроїв Linksys WRT54G в 2002 році. Після відкриття початкових кодів для першого роутера цієї серії на їх основі була створена альтернативна прошивка OpenWrt. Незабаром з'явилися аналогічні проекти, які стали стрімко розвиватися, і в якийсь момент для того ж Linksys WRT54G існувало більше 30 (!) альтернативних прошивок. Зараз OpenWrt і інші прошивки підтримують набагато більшу кількість моделей роутерів різних виробників. Однак найбільш популярними пристроями для перепрошивання досі є роутери тієї самої серії Linksys, а також пристрої ASUS серій WL і RT. В якості прикладу ми розглянемо маршрутизатор ASUS WL-520GU. Ті, хто вже знайомий з альтернативними прошивками, нічого нового для себе не знайдуть. Для інших же буде коротко розказано про найпопулярніших прошивках для цієї моделі роутера.
    Отже, що ми маємо? ASUS WL520-GU було випущено більше трьох років тому і на той момент був досить непоганим рішенням для організації домашньої мережі за прийнятну ціну. Апаратні характеристики маршрутизатора за нинішніми мірками слабенькі: чіпсет Broadcom BCM5354 з частотою 240 МГц, 16 Мбайт оперативної пам'яті і 4 Мбайт постійною. З бонусів тільки USB-порт, призначений, в першу чергу, для підключення принтера до локальної мережі. Загалом, не особливо развернешься, але дещо все-таки можна зробити. Початкова версія прошивки викликала у користувачів безліч нарікань, як це зазвичай буває з новими продуктами. Частина претензій була задоволена, а деякі побажання - немає. Остання стабільна версія офіційної прошивки вийшла більше року тому, так що навряд чи варто чекати серйозних оновлень. До того ж лінійка роутерів поповнилася новими моделями. Якщо є бажання вичавити більше з старого друга, то вихід один - альтернативна прошивка.
    Підготовка
    Перепрошиваться ми будемо з допомогою стандартної утиліти ASUS для відновлення прошивання маршрутизатора. Завантажити її можна на сайті підтримки. Там же на всяк випадок візьмемо і останню стабільну версію пз за номером 3.0.1.4_RU. Отже, заходимо на сайт і в розділі «Головна завантаження» поетапно вибираємо «Бездротове обладнання» → «Точка доступу» → WL520-GU і натискаємо кнопку «Пошук».
    У спливаючому вікні вибираємо в списку Windows 7 і натискаємо «Загальний пошук».
    В розділі «Програмне забезпечення» знаходимо і завантажуємо останню прошивку (Версія 3.0.1.4_RU).
    В розділі «Утиліти» завантажуємо архів з програмами (Версія 4.0.7.9).
    Прошивку з першого архіву куди-небудь розпаковуємо, наприклад на диск C:, а з другого встановлюємо програму з папки Utility. Краще відразу відключити брандмауер. Від роутера необхідно від'єднати всі мережеві кабелі, крім одного, який слід підключити до мережевої карти ПК. За Wi-Fi перепрошиться не вдасться. В установках з ’ єднання по локальній мережі у властивостях IPv4 треба вказати адресу з підмережі 192.168.1.10/255.255.255.0.
    Тепер знайдемо маленьку втоплену кнопку з написом Restore на задній стінці роутера і зажмем її на кілька секунд, наприклад за допомогою стрижня від ручки. Відпускаємо клавішу і від'єднуємо кабель живлення. Знову натискаємо кнопку і, не відпускаючи її, підключіть кабель живлення. Через кілька секунд індикатор живлення роутера на передній панелі почне повільно блимати. Тепер пристрій перебуває в режимі відновлення, а кнопку Restore можна відпустити. У головному меню з ASUS Utility → WL-520GU Wireless Router запускаємо програму Firmware Restoration. Тиснемо на кнопку «Огляд», вибираємо файл з потрібною прошивкою, натискаємо «Завантажити» і чекаємо, поки прошивка завантажиться в роутер і встановиться. Зазвичай на це йде до 5 хвилин. Після цього треба відключити і знову підключити кабель живлення, а в налаштуваннях підключення по локальній мережі виставити автоматичне отримання IP адреси. Тепер можна відкрити браузер і набрати в адресному рядку
    192.168.1.1
    для отримання доступу до веб інтерфейсу оновленої прошивки. Подальші дії залежать від конкретної версії прошивки. Якщо з першого разу не вийшло оновити ЗА роутера, то треба ще раз ввести його в режим відновлення і повторити всі операції. Для відновлення вихідної прошивки просто треба вказати шлях до неї в Firmware Restoration. У деяких випадках програма може лаятися на некоректний файл. Тоді йому треба дати таке ж ім'я, як і в оригінальної прошивки.
    Прошивка від Олега
    Мабуть, найбільш відома альтернативна прошивка серед російськомовних користувачів. Можливо, тому що розробкою цього проекту займається наш співвітчизник Олег Вдовикин. Втім, в інших країнах ці прошивки теж популярні. До того ж проект - один з найстаріших і найбільш просунутих в цій області. Інтерфейс прошивки схожий оформленням на офіційну версію пз для старих моделей маршрутизаторів ASUS. До речі, за деякими відомостями код Олега використовується і в офіційних прошивках. Спочатку дана прошивка розроблялася для серії ASUS WL500g, але в тестових версіях підтримуються і свіжі моделі з індексом RT. Зараз розробкою і підтримкою проекту займається група ентузіастів. Останні складання доступні за адресою http://code.google.com/p/wl500g/downloads/list.
    Среди головних достоїнств прошивки від Олега варто відзначити стабільність, функціональність і простоту використання. Саме ці чинники сприяли зростанню популярності цього проекту. Для перерахування всіх можливостей прошивки знадобилася б не одна сторінка - все-таки за стільки років розробки було введено величезна кількість функцій. Ключові серед них такі: безліч способів підключення до провайдерів, підтримка IPv6/IPTV/мультикаста, вбудований шейпер трафіку, можливість створення NAS на базі роутера з допомогою підключення знімного накопичувача USB-порту і з доступом по FTP/CIFS/NFS, розширене керування правилами доступу і планувальник для них, підтримка USB-модемів 3G/CDMA/WiMax/Dial-Up, робота з SNMP/Radius/LLTD, тонке налаштування бездротових з'єднань, а також підтримка принтерів і навіть веб-камер. Але це далеко не повний список. Серед корисних особливостей прошивки також варто відзначити наявність доступу Telnet/SSH і можливість моніторингу завантаження процесора і мережних з'єднань в режимі реального часу. Єдиний недолік - слабка розширюваність можливостей прошивки. Загалом, це ідеальний варіант для тих, кого не влаштовує стандартна прошивка роутера ASUS, і тих, хто хоче просто спробувати поставити що-небудь альтернативне.
    Tomato
    Спочатку проект робився для роутерів серій Linksys WRT54G і Buffalo WHR-G54, але зараз є безліч неофіційних зборок для інших пристроїв. У тому числі і для ASUS WL520-GU. На мій погляд, це одна з найбільш вдалих і збалансованих за всіма параметрами альтернативних прошивок. Особливістю Tomato є простий, красивий і зручний веб інтерфейс на базі AJAX.
    Можливостей у Tomato трохи менше, ніж у інших прошивок, але багато чого залежить від конкретної збірки. До того ж бажаючі можуть завантажити цілком очевидна SDK для створення власних варіантів прошивки. Крім стандартних для будь-якого роутера функцій, є підтримка VLAN, IGMP, Wake-On-LAN, можливість створення NAS, хороший планувальник завдань, досить легка розширюваність і adjustability за рахунок скриптів, підтримка підключення Telnet/SSH, робота відразу з декількома DDNS, а також широкі можливості з налаштування бездротової точки доступу в різних режимах. У різних збірках доступні також передустановлений torrent-клієнт, VPN-сервер і багато іншого. З іншого боку, є можливість легкої установки додаткових пакетів у внутрішню пам'ять або на USB накопичувач.
    Однак це далеко не все. Tomato має просто прекрасними можливостями з тонкого налаштування QoS і шейпінгу трафіку, пробросу портів і підтримки великої кількості одночасних з'єднань. Є також прямо таки параноїдальний набір можливостей з моніторингу всього, що відбувається з маршрутизатором і що передаються трафіком, - логи, статистика, графіки і так далі. Але найголовніше, що все це «загорнуто» в дуже зручний інтерфейс, з яким легко розбереться непідготовлений користувач. Вердикт простий - якщо не сподобалася прошивка від Олега, то сміливо пробуйте Tomato.
    OpenWrt
    Родоначальник чи не всіх проектів по створенню альтернативних прошивок для маршрутизаторів. Нині позиціонується як рішення не тільки для маршрутизаторів, але і для інших вбудованих систем, а також і більш серйозних продуктів. Для ASUS WL520-GU підходить одна з стандартних збірок. Цікаво, що релізи OpenWrt називаються на честь якого-або алкогольного коктейлю. Набір базових функцій прошивки досить стандартний, і нічого вражаючого в ньому немає. Однак треба розуміти, що OpenWrt є швидше базової платформою для побудови інших прошивок. Мається на увазі, що користувач самостійно доведе функціональність до потрібного рівня. Багато в чому цей процес полегшується наявністю зручного пакетного менеджера для встановлення додаткових опцій.
    проте не можна сказати, що це погана або незручна прошивка. OpenWrt навряд чи підійде недосвідченим користувачам, але для обізнаних людей це дуже гнучкий і зручний варіант, який можна легко і точно підігнати під свої потреби. Веб інтерфейс за замовчуванням у прошивки вкрай простий, нехитрий і не дуже зручний. Відверто кажучи, для управління OpenWrt набагато краще використовувати Telnet або SSH. Втім, існують і інші реалізації веб-морди, більш зручні. Точно так само для вирішення кожного завдання деколи є не один і не два пакета розширень. У цілому я б не рекомендував на перших порах ставити «голу» прошивку OpenWrt, краще скористатися який щось більш зручною готової зборкою. Благо проектів на базі цієї прошивки дуже багато. Наприклад, пакет надбудов X-Wrt.
    Gargoyle
    Gargoyle як раз є однією з найбільш простих збірок OpenWrt з не найгіршим веб-інтерфейсом. Доступні також і окремі пакети ipkg. Gargoyle базується на попередньому гілці OpenWrt, а значить ця пронизливо більш стабільна, але трохи менш функціональна. Вона поєднує в собі досить простий інтерфейс для налаштування роутера звичайним користувачем і всю гнучкість OpenWrt. У якомусь сенсі Gargoyle - більш гуманний спосіб спробувати той же OpenWrt, так що заради експерименту можна поставити саме цю прошивку. Вона також надає прості засоби для моніторингу трафіку.
    А під капотом…
    DD-WRT
    Найбільш відомий проект по створенню альтернативних прошивок, до того ж поставлений на комерційні рейки. Є платні варіанти збірок, які мають трохи більше можливостей у порівнянні зі звичайними. DD-WRT підтримує дуже велика кількість пристроїв. Причому для кожного з них існує, як правило, далеко не одна версія прошивки. Особливістю DD-WRT є досить простий інтерфейс, велика кількість функцій і можливостей для тонкого налаштування роутера простим користувачем. Разом з тим при доступі через командний рядок Telnet і SSH відкривається ще більше можливостей. Прошивка постійно поліпшується, оновлюється і обростає все новими функціями, зберігаючи при цьому стабільність роботи.
    Проект має непогану документацію на базі Wiki, а також форум для спілкування користувачів. З одного боку, це сприяє більш детального опису всіх нюансів роботи з прошивкою. З іншого боку, місцями в документації коїться повна плутанина і знайти відповідь на своє питання або почитати корисні поради буває вкрай складно. Для кожної моделі роутера зі списку підтримуваних пристроїв заведена окрема сторінка, а також рекомендується найбільш підходяща зборка прошивки. Наприклад, для ASUS WL520-GU пропонується досить стара версія. Можна скористатися і їй, але краще взяти більш свіжий реліз від Brainslayer. Для цього заходимо сюди і вибираємо найновішу версію (див. дату). Якщо є зборка під якусь конкретну модель роутера, то вона поміщається в папку з відповідним іменем. У нашому випадку потрібно перейти в папку Broadcom і скачати два файлу: dd-wrt.v24_mini_asus.trx і dd-wrt.v24_usb_generic.bin.
    За допомогою першого файлу здійснюється базова перепрошивка роутера за інструкцією, описаною в початку статті.
    При первинному вході через веб інтерфейс DD-WRT запропонує задати власні логін і пароль для доступу до налаштувань роутера. Введіть їх і натисніть Change password. Потім натисніть на вкладку Administration і введіть у спливаючому вікні тільки що вибрані логін з паролем. Перейдіть на вкладку Firmware Upgrade, виберіть другий файл і натисніть кнопку Upgrade. Протягом п'яти хвилин заллється і встановиться нова прошивка. Після цього витягніть і знову вставте кабель живлення, зайдіть у веб інтерфейс (192.168.1.1) і знову введіть логін з паролем. Все, тепер DD-WRT готовий до роботи.
    Навіть у базових збірках DD-WRT є ряд цікавих функцій - все та ж підтримка накопичувачів/принтерів, VLAN, QoS, IPv6, WOL, DDNS, 802.1x, Radius і навіть VoIP. Для кожної з гілок проекту існує достатня кількість збірок з додатковими або, навпаки, прибраними можливостями начебто torrent-клієнта або сервера/клієнта VPN. Так що для будь-якого роутера можна вибрати прошивку на свій смак. Одним з головних переваг DD-WRT і більшості інших *WRT-проектів є розширюваність за рахунок вбудованого пакетного менеджера або системи Optware. В цілому, DD-WRT також можна порекомендувати новачкам для перепрошивання роутера.
    Висновок
    насамкінець хотілося б дати кілька маленьких рад. По-перше, виконуйте всі операції по перепрошивки акуратно і спокійно. Якщо дотримуватися всіх інструкцій, то шанс перетворити пристрій «цегла» мінімальні. Поспішати не треба, особливо коли відбувається процес заливання образу системи в роутер і безпосередньо прошивка. До речі, якщо ви вже встановили яку-небудь з перерахованих прошивок, то для переходу на нову або для повернення вихідної, як правило, не потрібно перекладати роутер в режим відновлення. Досить скористатися веб-інтерфейсом і стандартною функцією заливки нової прошивки. Нарешті, ще один нюанс для користувачів Windows 7. У цій ОС за замовчуванням клієнт Telnet не встановлено. Встановити його можна так: «Панель управління» → «Програми та компоненти» → «Компоненти Windows» → «Клієнт Telnet».
    На цьому, мабуть, усе. У статті ми торкнулися лише деякі, найбільш популярних прошивок для маршрутизаторів. Адже є ще й різні можливості апаратної модифікації. Але для людини, яка ніколи в житті не тримав у руках паяльника, це буде дуже складно. Так що поекспериментуйте з альтернативними прошивкою. Це не дуже складно і найчастіше корисно. Удачі!