Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

 
 

차세대 서비스를 위한 응용 프로그램 속성 구성

응용 프로그램 속성을 구성하려면 계층 수준에서 [edit applications] 문을 포함합니다application.

문을 구성 application-set 하여 응용 프로그램 객체를 그룹화할 수 있습니다. 자세한 내용은 응용 프로그램 세트 구성을 참조하십시오.

이 섹션에는 응용 프로그램을 구성하기 위한 다음 작업이 포함되어 있습니다.

응용 프로그램 프로토콜 구성

application-protocol 문을 사용하면 지원되는 ALG(애플리케이션 프로토콜) 중 어떤 것을 구성하고 서비스 처리를 위해 애플리케이션 세트에 포함할지 지정할 수 있습니다. 애플리케이션 프로토콜을 구성하려면 계층 수준에서 명령문을 포함 application-protocol 하십시오.[edit applications application application-name]

표 1 에는 차세대 서비스를 위해 지원되는 프로토콜 목록이 표시되어 있습니다. 특정 프로토콜에 대한 자세한 내용은 ALG 설명 을 참조하십시오.

표 1: 서비스 인터페이스에서 지원하는 애플리케이션 프로토콜

프로토콜 이름

CLI 값

코멘트

부트스트랩 프로토콜(BOOTP)

bootp

BOOTP 및 DHCP(Dynamic Host Configuration Protocol)를 지원합니다.

DCE(분산 컴퓨팅 환경) RPC(원격 프로시저 호출)

dce-rpc

명령문에 protocoludp 또는 tcp이 값이 있어야 합니다. 값이 필요합니다uuid. 또는 source-port 값을 지정할 destination-port 수 없습니다.

DCE RPC 포트맵

dce-rpc-portmap

명령문에 protocoludp 또는 tcp이 값이 있어야 합니다. 값이 필요합니다 destination-port .

DNS(도메인 이름 시스템)

dns

문에 protocol 값이 udp있어야 합니다. 이 애플리케이션 프로토콜은 DNS 응답이 수신되는 즉시 DNS 흐름을 닫습니다.

이그제큐티브

exec

protocol 문이 값을 tcp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

증권 시세 표시기

ftp

protocol 문이 값을 tcp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

H.323 시리즈

h323

ICMP(Internet Control Message Protocol)

icmp

protocol 문이 값을 icmp 가지거나 지정되지 않아야 합니다.

지적재산권

ip

로그인

login

넷BIOS

netbios

protocol 문이 값을 udp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

넷쇼(NetShow)

netshow

protocol 문이 값을 tcp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

리얼오디오

realaudio

실시간 스트리밍 프로토콜(RTSP)

rtsp

protocol 문이 값을 tcp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

세션 시작 프로토콜

sip

증권 시세 표시기

snmp

protocol 문이 값을 udp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

SQLNet

sqlnet

protocol 문이 값을 tcp 가지거나 지정되지 않아야 합니다. 또는 source-port 값이 필요합니다destination-port.

토크 프로그램

talk

경로 추적

traceroute

protocol 문이 값을 udp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

트리비얼 FTP(TFTP)

tftp

protocol 문이 값을 udp 가지거나 지정되지 않아야 합니다. 값이 필요합니다destination-port.

윈프레임(WinFrame)

winframe

메모:

동일한 서비스 집합에서 네트워크 주소 변환(NAT)이 두 번 구성된 경우 상태 저장 방화벽, NAT 또는 CoS 규칙에 따라 ICMP용 ALG(애플리케이션 수준 게이트웨이)를 구성하고 경로를 추적할 수 있습니다. 이러한 ALG는 PGCP(Packet Gateway Controller Protocol)에 의해 생성된 흐름에 적용할 수 없습니다. 두 번 NAT는 다른 ALG를 지원하지 않습니다. NAT는 IP 주소와 TCP 또는 UDP 헤더만 적용하고 페이로드에는 적용하지 않습니다.

2회 네트워크 주소 변환(NAT) 구성에 대한 자세한 내용은 Junos Address Aware 네트워크 주소 지정 개요를 참조하십시오.

네트워크 프로토콜 구성

protocol 문을 사용하면 응용 프로그램 정의에서 일치시킬 지원되는 네트워크 프로토콜을 지정할 수 있습니다. 네트워크 프로토콜을 구성하려면 계층 수준에서 [edit applications application application-name] 문을 포함합니다protocol.

프로토콜 유형을 숫자 값으로 지정합니다. 보다 일반적으로 사용되는 프로토콜의 경우 텍스트 이름도 명령줄 인터페이스(CLI)에서 지원됩니다. 표 2에는 지원되는 프로토콜 목록이 표시되어 있습니다.

표 2: 차세대 서비스에서 지원하는 네트워크 프로토콜

네트워크 프로토콜 유형

CLI 값

코멘트

외부 게이트웨이 프로토콜(EGP)

egp

일반 라우팅 캡슐화(GR)

gre

ICMP (영문)

icmp

의 값이 icmp필요합니다application-protocol.

ICMPv6 (영문)

icmp6

의 값이 icmp필요합니다application-protocol.

IGMP(Internet Group Management Protocol)

igmp

TCP (영문)

tcp

또는 dce-rcp를 지정 application-protocol rcp 하지 않는 한 또는 source-port 값이 필요합니다destination-port.

UDP (영어)

udp

또는 dce-rcp를 지정 application-protocol rcp 하지 않는 한 또는 source-port 값이 필요합니다destination-port.

가능한 숫자 값의 전체 목록은 RFC 1700, 할당된 번호(인터넷 프로토콜 제품군용)를 참조하십시오.

메모:

IP 버전 6(IPv6)은 응용 프로그램 정의에서 네트워크 프로토콜로 지원되지 않습니다.

기본적으로 두 번 NAT 기능은 ICMP 오류 메시지의 페이로드에 포함된 IP, TCP 및 UDP 헤더에 영향을 줄 수 있습니다. 두 번의 NAT 구성에 protocol tcp 대해 애플리케이션 문과 함께 및 protocol udp 문을 포함할 수 있습니다. 2회 네트워크 주소 변환(NAT) 구성에 대한 자세한 내용은 Junos Address Aware 네트워크 주소 지정 개요를 참조하십시오.

ICMP 코드 및 유형 구성

ICMP 코드 및 유형은 애플리케이션 정의에서 패킷 매칭을 위해 네트워크 프로토콜과 함께 추가 사양을 제공합니다. ICMP 설정을 구성하려면 계층 수준에서 및 icmp-type 명령문을 [edit applications application application-name] 포함합니다icmp-code.

ICMP 코드 및 유형 값은 하나만 포함할 수 있습니다. 문은 application-protocol 값을 icmp가져야 합니다. 표 3 에는 지원되는 ICMP 값 목록이 표시되어 있습니다.

표 3: 서비스 인터페이스에서 지원하는 ICMP 코드 및 유형

CLI 문

묘사

icmp-code

이 값 또는 키워드는 보다 더 구체적인 정보를 icmp-type제공합니다. 이 값의 의미는 연관 icmp-type 된 값에 따라 달라지기 때문에 와 함께 icmp-code을 지정 icmp-type 해야 합니다. 자세한 정보는 라우팅 정책, 방화벽 필터 및 트래픽 Policer 사용자 가이드를 참조하십시오.

숫자 값을 대신해 다음 텍스트 동의어 중 하나를 지정할 수 있습니다(필드 값도 나열되어 있음). 키워드는 ICMP 유형별로 그룹화되어 있으며 이는 다음과 관련이 있습니다.

매개 변수 문제 : ip-header-bad (0), required-option-missing (1)

리디렉션: redirect-for-host (1), (0), redirect-for-tos-and-host redirect-for-network (3), redirect-for-tos-and-net (2)

시간 초과: ttl-eq-zero-during-reassembly (1), ttl-eq-zero-during-transit (0)

연결할 수 없음: communication-prohibited-by-filtering (13), (10), destination-host-unknown destination-host-prohibited (7), destination-network-prohibited (9), destination-network-unknown (6), fragmentation-needed (4), host-precedence-violation (14), host-unreachable (1 host-unreachable-for-TOS ), (12), network-unreachable (0), network-unreachable-for-TOS (11), port-unreachable (3), precedence-cutoff-in-effect (15), protocol-unreachable (2), source-host-isolated (8), source-route-failed (5)

icmp-type

일반적으로 이 일치 조건은 현재 포트에서 어떤 프로토콜이 사용되고 있는지 알아내기 위해 일치 명령문과 protocol 함께 지정합니다. 자세한 정보는 라우팅 정책, 방화벽 필터 및 트래픽 Policer 사용자 가이드를 참조하십시오.

숫자 값 대신 텍스트 동의어(필드 값도 나열 echo-reply 되어 있음) 중 하나를 지정할 수 있습니다: (0), (8), echo-request info-reply (16), info-request (15), mask-request (17), mask-reply (18), parameter-problem (12), redirect (5), router-advertisement (9), router-solicit (10), (4), source-quench time-exceeded (11), timestamp (13), timestamp-reply (14) 또는 unreachable (3).

메모:

거부 작업을 포함하는 입력 방화벽 필터와 스테이트풀 방화벽 규칙을 포함하는 서비스 세트로 인터페이스를 구성하는 경우, 라우터는 스테이트풀 방화벽 규칙이 패킷에서 실행되기 전에 입력 방화벽 필터를 실행합니다. 따라서 패킷 포워딩 엔진이 인터페이스를 통해 ICMP 오류 메시지를 보낼 때 입력 방향으로 표시되지 않기 때문에 상태 저장 방화벽 규칙이 패킷을 삭제할 수 있습니다.

가능한 해결 방법은 포워딩 테이블 필터를 포함하여 거부 작업을 수행하거나(이 유형의 필터가 입력 방향의 스테이트풀 방화벽 이후에 실행되기 때문에) 출력 서비스 필터를 포함하여 로컬에서 생성된 ICMP 패킷이 스테이트풀 방화벽 서비스로 이동하지 않도록 하는 것입니다.

소스 및 대상 포트 구성

TCP 또는 UDP 원본 및 대상 포트는 응용 프로그램 정의에서 패킷 일치를 위해 네트워크 프로토콜과 함께 추가 사양을 제공합니다. 포트를 구성하려면 계층 수준에서 및 source-port 명령문을 [edit applications application application-name] 포함합니다destination-port.

하나의 원본 또는 대상 포트를 정의해야 합니다. 일반적으로 이 일치 조건은 현재 포트에서 어떤 프로토콜이 사용되고 있는지 알아내기 위해 일치 명령문과 protocol 함께 지정합니다.

숫자 값 또는 표 4에 나열된 텍스트 동의어 중 하나를 지정할 수 있습니다.

표 4: 차세대 서비스에서 지원하는 포트 이름

포트 이름

해당 포트 번호

snmp

161

snmptrap

162

일치 기준에 대한 자세한 내용은 라우팅 정책, 방화벽 필터 및 트래픽 폴리서 사용자 설명서를 참조하십시오.

비활성 시간 초과 기간 구성

응용 프로그램 비활성에 대한 제한 시간을 지정할 수 있습니다. 소프트웨어가 기간 동안 활동을 감지하지 못한 경우 타이머가 만료되면 흐름이 무효화됩니다. 타임아웃 기간을 구성하려면 계층 레벨에서 [edit applications application application-name] 문을 포함합니다inactivity-timeout.

기본값은 14,400초입니다. 응용 프로그램에 대해 구성하는 값은 계층 수준에서 구성된 [edit interfaces interface-name service-options] 모든 전역 값을 재정의하며, 자세한 내용은 서비스 인터페이스에 대한 기본 시간 제한 설정 구성을 참조하십시오.

SIP 구성

SIP(Session Initiation Protocol)는 전화 통신, 팩스, 화상 회의, 인스턴트 메시징 및 파일 교환과 같은 인터넷 서비스와 관련된 끝점 간의 통신을 위한 일반화된 프로토콜입니다.

Junos OS는 RFC 3261, SIP: 세션 시작 프로토콜에 설명된 표준에 따라 ALG 서비스를 제공합니다. Junos OS에 따른 SIP 플로우는 RFC 3665, SIP(Session Initiation Protocol) 기본 통화 플로우 예에 설명되어 있습니다.

메모:

Junos OS SIP ALG를 구현하기 전에 Junos OS SIP ALG 제한 사항에 설명된 특정 제한 사항을 숙지해야 합니다

SIP ALG와 함께 NAT를 사용하면 주소 변환으로 인해 SIP 헤더 필드가 변경됩니다. 이러한 변환에 대한 설명은 SIP ALG Interaction with 네트워크 주소 변환를 참조하십시오.

적응형 서비스 인터페이스에서 SIP를 구현하려면 값을 sip사용하여 계층 수준에서 문을 [edit applications application application-name] 구성합니다application-protocol. 또한 SIP 구현 방법을 수정하기 위해 구성할 수 있는 다른 두 개의 문이 있습니다.

  • 라우터가 NAT 방화벽 뒤에 있는 엔드포인트 디바이스에 대한 수신 SIP 통화를 수락하도록 설정할 수 있습니다. 방화벽 뒤에 있는 디바이스가 방화벽 외부에 있는 프록시에 등록하면 AS 또는 멀티서비스 PIC가 등록 상태를 유지합니다. learn-sip-register 문이 활성화되면 라우터는 이 정보를 사용하여 인바운드 통화를 수락할 수 있습니다. 이 문이 구성되지 않은 경우 인바운드 통화가 허용되지 않습니다. 방화벽 뒤에 있는 디바이스만 방화벽 외부의 디바이스를 호출할 수 있습니다.

    SIP 등록을 learn-sip-register 구성하려면 계층 수준에서 문을 [edit applications application application-name] 포함합니다.

    메모:

    명령문은 learn-sip-register 차세대 서비스 MX-SPC3에 적용되지 않습니다.

    또한 명령을 실행하여 SIP 레지스터를 show services stateful-firewall sip-register 수동으로 검사할 수도 있습니다. 자세한 내용은 Junos OS 시스템 기본 사항 및 서비스 명령 참조를 참조하십시오. 이 show services stateful-firewall sip-register 명령은 차세대 서비스에서 지원되지 않습니다.

  • 보류된 SIP 통화 기간에 대한 시간 초과 기간을 지정할 수 있습니다. 통화가 보류되면 활동이 없으며 구성된 inactivity-timeout 기간이 만료된 후 플로우가 시간 초과되어 통화 상태가 삭제될 수 있습니다. 이를 방지하기 위해 통화가 보류되면 플로우 타이머가 주기로 sip-call-hold-timeout 재설정되어 통화 상태와 플로우를 기간보다 inactivity-timeout 오래 보존합니다.

    메모:

    명령문은 sip-call-hold-timeout 차세대 서비스 MX-SPC3에 적용되지 않습니다.

    타임아웃 기간을 구성하려면 계층 레벨에서 [edit applications application application-name] 문을 포함합니다sip-call-hold-timeout.

    기본값은 7200초이고 범위는 0에서 36,000초(10시간)까지입니다.

SIP ALG와 네트워크 주소 변환의 상호 작용

NAT(네트워크 주소 변환) 프로토콜을 사용하면 프라이빗 서브넷의 여러 호스트가 단일 공용 IP 주소를 공유하여 인터넷에 액세스할 수 있습니다. 나가는 트래픽의 경우 NAT는 프라이빗 서브넷에 있는 호스트의 프라이빗 IP 주소를 퍼블릭 IP 주소로 바꿉니다. 들어오는 트래픽의 경우 공용 IP 주소가 다시 개인 주소로 변환되고 메시지가 전용 서브넷의 적절한 호스트로 라우팅됩니다.

SIP 메시지에는 SIP 헤더와 SIP 본문에 IP 주소가 포함되어 있기 때문에 SIP(Session Initiation Protocol) 서비스와 함께 NAT를 사용하는 것은 더 복잡합니다. SIP 서비스와 함께 NAT를 사용하는 경우 SIP 헤더에는 발신자 및 수신자에 대한 정보가 포함되며 디바이스는 이 정보를 변환하여 외부 네트워크에서 숨깁니다. SIP 본문에는 미디어 전송을 위한 IP 주소 및 포트 번호를 포함하는 SDP(Session Description Protocol) 정보가 포함되어 있습니다. 디바이스는 리소스를 할당하여 미디어를 송수신하기 위해 SDP 정보를 변환합니다.

SIP 메시지의 IP 주소 및 포트 번호가 대체되는 방법은 메시지의 방향에 따라 다릅니다. 보내는 메시지의 경우 클라이언트의 개인 IP 주소 및 포트 번호가 주니퍼 네트웍스 방화벽의 공용 IP 주소 및 포트 번호로 대체됩니다. 들어오는 메시지의 경우 방화벽의 공용 주소가 클라이언트의 개인 주소로 바뀝니다.

INVITE 메시지가 방화벽을 통해 전송되면 SIP ALG(애플리케이션 레이어 게이트웨이)는 메시지 헤더의 정보를 통화 테이블로 수집하여 후속 메시지를 올바른 엔드포인트로 전달하는 데 사용합니다. 새 메시지(예: ACK 또는 200 OK)가 도착하면 ALG는 "From:, To: 및 Call-ID:" 필드를 호출 테이블과 비교하여 메시지의 호출 컨텍스트를 식별합니다. 기존 호출과 일치하는 새로운 INVITE 메시지가 도착하면 ALG는 이를 REINVITE로 처리합니다.

SDP 정보가 포함된 메시지가 도착하면 ALG는 포트를 할당하고 포트와 SDP의 포트 간에 NAT 매핑을 생성합니다. SDP는 RTP(Real-Time Transport Protocol) 및 RTCP(Real-Time Control Protocol) 채널에 순차적 포트가 필요하기 때문에 ALG는 연속적인 짝수-홀수 포트를 제공합니다. 포트 쌍을 찾을 수 없는 경우 SIP 메시지를 삭제합니다.

이러한 주제에는 다음 섹션이 포함됩니다.

발신 전화

SIP 요청이 내부 네트워크에서 외부 네트워크로 전송되면서 SIP 통화가 시작되면 NAT는 SDP의 IP 주소와 포트 번호를 대체하고 IP 주소와 포트 번호를 주니퍼 네트웍스 방화벽에 바인딩합니다. Via(통해), Contact(연락처), Route(경로) 및 Record-Route SIP 헤더 필드(있는 경우)도 방화벽 IP 주소에 바인딩됩니다. ALG는 재전송 및 SIP 응답 메시지에 사용하기 위해 이러한 매핑을 저장합니다.

그런 다음 SIP ALG는 방화벽의 핀홀을 열어 SDP 및 Via, Contact 및 Record-Route 헤더 필드의 정보를 기반으로 협상된 동적으로 할당된 포트에서 디바이스를 통해 미디어를 허용합니다. 또한 핀홀을 사용하면 수신 패킷이 연락처, 비아 및 레코드 경로 IP 주소 및 포트에 도달할 수 있습니다. 반환 트래픽을 처리할 때 ALG는 원래 Contact, Via, Route 및 Record-Route SIP 필드를 패킷에 다시 삽입합니다.

걸려오는 전화

수신 통화는 공용 네트워크에서 공용 고정 NAT 주소 또는 디바이스의 인터페이스 IP 주소로 시작됩니다. 정적 NAT는 내부 호스트를 가리키는 정적으로 구성된 IP 주소입니다. 인터페이스 IP 주소는 내부 호스트가 SIP 레지스트라로 보낸 REGISTER 메시지를 모니터링할 때 ALG에 의해 동적으로 기록됩니다. 디바이스가 수신 SIP 패킷을 수신하면 세션을 설정하고 패킷의 페이로드를 SIP ALG로 전달합니다.

ALG는 SIP 요청 메시지(처음에는 INVITE)를 검사하고 SDP의 정보를 기반으로 발신 미디어에 대한 게이트를 엽니다. 200 OK 응답 메시지가 도착하면 SIP ALG는 IP 주소 및 포트에서 NAT를 수행하고 아웃바운드 방향으로 핀홀을 엽니다. (열린 게이트는 지속 시간이 짧으며 200 OK 응답 메시지가 신속하게 수신되지 않으면 시간 초과됩니다.)

200 OK 응답이 도착하면 SIP 프록시는 SDP 정보를 검사하고 각 미디어 세션의 IP 주소 및 포트 번호를 읽습니다. 디바이스의 SIP ALG는 주소 및 포트 번호에 대해 NAT를 수행하고, 아웃바운드 트래픽에 대한 핀홀을 열고, 인바운드 방향의 게이트에 대한 시간 제한을 새로 고칩니다.

ACK가 200 OK에 도착하면 SIP ALG도 통과합니다. 메시지에 SDP 정보가 포함된 경우 SIP ALG는 IP 주소 및 포트 번호가 이전 INVITE에서 변경되지 않도록 합니다. 변경된 경우 ALG는 이전 핀홀을 삭제하고 미디어가 통과할 수 있도록 새 핀홀을 만듭니다. 또한 ALG는 Via, Contact 및 Record-Route SIP 필드를 모니터링하고 이러한 필드가 변경된 것으로 확인되면 새 핀홀을 엽니다.

착신 전환 통화

착신 전환된 통화는 예를 들어 네트워크 외부의 사용자 A가 네트워크 내부의 사용자 B에게 전화를 걸고 사용자 B가 네트워크 외부의 사용자 C에게 통화를 착신 전환하는 경우입니다. SIP ALG는 사용자 A의 INVITE를 정상적인 수신 통화로 처리합니다. 그러나 ALG가 네트워크 외부에서 B에서 C로 전달된 통화를 검사하고 동일한 인터페이스를 사용하여 B와 C에 도달하는 것을 감지하면 미디어가 사용자 A와 사용자 C 사이에 직접 흐르기 때문에 방화벽에 핀홀이 열리지 않습니다.

통화 종료

BYE 메시지는 통화를 종료합니다. 디바이스가 BYE 메시지를 수신하면 다른 메시지와 마찬가지로 헤더 필드를 변환합니다. 그러나 BYE 메시지는 수신자가 200 OK로 승인해야 하므로 ALG는 200 OK의 전송 시간을 허용하기 위해 5초 동안 통화 해제를 지연합니다.

다시 초대 메시지에 전화 걸기

다시 초대 메시지는 통화에 새 미디어 세션을 추가하고 기존 미디어 세션을 제거합니다. 통화에 새 미디어 세션이 추가되면 방화벽에서 새 핀홀이 열리고 새 주소 바인딩이 만들어집니다. 이 프로세스는 원래 통화 설정과 동일합니다. 통화에서 하나 이상의 미디어 세션이 제거되면 BYE 메시지와 마찬가지로 핀홀이 닫히고 바인딩이 해제됩니다.

통화 세션 타이머

SIP ALG는 Re-INVITE 또는 UPDATE 메시지가 수신되지 않은 경우 Session-Expires 값을 사용하여 세션의 시간을 초과합니다. ALG는 INVITE에 대한 200 OK 응답에서 Session-Expires 값(있는 경우)을 가져오고 이 값을 신호 타임아웃에 사용합니다. 세션 시간이 초과되기 전에 ALG가 다른 INVITE를 수신하면 모든 타임아웃 값을 이 새로운 INVITE 또는 기본값으로 재설정하고 이 프로세스가 반복됩니다.

예방 조치로 SIP ALG는 하드 시간 제한 값을 사용하여 통화가 존재할 수 있는 최대 시간을 설정합니다. 이렇게 하면 다음 이벤트 중 하나가 발생할 경우 장치가 보호됩니다.

  • 통화 중에 종료 시스템이 충돌하고 BYE 메시지가 수신되지 않습니다.

  • 악의적인 사용자는 SIP ALG를 공격하기 위해 BYE를 보내지 않습니다.

  • SIP 프록시의 잘못된 구현은 Record-Route를 처리하지 못하고 BYE 메시지를 보내지 않습니다.

  • 네트워크 장애로 인해 BYE 메시지가 수신되지 않습니다.

통화 취소

양 당사자는 CANCEL 메시지를 보내 통화를 취소할 수 있습니다. CANCEL 메시지를 수신하면 SIP ALG는 방화벽을 통해 핀홀을 닫고(핀홀이 열려 있는 경우) 주소 바인딩을 해제합니다. 리소스를 해제하기 전에 ALG는 약 5초 동안 제어 채널 에이징 아웃을 지연하여 최종 200 OK가 통과할 시간을 허용합니다. 487 또는 200이 아닌 응답이 도착하는지 여부에 관계없이 5초 시간 제한이 만료되면 통화가 종료됩니다.

분기

포크를 사용하면 SIP 프록시가 단일 INVITE 메시지를 여러 대상에 동시에 보낼 수 있습니다. 단일 통화에 대해 여러 200개의 OK 응답 메시지가 도착하면 SIP ALG는 구문 분석하지만 수신한 처음 200개의 OK 메시지로 통화 정보를 업데이트합니다.

SIP 메시지

SIP 메시지 형식은 SIP 헤더 섹션과 SIP 본문으로 구성됩니다. 요청 메시지에서 헤더 섹션의 첫 번째 줄은 메서드 유형, request-URI 및 프로토콜 버전을 포함하는 요청 줄입니다. 응답 메시지에서 첫 번째 줄은 상태 코드가 포함된 상태 줄입니다. SIP 헤더에는 시그널링에 사용되는 IP 주소 및 포트 번호가 포함되어 있습니다. 헤더 섹션과 빈 줄로 구분된 SIP 본문은 선택 사항인 세션 설명 정보용으로 예약됩니다. Junos OS는 현재 SDP만 지원합니다. SIP 본문에는 미디어를 전송하는 데 사용되는 IP 주소 및 포트 번호가 포함되어 있습니다.

SIP 헤더

다음 샘플 SIP 요청 메시지에서 NAT는 헤더 필드의 IP 주소를 대체하여 외부 네트워크에서 숨깁니다.

IP 주소 변환이 수행되는 방법은 메시지의 유형과 방향에 따라 달라집니다. 메시지는 다음 중 하나일 수 있습니다.

  • 인바운드 요청

  • 아웃바운드 응답

  • 아웃바운드 요청

  • 인바운드 응답

표 5 는 이러한 각 경우에 NAT가 수행되는 방법을 보여줍니다. 여러 헤더 필드의 경우 ALG는 메시지가 네트워크 내부 또는 외부에서 오는지 여부 이상을 결정합니다. 또한 호출을 시작한 클라이언트와 메시지가 요청인지 응답인지를 결정해야 합니다.

표 5: NAT 테이블로 메시지 요청

인바운드 요청

(공개에서 비공개로)

받는 사람:

도메인을 로컬 주소로 바꾸기

보낸 사람:

없음

통화 ID:

없음

통해:

없음

요청 URI:

ALG 주소를 로컬 주소로 교체

접촉:

없음

레코드 경로:

없음

경로:

없음

아웃바운드 응답

(비공개에서 공개로)

받는 사람:

ALG 주소를 로컬 주소로 교체

보낸 사람:

없음

통화 ID:

없음

통해:

없음

요청 URI:

해당 사항 없음

접촉:

로컬 주소를 ALG 주소로 바꾸기

레코드 경로:

로컬 주소를 ALG 주소로 바꾸기

경로:

없음

아웃바운드 요청

(비공개에서 공개로)

받는 사람:

없음

보낸 사람:

로컬 주소를 ALG 주소로 바꾸기

통화 ID:

없음

통해:

로컬 주소를 ALG 주소로 바꾸기

요청 URI:

없음

접촉:

로컬 주소를 ALG 주소로 바꾸기

레코드 경로:

로컬 주소를 ALG 주소로 바꾸기

경로:

ALG 주소를 로컬 주소로 교체

아웃바운드 응답

(공개에서 비공개로)

받는 사람:

없음

보낸 사람:

ALG 주소를 로컬 주소로 교체

통화 ID:

없음

통해:

ALG 주소를 로컬 주소로 교체

요청 URI:

해당 사항 없음

접촉:

없음

레코드 경로:

ALG 주소를 로컬 주소로 교체

경로:

ALG 주소를 로컬 주소로 교체

SIP 본체

SIP 본문의 SDP 정보에는 ALG가 미디어 스트림에 대한 채널을 생성하는 데 사용하는 IP 주소가 포함됩니다. SDP 섹션의 변환은 리소스를 할당합니다. 즉, 미디어를 보내고 받을 포트 번호도 할당됩니다.

샘플 SDP 섹션에서 발췌한 다음 내용은 리소스 할당을 위해 변환되는 필드를 보여줍니다.

SIP 메시지에는 둘 이상의 미디어 스트림이 포함될 수 있습니다. 이 개념은 전자 메일 메시지에 여러 파일을 첨부하는 것과 비슷합니다. 예를 들어, SIP 클라이언트에서 SIP 서버로 보낸 INVITE 메시지에는 다음 필드가 있을 수 있습니다.

Junos OS는 각 방향에 대해 협상된 최대 6개의 SDP 채널, 통화당 총 12개의 채널을 지원합니다.

Junos OS SIP ALG 제한 사항

SIP ALG의 구성에는 다음과 같은 제한이 적용됩니다.

  • RFC 3261에 설명된 방법만 지원됩니다.

  • SIP 버전 2만 지원됩니다.

  • TCP는 MS-MPC의 메시지 시그널링을 위한 전송 메커니즘으로 지원되지 않지만 차세대 서비스에는 지원됩니다.

  • STUN을 사용할 때 SIP ALG를 구성하지 마십시오. 클라이언트가 STUN/TURN을 사용하여 발신자와 응답자 또는 프록시 간의 방화벽 또는 NAT 디바이스를 탐지하는 경우 클라이언트는 NAT 디바이스 동작을 가장 잘 추측하고 그에 따라 작동하여 전화를 걸려고 시도합니다.

  • MS-MPC에서는 SIP ALG와 함께 엔드포인트 독립 매핑 NAT 풀 옵션을 사용하지 마십시오. 오류가 발생합니다. 이는 차세대 서비스에는 적용되지 않습니다.

  • IPv6 신호 데이터는 MS-MPC에서 지원되지 않지만 차세대 서비스에서는 지원됩니다.

  • 인증은 지원되지 않습니다.

  • 암호화된 메시지는 지원되지 않습니다.

  • SIP 단편화는 MS-MPC에서 지원되지 않지만 차세대 서비스에서는 지원됩니다.

  • SIP 메시지를 포함하는 최대 UDP 패킷 크기는 9KB로 가정합니다. 이보다 큰 SIP 메시지는 지원되지 않습니다.

  • SIP 메시지의 최대 미디어 채널 수는 6개로 가정합니다.

  • FQDN(정규화된 도메인 이름)은 중요 필드에서 지원되지 않습니다.

  • QoS는 지원되지 않습니다. SIP는 DSCP 재작성을 지원합니다.

  • 웜 대기를 제외하고는 고가용성이 지원되지 않습니다.

  • never의 시간 제한 설정은 SIP 또는 NAT에서 지원되지 않습니다.

  • 멀티캐스트(포크 프록시)는 지원되지 않습니다.

패킷 매칭을 위한 SNMP 명령 구성

패킷 매칭을 위해 SNMP 명령 설정을 지정할 수 있습니다. SNMP를 snmp-command 구성하려면 계층 수준에서 문을 포함합니다.[edit applications application application-name]

지원되는 값은 , get-next, settrap입니다get. 일치를 위해 하나의 값만 구성할 수 있습니다. 계층 수준의 문 [edit applications application application-name]application-protocol 값을 snmp가져야 합니다.