За время экспериментов через мои руки прошли три маршрутизатора. Один от D-Link и два от Asus. Все они нуждались в улучшении. Но это стало понятно позже. После того, как на официальном сайте я увидел новые релизы прошивки, поход в поисковики сделал свое дело. Выяснилось, что перепрошивка дело обычное и даже нужное. Первый раз я прошил D-Link ради любопытства. Хотелось посмотреть, что будет. Ему это пошло на пользу. Последующие Asus WL-520gu и RT-N16 перешивались без всяких сомнений. Важно перед "операцией" определиться зачем прошивать и какой прошивкой. Зачем прошивать - вроде бы ясно. Новая прошивка - новые возможности. А вот какой прошивкой - нужно подумать. В любом случае, как правило, всегда есть возможность откатиться к заводским параметрам.

Если вы не знаете какую прошивку использовать, потолкайтесь в Google и познакомьтесь с различными мнениями. Я для себя в свое время определился. Мой выбор DD-WRT. Кроме фирменных, я ставил прошивку "от Олега". Наверняка это очень хорошая прошивка. Многие ею пользуются. Но мне она не понравилась. Кроме всего не понятно, почему отечественная разработка имеет англоязычный интерфейс. Как-то не патриотично. DD-WRT на мой взгляд более демократична, интуитивно понятна, имеет массу полезностей и наконец интернациональна.

Итак прошивка DD-WRT. Для того чтобы обновиться на DD-WRT, необходимо перевести роутер в режим восстановления прошивки. Подключаем к нему компьютер через LAN,вытаскиваем все USB устройства из роутера. Прописываем на компьютере сетевой адрес 192.168.1.2 и адрес шлюза 192.168.1.1. Устанавливаем с диска от роутера прилагаемое ПО или качаем с сайта Asus.

Далее необходимо выключить роутер, затем ручкой или другим тонким предметом нажать черную кнопку "Reset" и включить кабель питания, продолжая удерживать ту же кнопку. При этом на роутере начинает мигать индикатор питания на передней панели. После этого запускаем программу Firmware Restoration из папки ASUS Utility, предварительно полностью выключив все брандмауеры, в т.ч. встроенный в Windows.

Далее необходимо "подсунуть" программе файл с начальной прошивкой, созданной специально для обновления со стандартной. Для скачивания начальной прошивки заходим в базу прошивок.

Вводим последние 3 символа имени роутера в поле ввода. Выбираем Asus RT-N16 и получаем список рекомендованных прошивок. Закачиваем Asus RT-N16 Firmware: Image for initial flashing и например NEWD K2.6 Big Generic. Впоследствии NEWD K2.6 Big Generic можно будет легко заменить на более свежую.

Примечание: если ваш роутер "не хочет" заходить в инженерный режим (с моим такое случалось), можно попробовать "загнать" его туда выполнив аппаратный сброс, по методу 30/30/30. При включенном питании роутера нажимаем кнопку reset, держим 30 секунд, не отпуская кнопку отключаем питание и держим еще 30 секунд, не отпуская кнопки включаем питание и вновь удерживаем кнопку reset 30 секунд.

ВАЖНОЕ ДОПОЛНЕНИЕ.
Однажды(19.06.2012г.) я решил обновить прошивку. Поскольку я считал себя опытным бойцом, то прошивку выбрал небрежно, в результате роутер перестал "пинговаться" и внешне казался мертвым, хотя и подмигивал индикаторами Lan. При этом он не хотел входить в "инженерный режим" (режим восстановления прошивки). На этот случай я нашел решение , которое мне помогло.

Цитирую:
Ситуация: вы случайно прошили роутер Asus RT-N16 (который везде значится под типом R2) прошивкой для роутеров типа R1. Разумеется ваш аппарат сделал вид, что приказал долго жить. Веб-морда не работает, IP адреса не раздаются... Вы пытаетесь ввести его в режим восстановления, но он отказывается. Вы уже отчаиваетесь, набираетесь уверенности в том, что получили кирпич. Но, как я вычитал на одном форуме, "роутеры Asus невозможно сделать кирпичами". Поэтому производим следующие действия:

1. Сбрасываем в заводские настройки. Для этого отключаем ВСЕ кабели (включая питание) и зажимаем (вы подумали Reset, а фиг вам) кнопку WPS. Удерживая ее нажатой вставляем провод питания, держим около пяти секунд и отпускаем.

2. Настраиваем компьютер, с которого будем восстанавливать. Прописываем статические IP адрес и маску подсети 192.168.1.2 и 255.255.255.0 соответственно. Устанавливаем Firmware Restoration с диска утилиток, запускаем и выбираем образ прошивки.

3. Переключаем роутер в режим восстановления. Вставляем в любой LAN порт роутера кабель, подключенный другим концом к компьютеру, с которого будет идти восстановление. Выдергиваем питание, зажимаем Reset, вставляем питание, держим ресет, пока индикатор питания не замигает равномерно медленно, отпускаем ресет и идем к компьютеру нажимать кнопку Загрузить.

4. Ждем и смотрим.

5. Сбрасываем роутер в заводские настройки через Web-GUI. Тут и без моих пояснений ясно, как делать.

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

Проверить готовность роутера к приему прошивки можно командой ping 192.168.1.1 До аппаратного сброса ttl будет равен 64, после сброса ttl становится равным 100.
Итак ваш роутер готов принимать прошивку.

Выбираем в окне Firmware Restoration файл с минимальной прошивкой с расширением *.trx и нажимаем загрузить. Начнется процесс прошивки.

После того как программа проинформирует вас о окончании процесса передачи файла, подождите 3-5 минут и отключите роутер от питания. Через 30-40 сек включаем роутер, ждем, пока он загрузится и "пингуем" ping 192.168.1.1, если ttl=64, то все "ОК".

Меняем ip компьютера на автомат и заходим в WEB-интерфейс . Нас попросят изменить имя пользователя и пароль. Меняем и вновь перезагружаем роутер и заходим в WEB-интерфейс уже с новым паролем. Далее можно залить полноценную прошивку от dd-wrt.

Закачав прошивку идем в WEB-интерфейс . Вкладка Administration Language Selection и меняем язык на русский. Жмем Applay Settings, затем Reboot Router. Перегрузившись заходим на вкладку Техобслуживание, Обновление прошивки. Выбираем скачанную прошивку и нажимаем обновить.

Все, вы с новой прошивкой.

Осталось настроить параметры своего соединения, wi-fi, подключить usb-диск, установить FTP сервер, Web-сервер, если нужно Samba, установить Optware, перенаправить порты(если нужно), организовать удаленное управление роутером и компьютером и многое другое, чего душа пожелает. В общем только сейчас начнется настоящая и интересная работа!

Соответствующую вашей модели роутера и его аппаратной версии.

Загрузите прошивку DD-WRT в маршрутизатор. О том, как это сделать для роутеров TP-Link, написано . Инструкцию по замене прошивки для иных производителей маршрутизаторов можно найти на сайте разработчика DD-WRT или на их форуме .

После обновления прошивки введите в браузер адрес 192.168.1.1 . Вы увидите страницу с просьбой ввести новое имя пользователя и пароль. Введите их и обязательно запишите .

Перейдем к настройке роутера. В меню выберите Setup — Basic Setup . В разделе Network Setup в поле Local IP Address пропишите 192.168.99.1 , это будет новый адрес вашего маршрутизатора. Меняем его для того, чтобы в будущем исключить возможные сетевые конфликты с другими роутерами в вашей сети. Которые с большой вероятностью у вас есть.

В Local DNS прописываем ip адрес DNS сервера — 8.8.8.8

На той же странице в разделе Network Address Server Settings (DHCP) выключите 3 опции Use DNSMasq for DHCP, Use DNSMasq for DNS, DHCP-Authoritative

Внимание, после применения параметров адрес роутера сменится на 192.168.99.1

Чтобы не потерять контроль над роутером, настроим удаленный доступ из внешней сети через WAN порт. Перейдите на страницу Administration — Management . В разделе RemoteAccess включите в опции Web GUI Management отметку HTTP . После этого роутер будет доступен по его внешнему ip адресу и порту 8080.

Перейдем к настройке WiFi точки доступа. Откройте страницу Wireless — Basic settings . В поле Wireless Network Name (SSID) введите название своего WiFi хотспота, например, название вашего заведения.

В названии хотспота возможно использовать только английские буквы, цифры и символы. Буквы кириллицы использовать нельзя.

Перейдите на страницу Wireless — Wireless Security , убедитесь, что опция Security Mode находится в состоянии Disabled .

Теперь непосредственно перейдем к настройке самого хотспота.

    • Откройте страницу Services — Hotspot
    • в разделе Chillispot активируйте опцию Chillispot, установив отметку Enable
    • в поле Primary Radius Server IP/DNS введите radius.сайт
    • в поле Backup Radius Server IP/DNS введите radius2.сайт
    • в DNS Server IP введите 8.8.8.8
    • в Redirect URL введите https://auth.сайт/hotspotlogin
    • в Shared Key введите ключ wfs123
    • в Radius NAS ID введите Идентификатор вашего хостпота из личного кабинета
    • в поле UAM Secret введите пароль вашего хотспота из личного кабинета
    • в поле UAM Allowed введите

95.167.165.64/27,195.14.118.0/23,91.229.116.0/22,213.59.200.64/28,91.200.28.0/24,91.227.52.0/24,198.241.128.0/17,66.211.128.0/17,216.113.128.0/17,paypal.com,paypalobjects.com,paymaster..paymaster.ru,www.paypal.com,www.paypalobjects.com,www..сайт,support.сайт,lk.сайт,account.сайт,s1.сайт,s2.сайт,s3.сайт,s4.сайт,s5.сайт,s6.сайт,s7.сайт,s8.сайт,s9.сайт,s10.сайт,s11.сайт,s12.сайт,s13.сайт,s14.сайт,s15.сайт,s16.сайт,s17.сайт,s18.сайт,s19.сайт,s20.сайт

Для соцсетей дополнительно нужно указать адреса:
103.4.96.0/22,104.108.32.0/20,104.244.40.0/21,107.20.0.0/14,157.240.0.0/16,173.194.0.0/16,173.252.64.0/18,184.84.0.0/14,185.16.244.0/22,185.29.130.0/24,185.32.248.0/22,185.45.4.0/22,188.166.114.0/24,192.133.76.0/22,199.16.156.0/22,199.201.64.0/22,199.59.148.0/22,199.96.56.0/21,2.20.254.0/24,2.21.7.0/24,204.15.20.0/22,212.30.134.0/24,213.180.193.119,217.20.144.0/20,217.69.128.0/20,23.64.227.0/24,31.13.0.0/16,34.192.156.0/24,34.194.135.0/24,34.194.67.0/24,34.198.69.0/24,34.200.158.0/24,34.200.33.0/24,45.64.40.0/22,46.101.169.0/24,5.61.16.0/21,52.0.0.0/11,54.144.0.0/9,54.88.138.0/24,54.88.208.0/24,64.233.160.0/19,66.220.144.0/20,69.171.224.0/19,69.63.176.0/20,74.119.76.0/22,74.125.0.0/16,8.25.195.0/21,87.240.128.0/18,87.250.250.0/23,93.158.134.0/24,93.186.224.0/20,95.142.192.0/20,95.167.165.90/24,95.213.0.0/18


Возможные проблемы

Убедитесь, что вы нечаянно не ввели лишние пробелы в поле UAM Allowed, иначе что-то может не заработать. В случае, если вы используете beta прошивку DD-WRT, нужно будет в поля Primary Radius Server IP/DNS и Backup Radius Server IP/DNS вписать вместо имен radius1.сайт и radius2.сайт их IP адреса 195.14.118.42 и 95.167.165.93

Выбор домашнего маршрутизатора как правило сводиться к тому что идёшь в магазин и покупаешь что тебе порекомендуют и желательно за небольшую цену. Дальше идут вариации на тему нужен WiFi или нет, поддержка принтера, да и пожалуй всё. И вот у меня в руках Dlink DIR-320. Честно говоря DIR-320 мне понадобился для его перепрошивки в совсем другое устройство. Но прежде чем начать свои эксперименты с ним решил протестировать его так сказать по его прямому назначению.

Технические характеристики Dlink DIR-320 приводить смысла нет, кому надо тот без труда сможет найти их.
Я бы хотел остановиться на его интересных особенностях и на разновидностях прошивок для него с последующем тестированием.
Как вы думаю сами понимаете существуют как официальные так и не официальные.

Часть первая - официальная

На момент написания с официального сайта была скачана последняя прошивка за номером: 1.21
Поддерживаемые протоколы для работы с провайдерами: Static IP, DHCP, PPPoE, L2TP, PPTP.
Это значит что подключить DIR-320 можно практически к любому провайдеру. А самое интересное это поддержка протокола шифрования MPPE128 но только для PPTP, уговорить маршрутизатор соединяться по L2TP используя шифрование стандартными средствами не представляется возможным.
Беспроводной стандарт связи WiFi – 802.11g с его 54мбит/c.
USB порт для подключения принтера. Ради интереса попробовал его с моим МФУ Cannon MP600 - печать происходит сразу и без каких-то проблем. Сканер проверять не стал.
Теперь собственно тема вопроса.
Какую реальную скорость может обеспечить DIR-320? И вот что у меня получилось.

Я думаю организация таблицы будет всем понятна. Теперь поговорим о значениях.
LAT – LAN – 95 мбит/c говорит о том что внутренних ограничений в 4-х портовом свитче нет.
LAN – WiFi – 27 мбит/c на расстоянии пол метра. Многие спросят а где же обещанные 54? Не было, нет и не будет.
Поймите есть большая разница между теоретическим пиком и тем что есть на самом деле, это касается всех устройств с WiFi, и DIR-320 в этом плане не исключение.
Ходя по квартире с ноутбуком скорость не падала ниже 20 мбит/c, что является очень хорошим результатом.
Подключение к провайдеру по обычному IP (без надстроек вроде PPTP или L2TP), даёт отличные результаты и подключение даже самых быстрых тарифов Интернет при такой схема имеет смысл.
А вот PPTP, по которому так любят подключать провайдеры районного масштаба, скоростью совсем не балует - всего 12 мбит/c.
Это говорит о том, что если ваш тарифный план даёт вам право на скорость больше 10 мбит/с, то насладиться доступом в всемирную сеть на полной скорости у вас просто не получиться. Фактически маршрутизатор не будет пропускать через себя больше 10 мбит/c.
Скорость падает ещё больше если включить шифрование MPPE, но как правило провайдеры его не поддерживают, а между прочим очень зря!
L2TP выглядит несколько лучше, так что если ваш провайдер поддерживает PPTP и L2TP подключения, то стоит отдать предпочтение второму протоколу.
Теперь попробую подвести итог стандартной прошивки и устройству в целом.
Функционал по настоящему богатый, организация настроек довольно проста, беспроводное соединение тоже работает исправно. Отличное устройство за свои весьма небольшие деньги.
Если ваш провайдер поддерживает только PPTP или L2TP подключения,
а вам хочется бороздить просторы сети на скоростях больше 10мбит/c, то вам необходим более серьёзный маршрутизатор. В других же случаях это отличный выбор.

Часть вторая - официальная но почему то забытая Yota>

Некоторое время назад под DIR-320 на оф. сайте была версия прошивки для работы маршрутизатора с Yota. Я был сильно удивлён когда не обнаружил её сайте...
Ребята из Dlink, от комментариев по поводу Yota толком отказались, мол да раньше было, теперь нет и не будет. А зря, очень многим нужен дешёвый маршрутизатор с поддержкой USB модемов Yota. Не знаю кто и с кем там что не поделил, но в общем политика компании сейчас такова...
Правдами и не совсем правдами мне удалось достать последнюю версию прошивки которая была на сайте Dlink"а (ссылки в конце обзора).
Итак: generic-2.0.130 c поддержкой Yota.
К сожалению USB модема Yota у меня не нашлось, так что ограничусь тестированием без него.

В целом показатели хуже, и это печалит.
Только L2TP значительно прибавил по пропускной способности. А вот MPPE шифрования нет в обще.
Да и несколько слов об интерфейсе. В отличие от официальной прошивки 1.21, где интерфейс выглядит весьма понятно и ориентирован на пользователя, этот web интерфейс может напугать своей невнятностью и запутанностью даже бывалых сисадминов.
Итого если вам не нужна поддержка Yota, то мой вам совет оставайтесь на официальной прошивке 1.21.

Часть третья - не официальная или DD-WRT

Сходу получить внятный ответ что же скрывается за этой аббревиатурой у меня не получилось, по этому скажу своими словами.
DD-WRT это альтернативная прошивка расширяющая функционал целого ряда устройств в том числе и DIR-320.
Существуют различные её виды, немного отличающиеся зашитым в них функционалом. Так например есть прошивки позволяющие превратить ваш DIR-320 в VPN сервер, или сделать из него файловое хранилище. Желающие всегда могут поэкспериментировать.
Возвращаясь к Yota, изначально её поддержки в DD-WRT нет!
Прошить DD-WRT из встроенного Web интерфейса у вас не получиться, тут надо действовать несколько иначе.
В сети существуют инструкции по его прошивки. Я же предлагаю вам свою версию, которая в минимально короткий срок обеспечит вас результатом.

Первым делом качаем файл прошивки с введя в строку поиска имя модели DIR-320.
На выбор будет предложено несколько вариантов для скачки. Я выбрал стандартную dd-wrt.v24_std_generic.bin
Кладём её например в С:\DIR-320
В этом же каталоге создаём файл flash.bat следующего содержания:

code:
@Echo Off
:BEGIN
arp -d
ping -n 1 -w 10 192.168.0.1
If errorlevel 1 Goto BEGIN
If errorlevel 0 Goto FLASH
Goto END

:FLASH
Echo *** Start Flashing ****
tftp -i 192.168.0.1 put dd-wrt.v24_std_generic.bin


Вникать в подробности не буду, просто так надо и всё :) Ах да если у вас в компонентах Windows не стоит tftp, установите его, инструкций в сети полно.
Для того чтобы всё прошло успешно дальше делаем именно так как я написал.
Сетевой карте назначаем 2 адреса 192.168.0.10 и 192.168.1.10 маска 255.255.255.0 Подключаем нашу сетевую карту кабелем напрямую в LAN 1 порт DIR-320, всё остальное из маршрутизатора на время прошивки необходимо отключить.

Дальше по пунктам:

2. Запускаем файл flash.bat от имени Администратора
3. Зажимаем RESET на маршрутизаторе
4. Включаем питание, при этом на маршрутизаторе должны загореться все лампочки
5. Ждём когда они погаснут и останется гореть только LAN1, ждём ещё РОВНО 4 секунды и только тогда отпускаем RESET.

Индикатор LAN1 должен интенсивно заморгать на протяжении 2-3 секунд что будет свидетельствовать о том, что заливка пошла.
Где-то через 2-3 минуты можно стучаться по новому адресу 192.168.1.1 где вас попросят ЗАДАТЬ логин и пароль администратора. Ах да чуть не забыл сказать, вы только что лишились гарантии:)

Итак детально рассказывать про функционал не буду, кому интересно могут сами посмотреть, скажу лишь что он стал богаче, но вот какой ценой?

Удивлены? Я честно сказать тоже. Мало того что маршрутизатор стал медленнее работать по всем показателям, так помимо этого он отказался соединяться по PPTP!
После того как я, так сказать, на личном опыте, опробовал DD-WRT, мне лично вообще непонятны все хвалебные отзывы по поводу перепрошивки DIR-320 в DD-WRT. Лично мне весь этот функционал при таком падении пропускной способности по всем показателям просто не нужен.

Часть четвёртая - обратно или верните всё как было

Прошить аналогичным способом родную прошивку через tftp у меня не получилось. Тут надо действовать несколько иначе.
Дальше по пунктам.

1. Маршрутизатор должен быть выключен.
2. Выполняем команду arp -d
3. Запускаем ping 192.168.0.1 -t
4. Зажимаем RESET на маршрутизаторе
5. Включаем питание, при этом на маршрутизаторе должны загореться все лампочки
6. Ждём когда они погаснут и останется гореть только LAN1, ждём ещё РОВНО 4 секунды и только тогда отпускаем RESET.
7. Заходим через браузер в упрощённый Web интерфейс где выбираем файл с официальной прошивкой.

Через пару мину прошивка будет завершена.
Аналогичным способом можно воскрешать к жизни многие другие продукты Dlink. Важно запустить ping 192.168.0.1 -t. По не понятным мне причинам если этого не сделать то начальный загрузчик просто пролетает, и устройство либо сбросит свои настройки либо продолжит обычную загрузку в зависимости от того сколько терпения у вас будет держать RESET.

Подводя итог
Если вам нужен просто хороший домашний маршрутизатор смело останавливайтесь на официальной прошивке и не выдумывайте. Если же вам нужна поддержка Yota, то имеет смысл либо попробовать оф. прошивку с Yota, либо вообще выбрать другое устройство, по скольку Dlink прекратило всякую поддержку сочетания DIR-320 и Yota, что крайне печалит.
Мазохи... в смысле энтузиасты, могут попробовать сторонние прошивки вроде DD-WRT, мне же, после проведённого тестирования, использование DD-WR для обычных целей представляется гораздо более вредным чем полезным.

В DIR-320 установлено 4 мегабайта флэш-памяти, поэтому прошивка должна быть не более указанного размера. Можно использовать версию standard, однако в этом случае в файловой системе jffs не остается места для пользовательских файлов. Предпочтительнее пользоваться прошивками от Eko - их можно найти в папке others/eko/V24_TNG/svnNNNNN (выбираем папку с самым большим номером). Для поддержки USB можно выбрать версию NEWD_mini_usb_ftp или NEWD_mini_usb.

Если вам требуется большая функциональность, чем предусмотренная в версиях mini или standard, воспользуйтесь методом, описанным на странице Установка DD-WRT mega на маршрутизаторы с объемом флэш-памяти 4 МБ .

[edit ] Подготовка к прошивке

Если на вашем маршрутизаторе уже прошита DD-WRT, то новую версию данной прошивки можно загрузить в него с помощью веб-интерфейса. Если же в маршрутизаторе фирменная прошивка D-Link, то из-за различия форматов файлов с прошивками DD-WRT можно загрузить только с помощью протокола TFTP. Процедура загрузки подробно описывается далее.

Создайте на вашем диске C: папку (например, C:\dd-wrt). Скачайте в эту папку файл прошивки и переименуйте его в firmware.bin.

Установите IP-адрес сетевого интерфейса вашего компьютера 192.168.0.10 и маску 255.255.255.0. Соедините сетевой разъем вашего компьютера с портом LAN1 DIR-320. Питание маршрутизатора пока не включайте.

[edit ] Прошивка вручную

Прежде, чем использовать TFTP, стоит попробовать залить DD-WRT через crash mode (времени потрачено будет меньше). Если возникнут проблемы, тогда переходим к прошивке через TFTP.

Прошивка DIR-320 выполняется по протоколу TFTP. После включения питания маршрутизатора на короткое время (около 2 секунд) запускается встроенный сервер TFTP, с помощью которого можно загрузить в устройство новую прошивку. Самое трудное - это поймать нужный момент времени, в течение которого нужно выдавать команду для закачки прошивки. С первого раза это получается редко, так что будьте готовы к тому, что придется совершить несколько попыток, и наберитесь терпения.

Важно: Вероятно DIR-320 со свежими прошивками D-Link не запускают TFTP сервер совсем и поймать нужный момент времени невозможно. В этом случае, чтобы загрузить свою прошивку с первого раза придется сделать полный сброс DIR-320: выключаем питание, нажимаем и держим кнопку Reset, включаем питание, ждем 15 сек., отпускаем кнопку Reset. После этой процедуры роутер должен откликаться на ping c TTL=100:

Reply from 192.168.0.1: bytes=32 time<1ms TTL=100

В таком состоянии роутер нефункционален, он ожидает загрузки прошивки через веб-интерфейс (только D-Link) или по TFTP. Причем TFTP работает не все время, а только несколько секунд (около 4 сек.) после включения питания. Это немного, но достаточно чтобы залить прошивку с первого раза. Выключаем DIR-320.

Запустите на вашем компьютере командную строку, перейдите в папку dd-wrt на диске C:\ и наберите приведенную ниже команду, но не нажимайте пока клавишу . На экране должно быть примерно следующее:

Microsoft Windows XP 
 Copyright 1985-2001 Microsoft Corp. C:\Documents and Settings\someuser> cd c:\dd-wrt C:\dd-wrt> tftp -i 192.168.0.1 put firmware.bin

(Набранные вами команды выделены жирным шрифтом.)

Непосредственно перед началом прошивки желательно осуществить сброс на заводские настройки (Кнопка Reset, рядом с гнездом питания).

Вы должны нажать клавишу для запуска показанной выше команды «tftp -i 192.168.0.1 put firmware.bin» примерно через две секунды после включения питания DIR-320 (т.е. когда загорится индикатор соединения по Ethernet). Если прошивка будет принята маршрутизатором, индикатор LED1 на нем будет быстро моргать и команда успешно завершится менее чем через полминуты. На экране появится сообщение об успешном завершении команды:

Успешная передача: 3092480 байт за 11 сs, 281134 байт/с

Если же вы поспешите или опоздаете нажать клавишу , команда через некоторое время выдаст сообщение о неуспешном завершении. В этом случае просто повторите описанный выше процесс: выключите питание маршрутизатора и буквально через секунду снова включите его, перед этим снова подготовив команду tftp для передачи в него прошивки.

Имейте в виду, что процесс прошивки продолжается несколько минут после завершения команды пересылки файла, поэтому не выключайте питание маршрутизатора и не нажимайте Reset немедленно после завершения этой команды. Дайте маршрутизатору 10 минут времени для завершения процесса прошивки. За это время выпейте чашечку кофе и получите удовольствие – и только после этого переходите к следующему пункту. Если в списке беспроводных сетей появился новый SSID «dd-wrt» - значит, процесс прошивки успешно завершился.

Чтобы не ловить момент, в который нужно выдать команду загрузки, вручную, воспользуйтесь способом, описанным в следующем разделе.

Внимание : В последних версиях роутера, если tftp выдается сообщение : Operation cancelled , то попробуйте прошить прошивку меньшего объема. Опытным путем установлено, что dd-wrt VPN прошивка не шьется напрямую из-за своего объема, надо использовать меньшую по объему (mini/micro), а затем из mini или micro прошивки прошить нужную через веб-интерфейс dd-wrt.

[edit ] Прошивка с использованием пакетного файла

Записываем файл flashing.cmd в папку C:\dd-wrt, куда мы ранее записали файл с прошивкой. Содержимое этого файла следующее:

@Echo Off:BEGIN ping -n 1 -w 10 192.168.0.1 If errorlevel 1 Goto BEGIN If errorlevel 0 Goto FLASH Goto END:FLASH Echo *** Start Flashing **** tftp -i 192.168.0.1 put firmware.bin:END

Более продвинутая версия пакетного файла с выдачей комментариев на консоль приведена в приложении (см. ниже).

Запускаем командную строку, переходим в папку c:\dd-wrt и запускаем командный файл flashing.cmd.

Включаем питание маршрутизатора.

Наблюдаем процесс прошивки:

C:\dd-wrt>flashing.cmd Обмен пакетами с 192.168.0.1 по 32 байт: Превышен интервал ожидания для запроса. Статистика Ping для 192.168.0.1: Пакетов: отправлено = 1, получено = 0, потеряно = 1 (100% потерь), <<< SKIP >>> <<< SKIP >>> <<< SKIP >>> <<< SKIP >>> Обмен пакетами с 192.168.0.1 по 32 байт: Ответ от 192.168.0.1: число байт=32 время=4мс TTL=100 Статистика Ping для 192.168.0.1: Пакетов: отправлено = 1, получено = 1, потеряно = 0 (0% потерь), Приблизительное время приема-передачи в мс: Минимальное = 4мсек, Максимальное = 4 мсек, Среднее = 4 мсек *** Start Flashing **** Успешная передача: 3092480 байт за 11 сs, 281134 байт/с C:\dd-wrt>

После того, как загорится индикатор статуса (~1-2 мин.), можно подключаться к маршрутизатору по адресу 192.168.1.1.

Другой вариант командного файла (первый в моем случае не помог) вызвать с момента включения маршрутизатора с интервалом например в 500мс подряд несколько процессов tftp. Соответственно какой-то из них попадет в момент, когда маршрутизатор "согласен" принять прошивку. Как организовать паузу http://wiki.oszone.net/index.php/Пауза_в_пакетном_файле , я использовал nircmdc.exe (http://www.nirsoft.net/utils/nircmd.zip)

For /l %%a in (1, 1, 10) do (nircmdc.exe wait 500 start cmd.exe /ktftp -i 192.168.0.1 put firmware.bin)

Запустить данный командный файл одновременно с включением маршрутизатора. Откроется 10 консольных окон, и в одном из них пройдет загрузка файла, все остальные отвалятся по таймауту. Если все равно не получается попасть в нужный интервал, то можно дополнительно отключить в windows сброс IP-адреса при отсутствии кабельного подключения (ускорит инициализацию интерфейса). Создать reg-файл следующего содержания:

REGEDIT4 "DisableDHCPMediaSense"=dword:00000001

Добавить информацию в реестр, перегрузить компьютер и попробовать снова прошить маршрутизатор.

[edit ] Подключение к веб-интерфейсу DD-WRT

После успешной прошивки настройте сетевой интерфейс вашего компьютера на получение IP-адреса от сервера DHCP и введите в адресной строке вашего браузера http://192.168.1.1 . По умолчанию имя пользователя и пароль для доступа к веб-интерфейсу – соответственно «root» и «admin» (без кавычек).

Если вы по-прежнему видите веб-интерфейс D-Link, повторите процедуру прошивки.

P.S. Еще один простой и удобный способ поймать момент включения режима прошивки - использовать команду arping (В *nix системах она уже есть), для Windows можно нагуглить или попробовать эту ссылку http://www.ipacct.com/f/arping_for_windows-1.0.zip , как только будет первый ответ - нужно посылать файл на роутер и все прошьется:)

[edit ] Восстановление фирменной прошивки

Восстановление фирменной прошивки после DD-WRT опять-таки делается с помощью TFTP.

[edit ] Приложения

[edit ] Приложение 1. Расширенная версия файла flashing.cmd

Расширенная версия пакетного файла flashing.cmd с выдачей комментариев на консоль:

@echo off echo ================================================================== echo This batch file will upload dd-wrt firmware in the current directory to echo 192.168.0.1 during the router"s bootup. echo. echo * Set your ethernet card"s settings to: echo IP: 192.168.0.2 echo Mask: 255.255.255.0 echo Gateway: 192.168.0.1 echo * Unplug the router"s power cable. echo. echo Press Ctrl+C to abort or any other key to continue... pause > nul echo. echo * Re-plug the router"s power cable. echo. echo ================================================================== echo Waiting for the router... Press Ctrl+C to abort. echo. set FIND=%WINDIR%\command\find.exe if exist %FIND% goto PING set FIND=%WINDIR%\system32\find.exe if exist %FIND% goto PING set FIND=find:PING ping -n 1 -w 50 192.168.0.1 | %FIND% "TTL=" if errorlevel 1 goto PING echo *** Start Flashing **** tftp -i 192.168.0.1 put firmware.bin if errorlevel 1 goto PING set FIND= echo. echo ================================================================== echo * WAIT for about 2 minutes while the firmware is being flashed. echo * Reset your ethernet card"s settings back to DHCP. echo * The default router address will be at 192.168.1.1 echo. pause

[edit ] Приложение 2. Bash-скрипт, аналогичный пакетному файлу flashing.cmd

Bash-скрипт, аналогичный расширенной версии пакетного файла flashing.cmd.

#!/bin/bash echo "==================================================================" echo "This script will upload dd-wrt firmware (firmware.bin)" echo "in the current directory to 192.168.0.1 " echo "during the router"s bootup. " echo "" echo "* Set your ethernet card"s settings to: " echo " IP: 192.168.0.10 " echo " Mask: 255.255.255.0 " echo " Gateway: 192.168.0.1 " echo "* Unplug the router"s power cable. " echo "" echo "Press Ctrl+C to abort or any other key to continue... " read echo "" echo "* Re-plug the router"s power cable. " echo "" echo "==================================================================" echo "Waiting for the router... Press Ctrl+C to abort. " echo "" try(){ ping -c 1 -w 1 192.168.0.1 } try while [ "$?" != "0" ] ; do try done echo "*** Start Flashing **** " atftp --no-source-port-checking -p -l firmware.bin 192.168.0.1 echo "Firmware successfully loaded!"

[edit ] Приложение 3. sh-скрипт для FreeBSD, аналогичный пакетному файлу flashing.cmd