Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

TFTP ALG

TFTP(Trivial File Transfer Protocol) ALG는 UDP 대상 포트 69에 대한 요청을 시작하는 TFTP 패킷을 처리하고 게이트를 열어 역방향에서 요청을 보내는 포트로 패킷을 반환할 수 있도록 합니다. 스테이트풀 방화벽 및 네트워크 주소 변환(NAT) 서비스를 지원하려면 UDP 대상 포트 69에 대해 TFTP ALG를 구성해야 합니다.

기능 탐색기를 사용하여 특정 기능에 대한 플랫폼 및 릴리스 지원을 확인할 수 있습니다.

플랫폼별 TFTP ALG 동작 섹션에서 플랫폼과 관련된 참고 사항을 검토하십시오.

TFTP ALG 이해하기

개요

TFTP(Trivial File Transfer Protocol)는 파일 전송 (RFC 1350)에 사용되는 간단한 프로토콜입니다. TFTP는 UDP 위에 구현되며, 대상 포트 69는 잘 알려진 포트입니다. TFTP 애플리케이션 레이어 게이트웨이(ALG)는 요청을 시작하는 TFTP 패킷을 처리하고 핀홀을 생성하여 역방향에서 패킷을 반환할 수 있도록 합니다.

플로우 처리에는 하나의 TFTP 대화에 대해 두 개의 세션이 있으며, 하나는 RRQ(읽기 요청) 또는 WRQ(쓰기 요청) 패킷에 의해 생성된 TFTP 제어 세션입니다. 다른 하나는 DATA 패킷(RRQ의 경우) 또는 ACK(Acknowledgment) 패킷(WRQ의 경우)에 의해 생성된 TFTP 데이터 세션입니다.

Junos OS 방화벽에서 TFTP 제어 세션은 junos-tftp 애플리케이션 정책을 통해 허용됩니다. 제어 세션 패킷이 수신되면 서버의 모든 포트에서 클라이언트의 TID(포트)까지 TFTP ALG 오픈 핀홀을 통해 데이터 세션이 허용됩니다. NAT 변환이 이미 수행되었고 세션 데이터 구조에서 정보를 사용할 수 있으므로 NAT 변환이 필요하지 않습니다.

TFTP 패킷

모든 전송은 파일 읽기 또는 쓰기 요청으로 시작됩니다. 데이터 패킷이 512바이트 미만이면 전송 종료를 알립니다.

TFTP는 5가지 유형의 패킷을 지원합니다.

  • 읽기 요청(RRQ)

  • 쓰기 요청(WRQ)

  • 데이터(DATA)

  • 승인(ACK)

  • 오류(ERROR)

TFTP 세션

TFTP ALG는 스테이트리스 전송 프로토콜인 UDP를 기반으로 합니다. 방화벽에서 TFTP ALG는 시간 초과가 있는 UDP 세션으로 작동합니다. 패킷 새로 고침 세션이 없는 경우 시간 초과 후 세션이 종료됩니다. TFTP 클라이언트와 서버는 TFTP 대화의 종료를 결정하지만 Fireware의 세션을 인식하지 못하는 경우가 있습니다. 따라서 클라이언트와 서버는 이 시나리오에서 새 TFTP 대화를 요청할 수 있습니다.

TFTP ALG 세션은 다음과 같은 방법으로 진행할 수 있습니다.

  • TFTP 제어 세션이 시간 초과에 도달하면 데이터 세션이 여전히 활성 상태이면 세션이 종료되지 않습니다.

  • TFTP 세션은 데이터 세션이 진행 중인지 여부에 관계없이 또는 clear specific session CLI 명령에 의해 clear security flow session all 종료되거나 손상될 수 있습니다.

  • 새로운 TFTP 세션 요청이 도착하고 기존 세션에 도달하면 TFTP ALG는 새 요청에 대해 핀홀을 다시 엽니다.

  • 핀홀이 이미 존재하는 경우 TFTP ALG는 핀홀을 다시 열지 않으며 패킷 드롭이 없습니다.

  • TFTP ALG는 패킷을 삭제하지 않습니다.

TFTP ALG 대화 이해하기

기본적으로 TFTP 서버는 포트 69에서 TFTP 클라이언트의 수신 요청을 수신합니다. TFTP 클라이언트는 소스 터널 식별자(TID) 포트를 선택하고 서버에 초기 요청을 보냅니다. 이에 대한 응답으로 서버는 소스 포트로 선택한 TID를 사용하고 클라이언트의 TID에 응답을 대상 포트로 보냅니다. 그런 다음 두 개의 TID 포트가 나머지 데이터 전송에 사용됩니다.

Read file conversation steps:

  1. 호스트 A(클라이언트)는 A의 TID를 소스로, 포트 69를 대상으로 하여 RRQ 패킷을 호스트 B(서버)로 보냅니다.

  2. 호스트 B(서버)는 B의 TID를 소스로, A의 TID를 대상으로 하여 호스트 A(클라이언트)에 DATA 패킷을 보냅니다.

  3. 호스트 A(클라이언트)는 A의 TID를 소스로, B의 TID를 대상으로 하여 ACK 패킷을 호스트 B(서버)로 보냅니다.

  4. DATA 및 ACK 패킷 대화는 파일 데이터 전송이 완료될 때까지 계속됩니다.

Write file conversation steps:

  1. 호스트 A(클라이언트)는 A의 TID를 소스로, 포트 69를 대상으로 하여 WRQ 패킷을 호스트 B(서버)로 전송합니다.

  2. 호스트 B(서버)는 B의 TID를 소스로, A의 TID를 대상으로 하여 ACK 패킷을 호스트 A(클라이언트)로 보냅니다.

  3. 호스트 A(클라이언트)는 A의 TID를 소스로, B의 TID를 대상으로 하여 DATA 패킷을 호스트 B(서버)로 보냅니다.

  4. 호스트 B(서버)는 B의 TID를 소스로, A의 TID를 대상으로 하여 ACK 패킷을 호스트 A(클라이언트)로 보냅니다.

TFTP ALG에 대한 IPv6 지원 이해

TFTP(Trivial File Transfer Protocol) ALG(애플리케이션 레이어 게이트웨이)는 소스 IP 주소와 대상 IP 주소 모두에 대해 IPv6 및 IPv4 주소가 있는 IPv6 및 IPv4 TFTP 대화를 지원하도록 향상되었습니다.

TFTP ALG는 라우팅 요청을 시작하는 패킷을 처리하고 핀홀을 생성하여 역방향에서 요청을 보낸 포트로 패킷을 반환할 수 있도록 합니다.

데이터 세션은 클라이언트에서 서버로의 첫 번째 패킷에 의해 설정됩니다. TFTP ALG는 첫 번째 패킷을 모니터링하고 서버의 모든 포트에서 클라이언트로 핀홀을 엽니다. 이 프로세스는 서버에서 반환 패킷과 후속 데이터 패킷이 통과하는 데 도움이 됩니다.

예: TFTP ALG 구성

TFTP ALG는 요청을 시작하는 TFTP 패킷을 처리하고 게이트를 열어 역방향에서 요청을 보내는 포트로 패킷을 반환할 수 있도록 합니다.

이 예시는 주니퍼 네트웍스 디바이스의 소스 네트워크 주소 변환(NAT) 풀을 통해 TFTP 트래픽을 통과하도록 TFTP ALG를 구성하는 방법을 보여줍니다.

요구 사항

  • 소스 네트워크 주소 변환(NAT) 풀의 모든 IP 주소에 대해 프록시 ARP를 구성합니다.

  • TFTP ALG의 기본 개념을 이해합니다. TFTP ALG 이해를 참조하십시오.

개요

이 예에서 TFTP ALG는 TFTP 트래픽을 모니터링하고 허용하여 주니퍼 네트웍스 디바이스의 반대편에 위치한 클라이언트와 서버 간에 파일을 전송하도록 구성됩니다.

구성

NAT 소스 풀, 규칙 집합 및 정책 구성

CLI 빠른 구성

이 예의 섹션을 빠르게 구성하려면, 아래 명령을 복사하여 텍스트 파일로 붙여 넣은 다음 모든 라인브레이크를 제거하고, 네트워크 구성과 일치시키는 데 필요한 세부 사항을 변경하고 계층 수준에서 명령을 복사하여 CLI [edit] 로 붙여 넣은 다음, 구성 모드에서 을(를) 입력합니다 commit .

메모:

TFTP 클라이언트 및 서버 IP 주소가 확실하지 않은 경우 "da1" 및 "sa1"을 "any"로 바꿀 수 있습니다.

단계별 절차

다음 예제에서는 구성 계층에서 다양한 수준의 탐색이 필요합니다. 이를 수행하는 방법에 대한 지침은 CLI 사용자 가이드의 구성 모드에서 CLI 편집기 사용을 참조하십시오.

소스 네트워크 주소 변환(NAT) 풀을 구성하려면 다음을 수행합니다.

  1. NAT 소스 풀을 생성합니다.

  2. 보안 영역 주소록 항목을 구성합니다.

  3. NAT 소스 규칙 집합을 만듭니다.

  4. 정책 구성

결과

구성 모드에서 및 show security policies 명령을 입력하여 show security nat 구성을 확인합니다. 출력이 의도된 구성을 표시하지 않으면, 이 예의 구성 지침을 반복하여 수정합니다.

디바이스 구성을 마쳤으면 구성 모드에서 을(를) 입력합니다 commit .

확인

구성이 올바르게 작동하고 있는지 확인합니다.

네트워크 주소 변환(NAT) 소스 풀 및 규칙 집합 확인

목적

TFTP ALG를 지원하는 데 사용되는 NAT 소스 풀 및 규칙 집합이 제대로 작동하는지 확인합니다.

행동

운영 모드에서 명령을 입력합니다 show security nat static rule r1 .

TFTP ALG 검증

목적

TFTP ALG가 활성화되어 있는지 확인합니다.

행동

운영 모드에서 명령을 입력합니다 show security alg status .

의미

출력은 TFTP ALG 상태를 다음과 같이 보여줍니다.

  • Enabled—TFTP ALG가 활성화되었음을 보여줍니다.

  • Disabled—TFTP ALG가 비활성화되었음을 보여줍니다.

플랫폼별 TFTP ALG 동작

기능 탐색기를 사용하여 특정 기능에 대한 플랫폼 및 릴리스 지원을 확인할 수 있습니다.

다음 표를 사용하여 플랫폼에 대한 플랫폼별 동작을 검토합니다.

플랫폼

다름

SRX 시리즈

  • TFTP를 지원하는 SRX320, SRX340 및 SRX380 디바이스는 디바이스에서 플로우가 활성화된 경우 브로드캐스트 TFTP를 지원하지 않습니다.