Provavelmente, é melhor usar o servidor TFTP (ou "serviço" na linguagem MS) que é "nativo" para a distribuição do sistema operacional no qual você deseja executar o servidor TFTP.
Se você estiver usando o Ubuntu, tente este artigo por David Sudjiman.
Se você estiver usando o Debian, tente este artigo do Nixcraft .
Se você estiver usando o CentOS, o RHEL ou o Fedora, tente este post no blog .
Se você estiver usando o MS Windows, tente TFTPD32 . Este não é um servidor "nativo" no sentido de estar na distribuição do Windows, mas é um servidor TFTP comumente usado.
Se o dispositivo que você está anexando à rede for ele próprio um servidor TFTP e você precisar fazer o upload de um arquivo para esse servidor usando um cliente TFTP, então você precisa descobrir
- O endereço IP do dispositivo
- O nome do arquivo que o dispositivo espera receber
Você também pode precisar do número da porta na qual o servidor TFPT dos dispositivos está escutando, se ele não for a porta (padrão) conhecida do TFTP, porta 69.
Se o dispositivo se configurar usando o DHCP de um servidor na sua rede, você poderá verificar os arquivos de log do serviço DHCP para saber qual é o endereço IP. Outra possibilidade é que o dispositivo configure uma rede IP ad-hoc. Então você precisa ter alguma documentação sobre o dispositivo para saber como ele se configura.
A maioria dos pacotes de servidor TFTP mencionados acima também instala clientes TFTP. Se você não deseja instalar os servidores, alguma distribuição possui clientes TFPT independentes, mas eles geralmente não são instalados como parte da instalação padrão, portanto, você terá que instalá-los manualmente.
Depois de saber o endereço IP do dispositivo e o nome do arquivo que ele espera receber, você poderá fazer o upload do arquivo para o dispositivo usando um comando como
tftp 192.168.1.1 -c put myfile theirfile
Como o modo de transferência padrão do tftp é ASCII e você está carregando uma ROM, o comando provavelmente deve ser
tftp 192.168.1.1 -m binary -c put myfile theirfile
Onde "myfile" é o nome do arquivo que você deseja enviar e "theirfile" é o nome que o arquivo deve ter no dispositivo. Você também pode querer usar o parâmetro de comando "-v" para que, se algo der errado, você possa ver o que era:
tftp -v 192.168.1.1 -c put myfile theirfile
Se o servidor estiver sendo executado em outra porta, digamos 8069, a sintaxe do comando será
tftp -v 192.168.1.1 8069 -c put myfile theirfile
Se o arquivo local já tiver o nome correto, o comando é simplesmente
tftp -v 192.168.1.1 -c put myfile