Как правильно настроить TFTP-сервер tftpd64?

Вопрос или проблема

Я следовал этим инструкциям для установки tftpd64 на моей 64-битной Windows 10 ОС:

http://www.tricksguide.com/how-to-setup-a-tftp-server-tftpd32-windows.html#comment-84949

Когда я это делаю, я получаю ошибку при перезапуске TFTP. Оно говорит:

Ошибка привязки 10013 Пытались получить доступ к сокету таким способом,
который запрещен его разрешениями доступа. 69.254.119.202.

Похоже, что это не имеет значения, какой IP я выбираю из выпадающего списка “Привязать TFTP к этому адресу” в панели настроек. Я все равно получаю ошибку. Также появляется ошибка в просмотрщике логов TFTP, которая говорит:

Ошибка: сокет возвращает 10022 [02/05
21:40:28:822]

enter image description here

Как мне исправить эту ошибку?

У вас наверняка проблемы с разрешениями, поэтому привязка не удается с указанной ошибкой. Попробуйте решить проблему с разрешениями или попробуйте не привязывать IP-адрес; это означает, что TFTP будет прослушивать “все” доступные сетевые интерфейсы.

Вы также можете попробовать Serva; более хороший TFTP сервер.

Ошибка привязки 10013 указывает на то, что порт занят. У меня сегодня была та же проблема, и я обнаружил, что, хотя UDP порт 69 не был занят, порты данных были. Точно так же, как с FTP, TFTP договаривается об использовании эфемерных портов для передачи данных после установления соединения на UDP 69. Программа jounin tftpd64.exe позволяет выбрать порт или диапазон портов для использования данных, где в настройках указано “локальный пул портов“. Вместо того, чтобы оставлять это поле пустым, выберите порт, который, как вам известно, не используется (например, 70). Как только я определил, что UDP 69 не используется на моем компьютере, я установил локальный пул портов на 70-71 (я должен был указать диапазон; один порт не будет сохранен в .ini файле), перезапустил TFTPd, и больше я не получал сообщения “Ошибка привязки 10013”. Так что, если вы обнаружите, что ваш UDP порт 69 не используется, но он все равно не работает, попробуйте установить локальный пул портов.

У меня такая же проблема, и я обнаружил, что порт 69(TFTP) используется где-то еще. Я просто использовал порт 70(settings\TFTP) Проблема исчезла.

Я исправил эту проблему, отредактировав файл “tftpd32.ini”.

  1. Перейдите в папку установки TFTPD в моем случае (C:”Program Files”\Tftpd64)
  2. Отредактируйте файл “Tftpd32.ini” с помощью блокнота
  3. Измените TftpPort=69″ на “TftpPort=70

Ответ или решение

Настройка TFTP-сервера tftpd64 на Windows 10 может сталкиваться с рядом проблем, включая ошибки привязки к порту и конфликты с правами доступа. Давайте более подробно рассмотрим, как справиться с этими проблемами, используя методику TEA (Теория, Пример, Применение).

Теория

TFTP (Trivial File Transfer Protocol) — это простой протокол передачи файлов, используемый в основном для загрузки операционных систем и сетевых устройств. Программное обеспечение tftpd64 является популярным инструментом для создания TFTP-сервера на платформе Windows. Однако конфликт может возникнуть, когда программа не может связаться с необходимым сетевым интерфейсом или портом. Ошибка с кодом 10013 указывает на отказ в доступе к ресурсу из-за недостаточных прав или конфликта использования порта. Ошибка 10022 обычно связана с неправильной инициализацией сокета.

Пример

Представим, что вы попытались настроить tftpd64 и столкнулись с ошибкой Bind error 10013. Это может означать, что указанный порт уже используется другим приложением или у программы недостаточно прав для его использования. В качестве примера пользователь попробовал изменять настройки в tftpd32.ini, чтобы переназначить порт, что помогло устранить проблему.

Применение

Чтобы правильно настроить TFTP-сервер tftpd64 и устранить возникшие проблемы, выполните следующие шаги:

  1. Проверка прав администратора:
    Обязательно запускайте tftpd64 с правами администратора. Это обеспечит доступ ко всем необходимым системным ресурсам и устранит возможные ограничения доступа.

  2. Проверка использования портов:
    Убедитесь, что порт UDP 69, предназначенный для TFTP, свободен. Используйте netstat -ano в командной строке для идентификации процессов, использующих порты, и завершите их при необходимости. Например, другая служба может занимать этот порт, что приводит к конфликту.

  3. Изменение диапазона локальных портов:
    В настройках tftpd64 укажите диапазон локальных портов для передачи данных через параметр local ports pool. Если оставить его пустым, программа может использовать порты, занятые другими приложениями. Установите значение, например, 70-71, чтобы избежать конфликтов.

  4. Правка файла конфигурации tftpd32.ini:
    Перейдите в папку установки tftpd64 (обычно C:\Program Files\Tftpd64). Откройте файл tftpd32.ini с помощью редактора, например, Notepad. Измените параметр TftpPort=69 на другой порт, например, TftpPort=70. Это актуально, если порт 69 уже используется, и необходимо выбрать другой порт.

  5. Настройка брандмауэра:
    Проверьте настройки брандмауэра Windows. Убедитесь, что порты UDP 69 и диапазон локальных портов разрешены для входящих и исходящих соединений. Это позволит TFTP-серверу корректно принимать и отправлять запросы.

  6. Проверка сетевых интерфейсов:
    В настройках tftpd64 выберите Bind TFTP to this address и установите значение 0.0.0.0, чтобы сервер слушал все доступные сетевые адаптеры. Это полезно, если вы не уверены в том, какой из нескольких интерфейсов должен быть использован.

  7. Использование альтернативного ПО:
    Если проблемы с tftpd64 продолжаются, рассмотрите возможность использования другого TFTP-сервера, например Serva. Он может иметь более широкие настройки и лучше справляться с конфликтами.

Следуя этим шагам, вы должны эффективно настроить TFTP-сервер tftpd64 без ошибок привязки портов и ограничений доступа. Это обеспечит надежную работу вашего сетевого окружения для передачи данных и обновления прошивок устройств.

Оцените материал
Добавить комментарий

Капча загружается...