Tftp load на телевизоре что делать

Обновлено: 16.05.2024

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

Убедительная просьба не дублировать темы на старом/новом форуме.

Аварийное восстановление прошивки по TFTP не работает

Аварийное восстановление прошивки по TFTP не работает

Уважаемая техпоодержка.
Как уже упоминалось другими пользователями на форуме на указанном устройстве не функционирует режим восстановления по TFTP. При включении с зажатой кнопкой "ресет" роутер исправно скачивает по ТФТП файл обновления ПО под именем WR942v1_recovery.bin однако фактического обновления не происходит. Ни одна из опубликованных на форуме бета прошивок равно как и все опубликованные стабильные версии ПО из раздела загрузок поддержки устройства на официальном сайте ТП-Линк не проходят проверку бутлоадера.

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

Аналогичный вопрос задавал и я месяц назад, но так никто и не ответил, наводит на мысль что вся техподдержка вымерла или TL-WR942v1 попал под санкции.

Разработка ПО для роутеров на базе OpenWrt.
Желание получить ответ, предполагает умение сформулировать вопрос. (И.В. Сталин)
На общие вопросы в личке не отвечаю, задайте его на форуме.

Если у кого появится желание в бета-тестировании прошивки на базе OpenWrt для 942v1, стучите в личку (сообщить свой скайп, imo), по окончанию предоставим прошивку удовлетворяющую ваши требования.

Разработка ПО для роутеров на базе OpenWrt.
Желание получить ответ, предполагает умение сформулировать вопрос. (И.В. Сталин)
На общие вопросы в личке не отвечаю, задайте его на форуме.

Разработка ПО для роутеров на базе OpenWrt.
Желание получить ответ, предполагает умение сформулировать вопрос. (И.В. Сталин)
На общие вопросы в личке не отвечаю, задайте его на форуме.

Зато там должен работать serial.

* Serial console is disabled in OEM non-beta firmwares and corresponding
GPIO pins 14 and 15 are assigned to control USB1 and USB2 LEDs by
production (non-beta) U-Boot and firmware.

Разобрать, найти RX,TX,GND, подцепиться usb-to-serial ttl converter, терминалка,

Flash instruction under U-Boot, using UART (can be done only with
preinstalled UART-enabled U-Boot version!):

1. Use "tpl" to stop autobooting and obtain U-Boot CLI access.
2. Setup ip addresses for U-Boot and your tftp server.
3. Issue below commands:
tftp 0x81000000 lede-ar71xx-generic-tl-wr942n-v1-sysupgrade.bin
erase 0x9f020000 +$filesize
cp.b 0x81000000 0x9f020000 $filesize
reset

У меня не бета. TFTP работает. Восстановление после неудачной прошивки (бутлуп) проверено.
Ну или программатором цепляться к SPI чипу (если там есть такой)
Если что могу выслать бинарный дамп mtd или его частей

добаловался с прошивками что пришлось пробовать TFTP ,
и тоже закачивается (пробовал несколько разных), но дальше ничего не идет..
Все ? теперь только выбрасывать роутер ?

dimakk2 писал(а): добаловался с прошивками что пришлось пробовать TFTP ,
и тоже закачивается (пробовал несколько разных), но дальше ничего не идет..
Все ? теперь только выбрасывать роутер ?

Существуют множество альтернативных прошивок для маршрутизаторов Dlink. После перехода на них могут возникнуть проблемы, а именно: дивайс не эффективно начнет работать или просто умрет. Если все таки прошили его не удачно. Это инструкция для вас и только для тех dir-620, которые не до конца сдохли. То есть он загружается, сетевая плата ПК не может с ним связаться по Ethernet интерфейсу.


Ну что ж приступим!

По мима софта и полуживого дивайса, нам понадобиться USB-UART (кстати очень нужная вещь в хозяйстве). Заходим на easyelectronics и делаем. Можно было конечно и купить, но у моего друга лежала без дела.
Незабываем что нужно вывести COM на самом роуторе.

(сразу предупреждаю нет возможности сфотографировать свой)

  • адрес 10.10.10.3.
  • маска 255.255.255.0
  • шлюз 10.10.10.123

И так рассмотрим два варианта.

Вариант 1
Этот вариант очень распространённ им многие пользуются.
Сожалению я как не старался так не смог с помощью его восстановить dir-620.
для этого качаем putty, tftpd32. Что касается tftpd32, то я качал tftpd64 (битность системы не забываем).


Шаг 1
Кидаем прошивку в папку tftpd64.
Запускаем tftpd64, вкладка Tftp Server, нажимаем Browes выбираем папку где лежит программа.


Шаг 2
запускаем putty, заходим в Serial. Тут COM3 (у вас может быть другой, в диспетчере устройств посмотрите), Speed 57600, Flow control: None

Переходим в Session, жмем open.

Шаг 3
Подключаем USB-UART к COM на самом роуторе. Хочу предупредить после включения у вас есть 5 секунд что бы выбрать нужный пункт, вам нужно нажать 2.
и включаем роутер.

U-Boot 1.1.3 (Feb 9 2010 — 10:44:20)

Board: Ralink APSoC DRAM: 32 MB
relocate_code Pointer at: 81fb0000
flash_protect ON: from 0xBF000000 to 0xBF01D3F3
flash_protect ON: from 0xBF030000 to 0xBF030FFF
============================================
Ralink UBoot Version: 3.3
— ASIC 3052_MP2 (Port5 None)
DRAM component: 128 Mbits SDR
DRAM bus: 32 bit
Total memory: 32 MBytes
Flash component: NOR Flash
Date:Feb 9 2010 Time:10:44:20
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384

SDRAM bus set to 32 bit
SDRAM size =32 Mbytes

Please choose the operation:
1: Load system code to SDRAM via TFTP.
2: Load system code then write to Flash via TFTP.
3: Boot system code via Flash (default).
4: Entr boot command line interface.
9: Load Boot Loader code then write to Flash via TFTP.

после выбора 2: Load system code then write to Flash via TFTP появится:

2: System Load Linux Kernel then write to Flash via TFTP.
Warning. Erase Linux in Flash then burn new one. Are you sure?(Y/N)
Please Input new ones /or Ctrl-C to discard
Input device IP (10.10.10.123) ==:10.10.10.123
Input server IP (10.10.10.3) ==:10.10.10.3
Input Linux Kernel filename () ==:

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

но что делать если putty просто напросто отказывается заходить на ком, и tftpd32 не работает.

на понадобится Terminal v1.9b by Bray и WinAgents TFTP Server Manager(с офф сайта 30 дней триалка нам хватит этого срока)


Шаг 1
кидаем прошивку C:\ProgramData\WinAgents\TFTP Server 4\TFTPRoot. Видем появился файл на сервере.


Шаг 2
настраиваем Terminal v1.9b by Bray (port:COM3, Baud rate: 57600) жмем конект. Включаем роутер и видем Terminal v1.9b by Bray. НЕЗАБЫВАЕМ ЧТО ЕСТЬ 5 СЕКУНД ЧТОБЫ НАЖАТЬ ЦИФРУ ДВА(2)

U-Boot 1.1.3 (Feb 9 2010 — 10:44:20)

Board: Ralink APSoC DRAM: 32 MB
relocate_code Pointer at: 81fb0000
flash_protect ON: from 0xBF000000 to 0xBF01D3F3
flash_protect ON: from 0xBF030000 to 0xBF030FFF
============================================
Ralink UBoot Version: 3.3
— ASIC 3052_MP2 (Port5 None)
DRAM component: 128 Mbits SDR
DRAM bus: 32 bit
Total memory: 32 MBytes
Flash component: NOR Flash
Date:Feb 9 2010 Time:10:44:20
============================================
icache: sets:256, ways:4, linesz:32 ,total:32768
dcache: sets:128, ways:4, linesz:32 ,total:16384

SDRAM bus set to 32 bit
SDRAM size =32 Mbytes

Please choose the operation:
1: Load system code to SDRAM via TFTP.
2: Load system code then write to Flash via TFTP.
3: Boot system code via Flash (default).
4: Entr boot command line interface.
9: Load Boot Loader code then write to Flash via TFTP.

после выбора 2: Load system code then write to Flash via TFTP появиться:

2: System Load Linux Kernel then write to Flash via TFTP.
Warning. Erase Linux in Flash then burn new one. Are you sure?(Y/N)
Please Input new ones /or Ctrl-C to discard
Input device IP (10.10.10.123) ==:10.10.10.123
Input server IP (10.10.10.3) ==:10.10.10.3
Input Linux Kernel filename () ==:

пишем habr.bin — имя файла и жмем ENTER

netboot_common, argc= 3

NetLoop,call eth_init!
Trying Eth0 (10/100-M)

Waitting for RX_DMA_BUSY status Start… done

Header Payload scatter function is Disable.

ETH_STATE_ACTIVE.
Using Eth0 (10/100-M) device
TFTP from server 10.10.10.3; our IP address is 10.10.10.123
Filename 'habr.bin'.

erase sector = 12
sect = 12,s_last = 102,erase poll = 1008817

erase sector = 13
sect = 13,s_last = 102,erase poll = 984201

erase sector = 14
*sect = 14,s_last = 102,erase poll = 1007174

erase sector = 15
sect = 15,s_last = 102,erase poll = 998828

erase sector = 16

бла бла бла
он ребут
бла бла бла

start urlfilter
init wans
Intialize wan…
[17179582.684000] eth2.5: Setting MAC address to 00 0c 43 30 52 89.
Set mac 00:0C:43:30:52:89 on iface eth2.5 — OK
Set mtu 1500 on iface eth2.5 — OK
start_wan_link_on_l2 — Up iface eth2.5
start_ip: dhcp ipv4
start_wan_link_on_l2 — Iface eth2.5 is up
start_wan_link_on_l2 — Up iface br0
start_wan_link_on_l2 — iface br0 is not wan, pass it
start ddns
info, udhcp client (v0.9.8) started (iface: eth2.5, connect: 1)
udhcp client (v0.9.8) started (iface: eth2.5, connect: 1)
debug, interface eth2.5 index 9
debug, interface eth2.5 hwaddr 00:0c:43:30:52:89
debug, interface eth2.5 mtu is 1500

debug, execle'ing /tmp/udhcpc with name deconfig
start services
start_telnet…
start_printserver…
init_sysusers…
debug, Opening raw socket on ifindex 9

Out init_device
init_device: pid_status(WEXITSTATUS) = 0
Done.
Welcome to
_______ ___ __ ____ _ _ ___
| ___ \ | | |__|| \ | || | / /
| | | || ___ | |__ __ | \| || |/ /
| |___| || |___| | || || |\ || \
|_______/ |______||__||_| \____||_|\___\

= Building Networks for People =

Для развёртывания PXE загрузки необходимы два сервиса - TFTP и DHCP, для их поднятия я обычно под Linux использую Dnsmasq, ещё можно настроить Mikrotik, а для Windows TFTPD64, далее маленькая инструкция для винды.

Для того, чтобы развернуть tftp и dhcp сервисы необходимо:

Загрузить нужный дистрибутив отсюда. Стоит обратить внимание, что дистрибутивы различаются по типу запуска: как службу (service edition) и как приложение (standard edition) и также по битности ОС. Для статьи я взял портативную версию, интерфейс у всех версий одинаковый.

При установке service edition выбираем все опции:

install1

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

Запускаем TFTPD, выбираем сетевой интерфейс и жмём Settings:

setup

В общих настройках выбираем DHCP и TFTP серверы:

global

Указываем корневой каталог, в котором TFTP сервер будет искать файлы. За это отвечает параметр "Base Directory". В нашем случае это C:\tftpboot. Включаем режим "Use anticipation window", в качестве параметра указал значение 8192. Этот последний параметр позволит увеличить скорость загрузки файлов с TFTP сервера.

Внимание . Активация режима "Use anticipation window" в некоторых случаях может привести к ошибкам. И тогда его следует отключить.

tftp

Проверяем работу сервера tftp:

Для того, чтобы передать файл необходимо открыть cmd.exe и выполнить команду:

tftp 192.168.1.10 GET имя_файла.txt

Для того, чтобы получить файл с tftp-сервера, есть команда:

tftp 192.168.1.10 PUT имя_файла.txt

На компьютере, с которого производится установка, присвоен IP адрес 192.168.1.34 с маской сети 255.255.255.0. Компьютеры смогут общаться друг с другом, если они принадлежат одной сети. В нашем случае это сеть 192.168.1.0. Параметр "IP Pool start address" указывает начальный IP адрес, с которого DHCP будет начинаться выдавать адреса. Я установил значение в 192.168.1.5. Параметр "Size of pool" указывает, сколько компьютеров могут получить IP адреса. Я установил значение в 10. Параметр "Boot File" указывает, какой файл необходимо загрузить. В нашем случае это lpxelinux.0 в папке C:\tftpboot\boot\lpxelinux.

enter
16+
rss

Появилась необходимость поднять в сети сервер TFTP (Trivial File Transfer Protocol — простой протокол передачи файлов. В отличие от FTP , он не содержит возможности аутентификации и основан на транспортном протоколе UDP ). Он понадобился для закачки новых версий прошивок на cisco-роутеры, cisco-телефоны, маршрутизаторы dell и 3com, для выполнения автоматического сохранения конфигурация различного сетевого оборудования.

______________________
За основу была взята статья Алексея Цветного с сайта OpenNET.

Мой TFTP -сервер будет работать под управлением FreeBSD 7.2- RELEASE и представлять собой пакет tftp-hpa-0.49.

(после нескольких “гневных” отзывов, что приведенный ниже алгоритм не работает, несколько переделал статью. теперь все написанное справедливо для FreeBSD 8.4, 10.0, 10.1 (такие системы в моём подчинении) с установленным пакетом tftp-hpa

а на самом деле вся беда заключалась в неправильных кавычках в скрипте запуска…)

Установка порта tftp-hpa:

Так как tftp-сервер будет запускаться как самостоятельный сервис, для увеличения безопасности необходимо создать непривилегированного пользователя, от имени которого будут запускаться все дочерние процессы, а так же его группу. Добавляем новую группу:

Добавляем нового пользователя:

Выход из текстового редактора vi :q + ввод.

Теперь необходимо создать рабочий каталог, в который будет осуществляться chroot и где будут храниться необходимые нам файлы. Пусть это будет /home/tftp

Дадим права доступа на него для только что созданных пользователя и группы, а так же запретим другим непривилегированным пользователям доступ в этот каталог:

По-умолчанию все протоколирование будет вестись в файл лог /var/log/xferlog .

Теперь создадим конфигурационный файл обработки скачиваемых/закачиваемых файлов. Для безопасности все имена файлов прозрачно будут преобразовываться при записи из ИМЯ в IP- ИМЯ , а при чтении наоборот – из IP- ИМЯ в ИМЯ . Это позволит ограничить доступ к файлам, основываясь на IP-адресе клиента. Т.е. одно и тоже имя файла от абсолютно разных хостов на сервере будет сохраняться под разными именами и у каждого хоста будет доступ только к своей копии файла.

Добавьте в этот файл /usr/local/etc/tftpd-remap.conf с помощью вашего любимого текстового редактора следующие строки:

Теперь необходимо переделать стартовый скрипт tftp-hpa под наши нужды. Скопируйте существующий скрипт /usr/local/etc/rc.d/tftpd куда-нибудь и внесите в него следующие изменения (напоминаю, что все кавычки – прямые " !):

Нам осталось разрешить запуск этого скрипта в /etc/rc.conf , добавив в него следующие строчки:

И конечно же, если у вас работает файервол, надо разрешить в его настройках доступ к вашему tftp-серверу. Я использую pf и мои настройки выглядят так:

  • $int_if – внутренний интерфейс сервера;
  • $ext_if – внешний интерфейс сервера;
  • $int_net – внутренняя сеть (которой вы доверяете);
  • $int_addr – внутренний ip-адрес;
  • $ext_addr – внешний ip-адрес;
  • $some_host – некоторый внешний хост, который будет работать с вашим tftp-сервером.

Теперь запустим наш tftp-сервер:

Проверим, что демон работает:

Если вы увидели что-то подобное – значит все работает. Попробуйте что-нибудь записать на ваш tftp-сервер. В каталоге /home/tftp вы увидите файл, преобразованный в вид ipадрес-имяфайла. Например, вы копировали running-config с маршрутизатора cisco с ip-адресом 192.168.0.1 на tftp-сервер с ip-адресом 192.168.0.2

На вашем tftp-сервере в каталоге /home/tftp появится файл с именем 192.168.0.1-cisco-confg.

Если вам наоборот, необходимо скопировать с вашего tftp-сервера какой-нибудь файл, переименуйте его в вид ipадресс-имяфала. Только так к нему получит доступ сетевое устройство по tftp-протоколу. В противном случае вы будете получать на нем ошибку вида:

Читайте также: