TFTP: 파일을 보내거나 받을 수 없습니다. 오류 표시: TFTP, opcode: 오류 코드(5)

TFTP: 파일을 보내거나 받을 수 없습니다. 오류 표시: TFTP, opcode: 오류 코드(5)

TFTP를 사용하여 네트워크 스위치에서 ubuntu(Windows 10 Pro의 VirtualBox)로 파일을 보내거나 받으려고 하는데 오류 코드 5가 나타납니다.

아래에 언급된 단계를 수행하면 내 로컬 호스트가 TFTP 서버를 사용하는 것으로 보이며 내 로컬 호스트를 사용하여 파일을 보내고 받을 수 있습니다.

/home/abc# tftp localhost

tftp> put test

Sent 16 bytes in 0.0 seconds

tftp> get test

Received 16 bytes in 0.0 seconds

root@abc:/home/abc# ls -l /var/lib/tftpboot/
total 4
-rwxrwxrwx 1 root root 14 Sep  6 18:03 test

스위치에서 명령을 사용하여 파일을 보내거나 받을 때 오류 메시지가 나타납니다.

간단한 파일 전송 프로토콜

Opcode: 오류 코드(5)

[대상 파일 : 테스트]

오류 코드: 액세스 위반(2)

오류 메시지: 액세스 위반

[전문가 정보(경고/대응): TFTP ERROR 패킷]

[TFTP 오류 패킷]

[심각도: 경고]

[그룹:응답]

이 문제를 해결하는 방법을 안내해 주실 수 있나요?

https://icesquare.com/wordpress/how-to-setup-tftp-on-ubuntu/

먼저 필요한 모든 패키지를 설치해 보겠습니다.

sudo apt-get install xinetd tftpd tftp -y

다음으로 구성 파일을 생성해야 합니다.

sudo nano /etc/xinetd.d/tftp

파일에 다음 내용을 넣으세요.

service tftp
{
   protocol = udp
   port = 69
   socket_type = dgram
   wait = yes
   user = nobody
   server = /usr/sbin/in.tftpd
   server_args = var/lib/tftpboot -s
   disable = no
}

server_args에는 tftp 루트 디렉터리인 /var/lib/tftpboot의 위치를 ​​나타내는 var/lib/tftpboot가 있습니다. 루트 디렉터리 /를 건너뛰었습니다.

이제 디렉터리의 소유권을 변경해 보겠습니다.

sudo mkdir /var/lib/tftpboot
sudo chown -R nobody:nobody /var/lib/tftpboot
sudo chmod -R 777 /var/lib/tftpboot

TFTP 서비스를 시작합니다.

sudo service xinetd stop
sudo service xinetd start

TFTP가 제대로 작동하는지 확인합니다.

netstat -na | grep LIST | grep 69
You should see something like this:
tcp        0      0 0.0.0.0:69              0.0.0.0:*     LISTEN

테스트: TFTP 서버에 파일 업로드 이제 서버에 로그인하여 TFTP 서버를 테스트해 보겠습니다.

tftp localhost 및 파일 업로드:

tftp> put myfile.jpg
Sent 56733279 bytes in 5.7 seconds
Quit:
q

파일이 업로드되었는지 확인하세요.

ls -l /var/lib/tftpboot

테스트: TFTP 서버에서 파일 다운로드 이제 다른 디렉터리로 이동하여 방금 업로드한 파일을 다운로드해 보겠습니다.

cd some_other_directory

tftp 서버에 다시 로그인하십시오:

tftp localhost

파일을 가져옵니다.

tftp> get myfile.jpg
Received 56733279 bytes in 5.7 seconds

답변1

문제는 스위치 네트워크 IP와 Ubuntu 시스템 IP 주소가 다른 네트워크에 있다는 것입니다. 내 Ubuntu 컴퓨터에 고정 IP 주소(스위치 IP와 동일한 네트워크 IP)를 설정하여 문제가 해결되었습니다.

관련 정보