SIP ALG
RESUMO O Protocolo de Iniciação de Sessão (SIP) é um protocolo de sinalização para iniciar, modificar e encerrar sessões de multimídia pela internet. O SIP oferece suporte a sessões de mídia única e multi-mídia.
Entender o SIP ALG
O Protocolo de Iniciação de Sessão (SIP) é um protocolo padrão da Força-Tarefa de Engenharia de Internet (IETF) para iniciar, modificar e encerrar sessões multimídia pela Internet. Essas sessões podem incluir conferências, telefonia ou multimídia, com recursos como mensagens instantâneas e mobilidade em nível de aplicativo em ambientes de rede.
O Junos OS oferece suporte ao SIP como serviço, permitindo e negando com base em uma política que você configura. O SIP é um serviço predefinido no Junos OS e usa a porta 5060 como porta de destino.
Uma das funções da SIP é distribuir informações de descrição da sessão e, durante a sessão, negociar e modificar os parâmetros da sessão. O SIP também é usado para encerrar uma sessão multimídia, sinalizar um estabelecimento de chamadas, fornecer indicação de falha e fornecer métodos para o registro de endpoint.
As informações de descrição da sessão estão incluídas no INVITE e mensagens de 200 OK ou 200-OK e mensagens ACK e indicam o tipo de multimídia da sessão; por exemplo, seja voz ou vídeo. Embora o SIP possa usar diferentes protocolos de descrição para descrever a sessão, o Juniper Networks SIP Application Layer Gateway (ALG) oferece suporte apenas ao Protocolo de Descrição de Sessão (SDP).
O SDP fornece informações que um sistema pode usar para participar de uma sessão multimídia. O SDP pode incluir informações como endereços IP, números de porta, horários e datas. Observe que o endereço IP e o número de porta no cabeçalho SDP (os campos c= e m=, respectivamente) são o endereço e a porta onde o cliente deseja receber os fluxos de mídia e não o endereço IP e o número de porta de onde a solicitação SIP se origina (embora possam ser os mesmos).
As mensagens SIP consistem em solicitações de um cliente para um servidor e respostas às solicitações de um servidor a um cliente com o objetivo de estabelecer uma sessão (ou uma chamada). Um agente de usuário (UA) é um aplicativo que é executado nos endpoints da chamada e consiste em duas partes:
cliente agente de usuário (UAC), que envia solicitações sip em nome do usuário
servidor de agente de usuário (UAS), que ouve as respostas e notifica o usuário quando chega
UAC e UAS são definidos em relação ao papel que um determinado agente está desempenhando em uma negociação.
Exemplos de UAs são servidores proxy SIP e telefones.
Este tópico contém as seguintes seções:
Operação SIP ALG
Existem dois tipos de tráfego SIP, a sinalização e o fluxo de mídia. O tráfego de sinalização SIP consiste em mensagens de solicitação e resposta entre cliente e servidor e usa protocolos de transporte, como UDP ou TCP. O fluxo de mídia transporta os dados (dados de áudio, por exemplo) usando protocolos de transporte.
A partir do Junos OS Release 12.3X48-D25 e do Junos OS Release 17.3R1, o SIP ALG oferece suporte a TCP. O suporte a TCP no SIP ALG reduz o tráfego para o servidor eliminando a necessidade de reregistor ou atualizar o servidor com frequência.
Por padrão, o Junos OS oferece suporte a mensagens de sinalização SIP na porta 5060. Você pode configurar a porta criando uma política que permite o serviço SIP, e o software filtra o tráfego de sinalização SIP como qualquer outro tipo de tráfego, permitindo ou negando. O fluxo de mídia, no entanto, usa números de porta atribuídos dinamicamente que podem mudar várias vezes durante uma chamada. Sem portas fixas, é inseguro criar uma política estática para controlar o tráfego de mídia. Nesse caso, o dispositivo invoca o SIP ALG. As portas de transporte de dispositivos usadas para as sessões de mídia não são conhecidas com antecedência; no entanto, as portas usadas para a negociação sip são bem conhecidas (ou predefinidas). O ALG registra interesse em pacotes da sessão de controle, que pode distinguir facilmente dos outros pacotes, e inspeciona a negociação das informações de transporte usadas para a sessão de mídia (endereços IP e portas).
O SIP ALG cria um pinhole quando determina um IP, porta, endereço de transporte e protocolo correspondentes, que são identificados com quaisquer informações que sejam conhecidas no momento em que o buraco é aberto.
O SIP ALG monitora transações sip e cria e gerencia dinamicamente pinholes com base nas informações que extrai dessas transações. O SIP ALG da Juniper Networks oferece suporte a todos os métodos e respostas sip. Você pode permitir que as transações SIP atravessem o firewall da Juniper Networks, criando uma política estática que permite o serviço SIP. Se a política for configurada para inspecionar o tráfego SIP (ou, mais apropriadamente, se a política enviar algum tráfego ao SIP ALG para inspeção), as ações permitidas são para permitir o tráfego (nesse caso os pinholes apropriados são abertos) ou negar o tráfego.
O SIP ALG intercepta mensagens SIP que contêm SDP e, usando um parser, extrai as informações necessárias para criar pinholes. O SIP ALG examina a porção SDP do pacote, e um parser extrai informações como endereços IP e números de porta, que o SIP ALG registra em uma tabela de pinhole. O SIP ALG usa os endereços IP e os números de porta registrados na tabela de pinhole para abrir pinholes e permitir que fluxos de mídia atravessem o dispositivo.
Quando o dispositivo está executando NAT, os endereços de transporte que os UAs empregam estão incorretos. O SIP ALG modifica os endereços de transporte com base nas portas e endereços traduzidos alocados pelos endereços de rede traduzidos por dispositivos. Quando o SDP é criptografado, o dispositivo não pode extrair ou modificar o conteúdo da mensagem e, portanto, não pode corrigir os endereços de transporte. Para fornecer uma solução alternativa, o protocolo STUN foi implantado (exigindo que os dispositivos NAT façam alguma forma de cone-NAT), o que permite que os clientes determinem os endereços traduzidos e usem esses endereços recém-descobertos nas mensagens SDP.
Os produtos NEC SIP são compatíveis condicionalmente.
Descrições da sessão SDP
Uma descrição da sessão SDP é um formato bem definido para transmitir informações suficientes para descobrir e participar de uma sessão multimídia. Uma sessão é descrita por uma série de pares de atributos/valor, um por linha. Os nomes de atributos são caracteres únicos, seguidos de =e um valor. Os valores opcionais são especificados com =*. Os valores são uma string ASCII ou uma sequência de tipos específicos separados por espaços. Os nomes de atributos são únicos apenas dentro da construção sintática associada, como apenas na sessão, tempo ou mídia.
Na descrição da sessão de SDP, as informações de nível de mídia começam com o campo m=
Dos muitos campos na descrição do SDP, dois são particularmente úteis para o SIP ALG porque contêm informações da Camada de Transporte.
c=
para informações de conexãoEste campo pode aparecer no nível de sessão ou mídia. Ele aparece neste formato:
c=< tipo de rede>< endereço><conexão>
O Junos OS oferece suporte apenas a "IN" (para Internet) como o tipo de rede, "IPv4" como tipo de endereço, e um endereço IP ou nome de domínio unicast como endereço IP de destino (conexão). A partir do Junos OS Release 15.1X49-D40 e do Junos OS Release 17.3R1, o tipo de endereço "IPv6" também é suportado.
Se o endereço IP de destino for um endereço IP unicast, o SIP ALG cria pinholes usando o endereço IP e os números de porta especificados no campo de descrição da mídia m=.
m=
para comunicado de mídiaEste campo aparece no nível da mídia e contém a descrição da mídia. Ele aparece neste formato:
lista m=<media><port><transport><fmt>
Atualmente, o Junos OS oferece suporte a "RTP" como o protocolo de transporte da Camada de Aplicativos. O número da porta indica a porta de destino do fluxo de mídia (a origem é alocada pelo UA remoto). A lista de formatos (lista fmt) fornece informações sobre o protocolo de Camada de Aplicativo que a mídia usa.
O software abre portas apenas para RTP e protocolo de controle em tempo real (RTCP). Cada sessão RTP tem uma sessão RTCP correspondente. Portanto, sempre que um fluxo de mídia usa RTP, o SIP ALG deve reservar portas (criar pinholes) para tráfego RTP e RTCP. Por padrão, o número de porta para RTCP é um superior ao número da porta RTP.
Criação de pinhole
Cada pinhole (um para tráfego RTP e outro para tráfego RTCP) compartilham o mesmo endereço IP de destino. O endereço IP vem do campo c= na descrição da sessão SDP. Como o campo c= pode aparecer no nível de sessão ou na parte de nível de mídia da descrição da sessão SDP, o parser determina o endereço IP com base nas seguintes regras (de acordo com as convenções SDP):
Primeiro, o parser SIP ALG procura um campo c= contendo um endereço IP no nível de mídia. Se houver esse campo, o parser extrai esse endereço IP e o SIP ALG usa esse endereço para criar um pinhole para a mídia.
Se não houver campo c= no nível de mídia, o parser SIP ALG extrai o endereço IP do campo c= no nível de sessão, e o SIP ALG usa esse endereço IP para criar um pinhole para a mídia. Se a descrição da sessão não conter um campo c= em ambos os níveis, isso indica um erro na pilha de protocolos, e o dispositivo derruba o pacote e registra o evento.
O SIP ALG também abre buracos para tráfego de sinal. Esses pinholes de sinal são úteis após o intervalo de sessão de sinal anterior, e também são úteis para o tráfego de sinal enviado a um endereço de terceiros que não combina com a sessão de sinal anterior. Os pinholes de sinal SIP ALG nunca envelhecem, ao contrário dos pinholes RTP ou RTCP, onde apenas o IP de destino e a porta de destino são especificados.
O SIP ALG abre buracos de sinal para os seguintes cabeçalhos, se necessário:
VIA
CONTATO
ROTA
ROTA RECORDE
O SIP ALG precisa das seguintes informações para criar um pinhole. Essas informações são provenientes da descrição da sessão SDP ou dos cabeçalhos SIP (conforme listado acima).
Protocolo — UDP ou TCP.
IP de origem — desconhecido.
Porta de origem — desconhecida.
IP de destino — o parser extrai o endereço IP de destino do campo c= no nível de mídia ou sessão.
Porta de destino — o parser extrai o número da porta de destino para RTP do campo m= no nível de mídia e calcula o número da porta de destino para RTCP usando a seguinte fórmula:
Porta RTP número + um
Vida útil — Esse valor indica o tempo (em segundos) durante o qual um pinhole está aberto para permitir a passagem de um pacote. Um pacote deve passar pelo pinhole antes que a vida útil expira. Quando a vida útil expira, o SIP ALG remove o pinhole.
Quando um pacote passa pelo pinhole dentro do período de vida útil, imediatamente depois o SIP ALG remove o pinhole para a direção de onde o pacote veio.
A Figura 1 descreve uma configuração de chamada entre dois clientes SIP e como o SIP ALG cria pinholes para permitir tráfego RTP e RTCP. A ilustração pressupõe que o dispositivo tenha uma política que permite o SIP, abrindo assim a porta 5060 para mensagens de sinalização SIP.
Figura 1: Configuraçãoda chamada SIP ALG
O SIP ALG não cria pinholes para tráfego RTP e RTCP quando o endereço IP de destino é 0.0.0.0, o que indica que a sessão está em espera. Para colocar uma sessão em espera durante uma comunicação telefônica, por exemplo, o Cliente A envia ao Cliente B uma mensagem SIP na qual o endereço IP de destino é 0.0.0.0.0. Isso indica ao Cliente B que ele não deve enviar nenhuma mídia até segunda ordem. Se o Cliente B enviar mídia de qualquer maneira, o dispositivo derrubará os pacotes.
- Entender o suporte IPv6 para SIP ALG
- Entender o dimensionamento do suporte de campo de lâmpada ocupado para o SIP ALG baseado em UDP
- Entender os métodos de solicitação do SIP ALG
- Visão geral da configuração do SIP ALG
- Entender a proteção contra ataques SIP ALG DoS
- Entender os tipos de mensagens desconhecidas SIP ALG
- Entender a duração e os intervalos de chamada do SIP ALG
Entender o suporte IPv6 para SIP ALG
O IPv6 é suportado no SIP ALG, juntamente com o modo NAT-PT e a tradução de endereços NAT64.
O SIP ALG processa o endereço IPv6 da mesma forma que processa o endereço IPv4 para atualizar a carga útil se o NAT estiver configurado e abrir pinholes para tráfego futuro.
O processamento especial ocorre para os seguintes formatos:
IPv6 in SIP URIs— O SIP URI parece o mesmo que um URI com endereços IPv4. Como em todas as URIs, um endereço IPv6 é fechado em suportes quadrados. Os blocos de endereço IPv6 são separados por pontos. Em muitas notações, um cólon separa o nome de host ou endereço IP da porta de protocolo. Para analisar o endereço IPv6 completo e separar a porta, o endereço é encapsulado dentro de suportes quadrados
IPv6 in SDP— os endereços IPv6 no Protocolo de Descrição de Sessão (SDP) têm o marcador IP6.
O SIP ALG com suporte para IPv6 tem a seguinte limitação:
Quando o NAT64 com NAT persistente é implementado, o SIP ALG adiciona a tradução de NAT à tabela de ligação NAT persistente se o NAT estiver configurado no Endereço de Registro (AOR). Como o NAT persistente não pode duplicar o endereço configurado, a coexistência de NAT66 e NAT64 configuradas no mesmo endereço não é suportada.
Apenas uma vinculação é criada para o mesmo endereço IP de origem.
Entender o dimensionamento do suporte de campo de lâmpada ocupado para o SIP ALG baseado em UDP
O campo de luz ocupado (BLF) é uma luz em um telefone IP que indica se outra extensão conectada à mesma troca de filiais privadas (PBX) está ocupada ou não. Você pode configurar manualmente o BLF usando uma interface Web. Quando o BLF está configurado, o telefone assina uma lista de recursos disponível no IP PBX para ser notificado de informações de status para outras extensões. O BLF funciona através do Protocolo de Iniciação de Sessão (SIP) e usa as mensagens DE ASSINATURA e NOTIFICAMENTO. Normalmente, o telefone é o assinante e o IP PBX é o notificador.
Quando um telefone é registrado no IP PBX, o IP PBX notifica o telefone do estado da lista de recursos. Por exemplo, se a lista de recursos for enorme, o corpo da mensagem NOTIFICÁ-lo também será enorme. Como o SIP ALG oferece suporte a apenas mensagens SIP de 3000 byte, ele ignora a enorme mensagem NOTIFICÁVEL. Se houver muitas instâncias de BLF no corpo de mensagens, a carga não será alterada e o portão não será aberto.
Começando com o Junos OS Release 12.3X48-D15 e o Junos OS Release 17.3R1, o SIP ALG oferece suporte a mensagens SIP de 65.000 byte no protocolo UDP. No aplicativo BLF de escalonamento, se cada instância tiver cerca de 500 bytes, o SIP ALG oferece suporte a 100 instâncias em uma mensagem SIP UDP.
O suporte de BLF para o SIP ALG baseado em UDP inclui os seguintes recursos:
O dispositivo pode enviar e receber mensagens SIP de 65.000 byte.
O SIP ALG pode analisar as mensagens SIP de 65.000 byte e abrir o pinhole, se necessário.
O SIP ALG regenera a nova mensagem jumbo SIP se o NAT estiver configurado e a carga útil for alterada.
Entender os métodos de solicitação do SIP ALG
O modelo de transação do Protocolo de Iniciação de Sessão (SIP) inclui uma série de mensagens de solicitação e resposta, cada uma das quais contém um method campo que denota a finalidade da mensagem.
O Junos OS oferece suporte aos seguintes tipos de método e códigos de resposta:
CONVITE — Um usuário envia uma solicitação de CONVITE para convidar outro usuário a participar de uma sessão. O corpo de uma solicitação DE CONVITE pode conter a descrição da sessão.
ACK — O usuário de quem o CONVITE se originou envia uma solicitação de ACK para confirmar a recepção da resposta final à solicitação DO CONVITE. Se a solicitação do INVITE original não contiver a descrição da sessão, a solicitação da ACK deve incluí-la.
OPÇÕES — O agente de usuário (UA) obtém informações sobre os recursos do proxy SIP. Um servidor responde com informações sobre quais métodos, protocolos de descrição de sessão e codificação de mensagens suportam.
BYE — Um usuário envia uma solicitação BYE para abandonar uma sessão. Uma solicitação BYE de ambos os usuários encerra automaticamente a sessão.
CANCELE — um usuário envia uma solicitação CANCEL para cancelar uma solicitação de CONVITE pendente. Uma solicitação DE CANCELAMENTO não surtiu efeito se o processamento do servidor SIP o INVITE tivesse enviado uma resposta final para o CONVITE antes de receber o CANCELAMENTO.
REGISTRE-se — um usuário envia uma solicitação DE REGISTRO a um servidor de registrador SIP para informá-lo da localização atual do usuário. Um servidor registrador SIP registra todas as informações que recebe em solicitações de REGISTRO e disponibiliza essas informações a qualquer servidor SIP que tente localizar um usuário.
Informações — Usado para comunicar informações de sinalização no meio da sessão ao longo do caminho de sinalização para a chamada.
Inscreva-se — Usado para solicitar atualizações de estado e estado atuais de um nó remoto.
Notificar — Enviado para informar aos assinantes sobre mudanças no estado para o qual o assinante tem uma assinatura.
Consulte — Usado para encaminhar o destinatário (identificado pela Solicitação-URI) a terceiros pelas informações de contato fornecidas na solicitação.
Por exemplo, se o usuário A em uma rede privada encaminhar o usuário B, em uma rede pública, ao usuário C, que também está na rede privada, o SIP Application Layer Gateway (ALG) aloca um novo endereço IP e número de porta para o usuário C para que o usuário C possa ser contatado pelo usuário B. Se o usuário C for registrado em um registrador, no entanto, seu mapeamento de porta é armazenado na tabela ALG Network Address Translation (NAT) e é reutilizado para realizar a tradução.
Atualização — Usado para abrir pinhole para informações de SDP novas ou atualizadas. A Via:, De:, para:, Call-ID:, Contact:, Route:, and Record-Route: os campos de cabeçalho são modificados.
1xx, 202, 2xx, 3xx, 4xx, 5xx, 6xx códigos de resposta — usados para indicar o status de uma transação. Os campos de cabeçalho são modificados.
Visão geral da configuração do SIP ALG
O gateway de camada de aplicativo de iniciação de sessão (SIP ALG) é desativado por padrão no dispositivo SRX— ele deve ser habilitado usando a CLI, se necessário. Em outros dispositivos, ele é habilitado por padrão. Para ajustar as operações de SIP ALG, use as seguintes instruções:
Controle a atividade de chamada sip. Para obter instruções, veja exemplo: definir a duração e o tempo limite de chamada SIP ALG.
Proteja o servidor proxy SIP contra ataques de inundação de negação de serviço (DoS). Para obter instruções, veja exemplo: configurar a proteção contra ataques SIP ALG DoS.
Habilite mensagens desconhecidas para passar quando a sessão estiver no modo de tradução de endereços de rede (NAT) e no modo de rota. Para obter instruções, veja exemplo: permitir tipos de mensagens SIP ALG desconhecidos.
Acomodar fluxos de chamada SIP proprietários. Para obter instruções, consulte a retenção de recursos de retenção DE ALG (Procedimento CLI)
Entender a proteção contra ataques SIP ALG DoS
A capacidade do servidor proxy do Session Initiation Protocol (SIP) de processar chamadas pode ser impactada por solicitações de SIP INVITE repetidas — solicitações negadas inicialmente. O recurso de proteção contra negação de serviço (DoS) permite que você configure o dispositivo para monitorar as solicitações do INVITE e as respostas do servidor proxy a eles. Se uma resposta contém um código de resposta 3xx, 4xx ou 5xx que não seja 401, 407, 487 e 488 que não são respostas reais de falha, então a solicitação não deve ser bloqueada. Veja como entender o SIP ALG e o NAT. A ALG armazena o endereço IP de origem da solicitação e o endereço IP do servidor proxy em uma tabela. Posteriormente, o dispositivo verifica todas as solicitações do INVITE nesta tabela e, por um número configurável de segundos (o padrão é 3), descarta quaisquer pacotes que correspondam às entradas na tabela. Você pode configurar o dispositivo para monitorar e negar solicitações de CONVITE repetidas para todos os servidores proxy, ou proteger um servidor proxy específico especificando o endereço IP de destino. A proteção contra ataques SIP está configurada globalmente.
Entender os tipos de mensagens desconhecidas SIP ALG
Esse recurso permite especificar como as mensagens do Protocolo de Iniciação de Sessão (SIP) não identificadas são tratadas pelo dispositivo. O padrão é soltar mensagens desconhecidas (sem suporte).
Não recomendamos permitir mensagens desconhecidas porque elas podem comprometer a segurança. No entanto, em um ambiente seguro de teste ou produção, esse comando pode ser útil para resolver problemas de interoperabilidade com equipamentos de fornecedores diferentes. Permitir mensagens SIP desconhecidas pode ajudá-lo a operar sua rede para que você possa analisar mais tarde seu tráfego voIP (voice-over-IP) para determinar por que algumas mensagens estavam sendo retiradas. O recurso do tipo de mensagem SIP desconhecido permite que você configure o dispositivo para aceitar o tráfego SIP contendo tipos de mensagens desconhecidos tanto no modo network address translation (NAT) quanto no modo de rota.
Essa opção se aplica apenas a pacotes recebidos identificados como pacotes VoIP suportados. Se um pacote não puder ser identificado, ele sempre será descartado. Se um pacote for identificado como um protocolo suportado e você tiver configurado o dispositivo para permitir tipos de mensagens desconhecidos, a mensagem será encaminhada sem processamento.
Entender a duração e os intervalos de chamada do SIP ALG
Os recursos de duração e tempo de chamada dão a você controle sobre a atividade de chamada do Protocolo de Iniciação de Sessão (SIP) e ajudam você a gerenciar recursos de rede.
Normalmente, uma chamada termina quando um dos clientes envia uma solicitação BYE ou CANCEL. O SIP Application Layer Gateway (ALG) intercepta a solicitação BYE ou CANCEL e remove todas as sessões de mídia para essa chamada. Pode haver motivos ou problemas que impeçam os clientes em uma chamada de enviar BYE ou cancelar solicitações, por exemplo, uma falha de energia. Nesse caso, a chamada pode continuar indefinidamente, consumindo recursos no dispositivo.
Uma chamada pode ter um ou mais canais de voz. Cada canal de voz tem duas sessões (ou duas transmissões de mídia), uma para tráfego de Protocolo de Transporte em Tempo Real (RTP) e uma para sinalização de Protocolo de Controle em Tempo Real (RTCP). Ao gerenciar as sessões, o dispositivo considera as sessões em cada canal de voz como um único grupo. Os intervalos de tempo e as configurações de duração de chamada aplicam-se a um grupo em oposição a cada sessão.
Os seguintes parâmetros regem a atividade de chamada SIP:
inactive-media-timeout
— Esse parâmetro indica que o tempo máximo (em segundos) de uma chamada pode permanecer ativo sem qualquer tráfego de mídia (RTP ou RTCP) em um grupo. Cada vez que um pacote RTP ou RTCP ocorre em uma chamada, esse tempo limite é reiniciado. Quando o período de inatividade excede essa configuração, as aberturas temporárias (pinholes) no firewall que o SIP ALG abriu para mídia são fechadas. A configuração padrão é de 120 segundos, e o intervalo é de 10 a 2550 segundos. Observe que, após o intervalo, os recursos de mídia (sessões e pinholes) são removidos e as chamadas SIP no dispositivo também serão encerradas se todos os recursos de mídia desta chamada forem removidos.maximum-call-duration
— Esse parâmetro define o comprimento máximo absoluto de uma chamada. Quando uma chamada excede essa configuração de parâmetro, o SIP ALG derruba a chamada e libera as sessões de mídia. A configuração padrão é de 720 minutos, e o intervalo é de 3 a 720 minutos.t1-interval
— Esse parâmetro especifica a estimativa de tempo de ida e volta, em segundos, de uma transação entre endpoints. O padrão é de 500 milissegundos. Como muitos temporizadores SIP escalam com o intervalo t1 (conforme descrito no RFC 3261), quando você altera o valor do temporizador de intervalo t1, esses tempores SIP também são ajustados.t4-interval
— Esse parâmetro especifica o tempo máximo que uma mensagem permanece na rede. O padrão é de 5 segundos e o alcance é de 5 a 10 segundos. Como muitos tempores SIP escalam com o intervalo t4 (conforme descrito no RFC 3261), quando você altera o valor do temporizador t4-interval, esses temporizadores SIP também são ajustados.c-timeout
— Esse parâmetro especifica o tempo limite de transação do INVITE no proxy, em minutos; o padrão é 3. Como o SIP ALG está no meio, em vez de usar o valor B do temporizador de transação INVITE (que é (64 * T1) = 32 segundos, o SIP ALG obtém o valor do temporizador do proxy.
Entender os recursos do SIP ALG Hold
Quando um usuário coloca uma chamada em espera, o Session Initiation Protocol Application Layer Gateway (SIP ALG) libera recursos de mídia do Session Description Protocol (SDP), como pinholes e contextos de tradução. Quando o usuário retoma a chamada, uma mensagem de solicitação de CONVITE negocia uma nova oferta e resposta de SDP e o SIP ALG realoca recursos para o fluxo de mídia. Isso pode resultar em novos números de endereço IP e porta traduzidos para a descrição da mídia, mesmo quando a descrição da mídia é a mesma da descrição anterior. Isso está em conformidade com o RFC 3264 Um modelo de oferta/resposta com o Protocolo de Descrição de Sessão (SDP).
Algumas implementações sip proprietárias projetaram fluxos de chamadas para que o módulo do Agente de Usuário (UA) ignore a nova oferta de SDP INVITE e continue a usar a oferta de SDP da negociação anterior. Para acomodar essa funcionalidade, você deve configurar o dispositivo para reter recursos de mídia SDP quando uma chamada é posta em espera para reutilização quando a chamada é retomada.
Retenção de recursos de retenção SIP ALG (procedimento CLI)
Para acomodar fluxos de chamada SIP proprietários:
user@host# set security alg sip retain-hold-resource
Entender o SIP ALG e o NAT
O protocolo network address translation (NAT) permite que vários hosts em uma sub-rede privada compartilhem um único endereço IP público para acessar a Internet. Para tráfego de saída, o NAT substitui o endereço IP privado do host na sub-rede privada pelo endereço IP público. Para tráfego de entrada, o endereço IP público é convertido de volta no endereço privado, e a mensagem é roteada para o host apropriado na sub-rede privada.
Usar o NAT com o serviço Session Initiation Protocol (SIP) é mais complicado porque as mensagens SIP contêm endereços IP nos cabeçalhos SIP, bem como no corpo SIP. Ao usar o NAT com o serviço SIP, os cabeçalhos SIP contêm informações sobre o chamador e o receptor, e o dispositivo traduz essas informações para escondê-la da rede externa. O órgão SIP contém as informações do Protocolo de Descrição de Sessão (SDP), que inclui endereços IP e números de porta para transmissão da mídia. O dispositivo traduz informações de SDP para alocar recursos para enviar e receber a mídia.
A forma como os endereços IP e os números de porta nas mensagens SIP são substituídos depende da direção da mensagem. Para uma mensagem de saída, o endereço IP privado e o número de porta do cliente são substituídos pelo endereço IP público e o número de porta do firewall Juniper Networks. Para uma mensagem de entrada, o endereço público do firewall é substituído pelo endereço privado do cliente.
Quando uma mensagem INVITE é enviada pelo firewall, o SIP Application Layer Gateway (ALG) coleta informações do cabeçalho da mensagem em uma tabela de chamada, que ela usa para encaminhar mensagens subseqüentes ao endpoint correto. Quando uma nova mensagem chega, por exemplo, um ACK ou 200 OK, o ALG compara os campos "From:, To:, and Call-ID:" em relação à tabela de chamadas para identificar o contexto de chamada da mensagem. Se chegar uma nova mensagem INVITE que corresponda à chamada existente, o ALG a processa como um REINVITE.
Quando chega uma mensagem contendo informações de SDP, o ALG aloca portas e cria um mapeamento NAT entre elas e as portas do SDP. Como o SDP requer portas sequenciais para os canais rtp (Protocolo de transporte em tempo real) e protocolo de controle em tempo real (RTCP), o ALG oferece portas ímpars consecutivas. Se não conseguir encontrar um par de portas, ele descarta a mensagem SIP.
O IPv6 é suportado no SIP ALG, juntamente com o modo NAT-PT e a tradução de endereços NAT64.
Este tópico contém as seguintes seções:
- Chamadas de saída
- Chamadas recebidas
- Ligações encaminhadas
- Encerramento de chamadas
- Mensagens de re-CONVITE de chamada
- Call Session Timers
- Cancelamento de chamadas
- Bifurcação
- Mensagens SIP
- Cabeçalhos SIP
- Corpo SIP
- Cenário SIP NAT
- Aulas de respostas de SIP
- Modo NAT no modo IPv6 puro (NAT66) para SIP IPv6 ALG
- NAT-PT
- NAT64
- STUN e SIP ALG
Chamadas de saída
Quando uma chamada SIP é iniciada com uma mensagem de solicitação sip da rede interna para a rede externa, o NAT substitui os endereços IP e os números de porta no SDP e vincula os endereços IP e os números de porta ao firewall Juniper Networks. Os campos de cabeçalho SIP via contato, rota e rota de registro, se presentes, também estão vinculados ao endereço IP do firewall. A ALG armazena esses mapeamentos para uso em retransmissões e para mensagens de resposta sip.
Em seguida, o SIP ALG abre pinholes no firewall para permitir que a mídia através do dispositivo nas portas dinamicamente atribuídas negociadas com base em informações no SDP e nos campos de cabeçalho via, contato e rota de registro. Os pinholes também permitem que os pacotes de entrada cheguem aos endereços e portas IP de contato, via e registro de rotas. Ao processar o tráfego de retorno, o ALG insere os campos SIP originais de contato, via, rota e rota de registro de volta em pacotes.
Chamadas recebidas
As chamadas recebidas são iniciadas da rede pública para endereços NAT estáticos públicos ou para interface de endereços IP no dispositivo. NATs estáticos são endereços IP configurados estaticamente que apontam para hosts internos; os endereços IP de interface são registrados dinamicamente pelo ALG enquanto monitora as mensagens REGISTER enviadas por hosts internos ao registrador SIP. Quando o dispositivo recebe um pacote SIP de entrada, ele configura uma sessão e encaminha a carga do pacote para o SIP ALG.
O ALG examina a mensagem de solicitação de SIP (inicialmente um CONVITE) e, com base em informações no SDP, abre portões para a mídia de saída. Quando uma mensagem de resposta de 200 OK chega, o SIP ALG executa NAT nos endereços e portas IP e abre buracos na direção de saída. (Os portões abertos têm pouco tempo de vida, e eles saem se uma mensagem de resposta de 200 OK não for recebida rapidamente.)
Quando uma resposta de 200 OK chega, o proxy SIP examina as informações do SDP e lê os endereços IP e os números das portas para cada sessão de mídia. O SIP ALG no dispositivo executa NAT nos endereços e números de porta, abre pinholes para tráfego de saída e atualiza o tempo limite para portões na direção de entrada.
Quando o ACK chega para o 200 OK, ele também passa pelo SIP ALG. Se a mensagem contém informações de SDP, o SIP ALG garante que os endereços IP e os números das portas não sejam alterados em relação ao CONVITE anterior — se forem, o ALG elimina pinholes antigos e cria novos pinholes para permitir que a mídia passe. O ALG também monitora os campos SIP via, contato e registro de rotas e abre novos pinholes se determinar que esses campos mudaram.
Ligações encaminhadas
Uma chamada encaminhada é quando, por exemplo, o usuário A fora da rede chama o usuário B dentro da rede, e o usuário B encaminha a chamada para o usuário C fora da rede. O SIP ALG processa o CONVITE do usuário A como uma chamada de entrada normal. No entanto, quando o ALG examina a chamada encaminhada de B para C fora da rede e percebe que B e C são alcançados usando a mesma interface, ele não abre pinholes no firewall, porque a mídia fluirá diretamente entre o usuário A e o usuário C.
Encerramento de chamadas
A mensagem BYE encerra uma chamada. Quando o dispositivo recebe uma mensagem BYE, ele traduz os campos de cabeçalho da mesma forma que faz para qualquer outra mensagem. Mas como uma mensagem BYE deve ser reconhecida pelo receptor com um 200 OK, o ALG atrasa a chamada de demolição por 5 segundos para permitir o tempo de transmissão do 200 OK.
Mensagens de re-CONVITE de chamada
As mensagens de re-CONVITE adicionam novas sessões de mídia a uma chamada e removem as sessões de mídia existentes. Quando novas sessões de mídia são adicionadas a uma chamada, novos pinholes são abertos no firewall e novas vinculações de endereço são criadas. O processo é idêntico à configuração de chamada original. Quando todas as sessões de mídia ou pinholes de mídia são removidas de uma chamada, a chamada é removida quando uma mensagem BYE é recebida.
Call Session Timers
Como medida de precaução, o SIP ALG usa valores de tempo limite difíceis para definir a quantidade máxima de tempo que uma chamada pode existir. Isso garante que o dispositivo esteja protegido caso ocorra um dos seguintes eventos:
Os sistemas finais falham durante uma chamada e uma mensagem BYE não é recebida.
Usuários mal-intencionados nunca enviam um BYE na tentativa de atacar um SIP ALG.
Implementações ruins de proxy SIP não processam a Rota de Registro e nunca enviam uma mensagem BYE.
Falhas de rede impedem que uma mensagem BYE seja recebida.
Cancelamento de chamadas
Qualquer uma das partes pode cancelar uma ligação enviando uma mensagem CANCEL. Ao receber uma mensagem CANCEL, o SIP ALG fecha os pinholes através do firewall — se houver algum foi aberto — e libera as vinculações de endereço. Antes de liberar os recursos, o ALG atrasa o envelhecimento do canal de controle por aproximadamente 5 segundos para permitir a passagem do 200 OK final. A chamada é encerrada quando o intervalo de 5 segundos expira, independentemente de uma resposta 487 ou não 200 chegar.
Bifurcação
A forking permite que um proxy SIP envie uma única mensagem DE CONVITE para vários destinos simultaneamente. Quando as várias mensagens de resposta a 200 OK chegam para a chamada única, o SIP ALG analisa, mas atualiza as informações de chamada com as primeiras 200 mensagens OK que recebe.
Mensagens SIP
O formato de mensagem SIP consiste em uma seção de cabeçalho SIP e o corpo SIP. Nas mensagens de solicitação, a primeira linha da seção de cabeçalho é a linha de solicitação, que inclui o tipo de método, solicitação-URI e versão de protocolo. Em mensagens de resposta, a primeira linha é a linha de status, que contém um código de status. Os cabeçalhos SIP contêm endereços IP e números de porta usados para sinalização. O corpo SIP, separado da seção de cabeçalho por uma linha em branco, está reservado para informações de descrição da sessão, que são opcionais. Atualmente, o Junos OS oferece suporte apenas ao SDP. O órgão SIP contém endereços IP e números de porta usados para transportar a mídia.
Cabeçalhos SIP
Na mensagem de solicitação de SIP da amostra a seguir, o NAT substitui os endereços IP nos campos de cabeçalho para escondê-los da rede externa.
INVITE bob@10.150.20.5
SIP/2.0 Via: SIP/2.0/UDP10.150.20.3
:5434 From: alice@10.150.20.3
To: bob@10.150.20.5
Call-ID: a12abcde@10.150.20.3
Contact: alice@10.150.20.3
:5434 Route: <sip:netscreen@10.150.20.3
:5060> Record-Route: <sip:netscreen@10.150.20.3
:5060>
A forma como a tradução do endereço IP é executada depende do tipo e direção da mensagem. Uma mensagem pode ser qualquer uma das seguintes:
Solicitação de entrada
Resposta de saída
Solicitação de saída
Resposta de entrada
A Tabela 1 mostra como o NAT é realizado em cada um desses casos. Observe que, para vários dos campos de cabeçalho, o ALG determina mais do que apenas se as mensagens vêm de dentro ou fora da rede. Ele também deve determinar qual cliente iniciou a chamada e se a mensagem é uma solicitação ou resposta.
Solicitação de entrada (do público ao privado) |
Para: |
Substitua o domínio por endereço local |
De: |
Nenhum |
|
ID de chamada: |
Nenhum |
|
Via: |
Nenhum |
|
Solicitação-URI: |
Substitua o endereço ALG por endereço local |
|
Contato: |
Nenhum |
|
Rota de registro: |
Nenhum |
|
Rota: |
Nenhum |
|
Resposta de saída (do privado ao público) |
Para: |
Substitua o endereço ALG por endereço local |
De: |
Nenhum |
|
ID de chamada: |
Nenhum |
|
Via: |
Nenhum |
|
Solicitação-URI: |
N/A |
|
Contato: |
Substitua o endereço local por endereço ALG |
|
Rota de registro: |
Substitua o endereço local por endereço ALG |
|
Rota: |
Nenhum |
|
Solicitação de saída (do privado ao público) |
Para: |
Nenhum |
De: |
Substitua o endereço local por endereço ALG |
|
ID de chamada: |
Nenhum |
|
Via: |
Substitua o endereço local por endereço ALG |
|
Solicitação-URI: |
Nenhum |
|
Contato: |
Substitua o endereço local por endereço ALG |
|
Rota de registro: |
Substitua o endereço local por endereço ALG |
|
Rota: |
Substitua o endereço local por endereço ALG |
|
Resposta de saída (do público ao privado) |
Para: |
Nenhum |
De: |
Substitua o endereço ALG por endereço local |
|
ID de chamada: |
Nenhum |
|
Via: |
Substitua o endereço ALG por endereço local |
|
Solicitação-URI: |
N/A |
|
Contato: |
Nenhum |
|
Rota de registro: |
Substitua o endereço ALG por endereço local |
|
Rota: |
Substitua o endereço ALG por endereço local |
Corpo SIP
As informações de SDP no órgão SIP incluem endereços IP que o ALG usa para criar canais para o fluxo de mídia. A tradução da seção SDP também aloca recursos, ou seja, números de porta para enviar e receber a mídia.
O trecho a seguir de uma seção de SDP amostral mostra os campos traduzidos para alocação de recursos.
o=user 2344234 55234434 IN IP410.150.20.3
c=IN IP410.150.20.3
m=audio43249
RTP/AVP 0
As mensagens SIP podem conter mais de um fluxo de mídia. O conceito é semelhante à anexação de vários arquivos a uma mensagem de e-mail. Por exemplo, uma mensagem DE CONVITE enviada de um cliente SIP para um servidor SIP pode ter os seguintes campos:
c=IN IP410.123.33.4
m=audio33445
RTP/AVP 0 c=IN IP410.123.33.4
m=audio33447
RTP/AVP 0 c=IN IP410.123.33.4
m=audio33449
RTP/AVP 0
O Junos OS oferece suporte a até 6 canais SDP negociados para cada direção, para um total de 12 canais por chamada. Para obter mais informações, consulte Entender o SIP ALG.
Cenário SIP NAT
Figura 2 e Figura 3 mostram um CONVITE de chamada SIP e 200 OK. Na Figura 2, o ph1 envia uma mensagem SIP INVITE para o ph2. Observe como os endereços IP nos campos de cabeçalho — mostrados em fonte ousada — são traduzidos pelo dispositivo.
A seção SDP da mensagem INVITE indica onde o interlocutor está disposto a receber mídia. Observe que o Media Pinhole contém dois números de porta, 52002 e 52003, para RTCP e RTP. O Pinhole via/contato fornece a porta número 5060 para sinalização SIP.
Observe como, na mensagem de resposta de 200 OK na Figura 3, as traduções executadas na mensagem INVITE são invertidas. Os endereços IP nesta mensagem, sendo públicos, não são traduzidos, mas os portões são abertos para permitir o acesso do fluxo de mídia à rede privada.


Aulas de respostas de SIP
As respostas do SIP fornecem informações de status sobre transações SIP e incluem um código de resposta e uma frase de motivo. As respostas do SIP são agrupadas nas seguintes classes:
Informações (100 a 199)— Solicitação recebida, continuando a processar a solicitação.
Sucesso (200 a 299)— A ação recebeu, entendeu e aceitou com sucesso.
Redirecionamento (300 a 399)— Mais ações necessárias para concluir a solicitação.
Erro do cliente (400 a 499)— A solicitação contém sintaxe ruim ou não pode ser cumprida neste servidor.
Erro do servidor (500 a 599)— o servidor não conseguiu atender a uma solicitação aparentemente válida.
Falha global (600 a 699)— A solicitação não pode ser atendida em nenhum servidor.
A Tabela 2 fornece uma lista completa das respostas atuais do SIP.
Informativo |
100 tentando |
180 toques |
A chamada 181 está sendo encaminhada |
182 Filas |
Progresso da sessão 183 |
|
|
Sucesso |
200 OK |
202 Aceito |
|
Redirecionamento |
300 Múltiplas opções |
301 Mudou-se permanentemente |
302 Mudou-se temporariamente |
305 Use proxy |
380 Serviço alternativo |
|
|
Erro do cliente |
Solicitação 400 Ruim |
401 Não autorizado |
402 Pagamento necessário |
403 Proibido |
404 Não encontrado |
405 Método não permitido |
|
406 Não aceitável |
Autenticação de proxy 407 necessária |
408 Solicitar um tempo de saída |
|
Conflito 409 |
410 Gone |
411 Comprimento necessário |
|
413 Solicitar entidade muito grande |
414 Solicitar URL muito grande |
Tipo de mídia sem suporte 415 |
|
420 Extensão ruim |
480 Temporariamente não disponível |
481 Chamada leg/transação não existe |
|
482 Loop detectado |
483 Saltos demais |
Endereço 484 incompleto |
|
485 Ambíguo |
486 Ocupado aqui |
Solicitação 487 cancelada |
|
488 Não é aceitável aqui |
|
|
|
Erro no servidor |
Erro interno do 500 Servidor |
501 Não implementado |
Gateway ruim 502 |
Serviço 502 indisponível |
Tempo de saída do gateway 504 |
Versão 505 SIP não suportada |
|
Falha global |
600 ocupados em todos os lugares |
Declínio do 603 |
604 Não existe em lugar nenhum |
606 Não aceitável |
|
|
Modo NAT no modo IPv6 puro (NAT66) para SIP IPv6 ALG
O SIP IPv6 ALG oferece suporte ao NAT66, assim como o NAT44. O NAT66 (IPv6 NAT) fornece NAT de origem e funções NAT estáticas semelhantes ao NAT44 (IPv4 NAT).
NAT-PT
Network Address Translation Protocol Translation (NAT-PT) (RFC 2766) é um mecanismo de tradução de protocolo que permite a comunicação entre nós somente IPv6 e IPv4 por meio de tradução independente de protocolo de datagrams IPv4 e IPv6, sem exigir informações de estado para a sessão.
O NAT-PT é implementado pelo NAT normal desde o endereço IPv6 até o endereço IPv4 e vice-versa. O SIP ALG processa essas traduções de endereço na carga, assim como os endereços são processados em NAT normal.
O NAT-PT vincula os endereços na rede IPv6 com endereços na rede IPv4 e vice-versa para fornecer roteamento transparente para os datagrams que atravessam entre os reinos de endereço.
A principal vantagem do NAT-PT é que os dispositivos finais e as redes podem executar endereços IPv4 ou endereços IPv6 e o tráfego pode ser iniciado de qualquer lado.
NAT64
O NAT64 é um mecanismo para permitir que hosts IPv6 se comuniquem com servidores IPv4. O NAT64 é necessário para manter o mapeamento de endereços IPv6 a IPv4. Esse mapeamento de endereços é configurado estaticamente pelo administrador do sistema (tradução stateless) ou, mais frequentemente, criado automaticamente quando o primeiro pacote da rede IPv6 chega ao NAT64 para ser traduzido (stateful).
O NAT64 é implementado em dispositivos usando NAT persistente. Quando a primeira mensagem de solicitação sip (primeiro pacote deve ser apenas do IPv6) transversa o DUT, a vinculação de endereço é criada e, em seguida, os pacotes podem fluir em ambas as direções.
O mecanismo NAT64 traduz pacotes IPv6 para pacotes IPv4 e vice-versa, o que permite que os clientes IPv6 entrem em contato com os servidores IPv4 usando UDP unicast, TCP ou ICMP. O comportamento do NAT-PT e do NAT64 parece semelhante, mas esses mecanismos são implementados de maneira diferente.
Quando o NAT64 com NAT persistente é implementado, o SIP ALG com suporte para IPv6 adiciona a tradução de NAT à tabela de ligação NAT persistente se o NAT estiver configurado no endereço de registro. Como o NAT persistente não pode duplicar o endereço configurado, a coexistência de NAT66 e NAT64 configuradas no mesmo endereço não é suportada.
Apenas uma vinculação é criada para o mesmo endereço IP de origem.
STUN e SIP ALG
Session Traversal Utilities for NAT (STUN) é uma solução para fazer o VoIP funcionar através de NAT e firewall.
Anteriormente, a STUN trabalhava sem o SIP ALG. Isso significa que o SIP ALG não estava envolvido quando o NAT persistente estava configurado.
O STUN pode coexistir com o SIP ALG e o SIP ALG está envolvido quando o NAT persistente está configurado.
Entender o suporte a chamadas SIP ALG que chegam usando o registrador SIP e o NAT
O registro do Protocolo de Iniciação de Sessão (SIP) oferece um recurso de descoberta pelo qual os servidores SIP e de localização podem identificar a localização ou os locais onde os usuários desejam ser contatados. Um usuário registra um ou mais locais de contato enviando uma mensagem DE REGISTRO ao registrador. Os campos de Entrada e Contato na mensagem REGISTER contêm o identificador de recursos uniformes (URI) de endereço de registro e uma ou mais URIs de contato, conforme mostrado na Figura 4. O registro cria vinculações em um serviço de localização que associa o endereço de registro com o endereço de contato ou endereços.
O dispositivo monitora mensagens DE REGISTRO de saída, executa a tradução de endereços de rede (NAT) nesses endereços e armazena as informações em uma tabela NAT de entrada. Em seguida, quando uma mensagem INVITE é recebida de fora da rede, o dispositivo usa a tabela NAT de entrada para identificar qual host interno roteia a mensagem INVITE. Você pode aproveitar o serviço de registro de proxy SIP para permitir chamadas recebidas configurando nat de origem da interface ou pools NAT na interface de saída do dispositivo. O NAT de origem da interface é adequado para lidar com chamadas recebidas em um escritório pequeno, enquanto recomendamos a criação de pools NAT de origem para redes maiores ou um ambiente empresarial.
O suporte a chamadas recebidas usando NAT de origem de interface ou um pool NAT de origem é suportado apenas para serviços SIP e H.323. Para chamadas recebidas, o Junos OS atualmente oferece suporte apenas a UDP e TCP. A resolução de nomes de domínio também não é suportada no momento; portanto, as URIs devem conter endereços IP, conforme mostrado na Figura 4.

Exemplo: definir a duração e os intervalos de chamada SIP ALG
Este exemplo mostra como definir a duração da chamada e o tempo de inatividade da mídia.
Requisitos
Antes de começar, revise a duração da chamada e os recursos de tempo limite usados para controlar a atividade de chamada SIP. Veja como entender a duração e os intervalos de chamada do SIP ALG.
Visão geral
A duração da chamada e os recursos de tempo limite de mídia de inatividade ajudam você a conservar recursos de rede e maximizar a taxa de transferência.
O maximum-call-duration
parâmetro define o tempo máximo permitido de uma chamada pode ser ativo. Quando a duração é superior, o SIP ALG derruba a chamada e libera as sessões de mídia. A configuração padrão é de 720 minutos, e o intervalo é de 3 a 720 minutos. Essa configuração também libera a largura de banda nos casos em que as chamadas não terminam corretamente.
O inactive-media-timeout
parâmetro indica que o tempo máximo (em segundos) de uma chamada pode permanecer ativo sem qualquer tráfego de mídia (RTP ou RTPC) em um grupo. Cada vez que um pacote RTP ou RTCP ocorre em uma chamada, esse tempo limite é reiniciado. Quando o período de inatividade excede essa configuração, as aberturas temporárias do SIP ALG (pinholes) para mídia no firewall são fechadas. A configuração padrão é de 120 segundos, e o intervalo é de 10 a 2550 segundos. Após o tempo limite, enquanto os recursos para mídia (sessões e pinholes) são removidos, a chamada não é encerrada.
Neste exemplo, a duração da chamada é definida para 36000 segundos e o tempo de inatividade da mídia é definido para 90 segundos.
Configuração
Procedimento
Configuração rápida da GUI
Procedimento passo a passo
Para definir a duração da chamada SIP ALG e o tempo limite de inatividade da mídia:
Selecione Configure >Security >ALG.
Selecione a guia SIP .
No campo de duração máxima da chamada, tipo
600
.No campo de tempo limite de mídia inativa, entre
90
.Clique em OK para verificar sua configuração e salvá-la como uma configuração de candidato.
Se você terminar de configurar o dispositivo, clique em Confirmar opções >Commit.
Procedimento passo a passo
Para definir a duração da chamada SIP ALG e o tempo limite de inatividade da mídia:
Configure a duração da chamada SIP ALG.
[edit] user@host# set security alg sip maximum-call-duration 600
Configure o tempo limite da mídia de inatividade SIP ALG.
[edit] user@host# set security alg sip inactive-media-timeout 90
Se você terminar de configurar o dispositivo, comprometa a configuração.
[edit] user@host# commit
Verificação
Para verificar se a configuração está funcionando corretamente, entre no show security alg sip
comando.
Exemplo: configurar a proteção contra ataques SIP ALG DoS
Este exemplo mostra como configurar o recurso de proteção contra ataques DoS.
Requisitos
Antes de começar, revise o recurso de proteção contra ataques DoS usado para controlar a atividade de chamadas SIP. Veja a compreensão da proteção contra ataques SIP ALG DoS.
Visão geral
A capacidade do servidor proxy SIP de processar chamadas pode ser impactada por solicitações de SIP INVITE repetidas — solicitações que o servidor inicialmente negou. O recurso de proteção do DoS permite configurar o dispositivo para monitorar as solicitações do INVITE e as respostas do servidor proxy a eles.
Neste exemplo, o dispositivo está configurado para proteger um único servidor proxy SIP (10.1.1.3) de solicitações de CONVITE repetidas às quais ele já foi negado serviço. Os pacotes são descartados por um período de 5 segundos, após o qual o dispositivo retoma o encaminhamento de solicitações de CONVITE dessas fontes.
Configuração
Procedimento
Configuração rápida da GUI
Procedimento passo a passo
Para configurar a proteção contra ataques SIP ALG DoS:
-
Selecione Configure>Security>ALG.
-
Selecione a guia SIP .
-
Na área de proteção contra ataques Enable, clique na opção servidores selecionados .
-
Na caixa IP de destino, entre e clique em
10.1.1.3
Adicionar. -
Clique em OK para verificar sua configuração e salvá-la como uma configuração de candidato.
-
Se você terminar de configurar o dispositivo, clique em Commit Options>Commit.
Procedimento passo a passo
Para configurar a proteção contra ataques SIP ALG DoS:
-
Configure o dispositivo para proteger um único servidor proxy SIP.
[edit] user@host# set security alg sip application-screen protect deny destination-ip 10.1.1.3
Nota:O IPv6 é suportado no SIP ALG, juntamente com o modo Network Address Translation Protocol Translation (NAT-PT) e a tradução de endereços NAT64.
O tipo de endereço ip de <destinação-ip> é alterado de endereço IPv4 para prefixo IP para suporte a todos os tipos de endereços IP, e correspondentemente um prefixo é suportado para permitir vários endereços IP.
-
Configure o dispositivo para negar o período de folga.
[edit] user@host# set security alg sip application-screen protect deny timeout 5
-
Se você terminar de configurar o dispositivo, comprometa a configuração.
[edit] user@host# commit
Verificação
Para verificar se a configuração está funcionando corretamente, entre no show security alg sip
comando.
Exemplo: permitir tipos desconhecidos de mensagens SIP ALG
Este exemplo mostra como permitir tipos de mensagens desconhecidos.
Requisitos
Antes de começar, analise como as mensagens SIP não identificadas são tratadas pelo dispositivo. Veja os tipos de mensagens desconhecidas SIP ALG.
Visão geral
Neste exemplo, você configura o dispositivo para permitir tipos de mensagem desconhecidos no tráfego SIP, tanto no modo NAT quanto no modo de rota. O padrão é soltar mensagens desconhecidas (sem suporte).
Configuração
Procedimento
Configuração rápida da GUI
Procedimento passo a passo
Para permitir tipos de mensagem SIP ALG desconhecidos:
Selecione Configure>Security>ALG.
Selecione a guia SIP .
Selecione a caixa de verificação aplicada Enable Permit NAT .
Selecione a caixa de seleção roteada Enable Permit .
Clique em OK para verificar sua configuração e salvá-la como uma configuração de candidato.
Se você terminar de configurar o dispositivo, clique em Commit Options>Commit.
Procedimento passo a passo
Para permitir tipos de mensagem SIP ALG desconhecidos:
Configure o dispositivo para permitir tipos de mensagem desconhecidos no tráfego SIP.
[edit] user@host# set security alg sip application-screen unknown-message permit-nat-applied permit-routed
Se você terminar de configurar o dispositivo, comprometa a configuração.
[edit] user@host# commit
Verificação
Para verificar se a configuração está funcionando corretamente, entre no show security alg sip
comando.
Exemplo: configurar o NAT de origem da interface para chamadas SIP que chegam
Este exemplo mostra como configurar uma regra NAT de origem em uma interface de zona pública, permitindo que o NAT seja usado para chamadas SIP recebidas.
Requisitos
Antes de começar, entenda como o NAT funciona com o SIP ALG. Veja como entender o SIP ALG e o NAT.
Visão geral
Em um cenário de duas zonas com o servidor proxy SIP em uma zona externa, você pode usar o NAT para chamadas recebidas configurando uma regra NAT de origem na interface na zona pública ou externa.
Neste exemplo (veja a Figura 5), o telefone1 está na interface ge-0/0/0 na zona privada, e o telefone 2 e o servidor proxy estão na interface ge-0/0/2 na zona pública. Você configura uma regra NAT de origem na interface pública ge-0/0/2.0.
Topologia
A Figura 5 mostra o NAT de origem para chamadas SIP recebidas.

Neste exemplo, depois de criar zonas chamadas privadas e públicas e atribuí-las a interfaces, você configura os livros de endereços a serem usados no conjunto de regras nat de origem. Em seguida, você configura o NAT de origem definindo um conjunto de regras chamado sip-phones e uma regra chamada phone1 que corresponde a quaisquer pacotes do endereço de origem 10.1.1.2/32.
Por fim, você cria políticas de segurança para permitir todo o tráfego SIP entre zonas privadas e públicas.
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente esta seção do exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com sua configuração de rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private address-book address phone1 10.1.1.2/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address proxy 172.16.1.3/32 set security zones security-zone public address-book address phone2 172.16.1.2/32 set security zones security-zone public interfaces ge-0/0/2.0 set security nat source rule-set sip-phones from zone private set security nat source rule-set sip-phones to zone public set security nat source rule-set sip-phones rule phone1 match source-address 10.1.1.2/32 set security nat source rule-set sip-phones rule phone1 then source-nat interface set security policies from-zone private to-zone public policy outgoing match source-address phone1 set security policies from-zone private to-zone public policy outgoing match destination-address phone2 set security policies from-zone private to-zone public policy outgoing match destination-address proxy set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match destination-address phone1 set security policies from-zone public to-zone private policy incoming match source-address proxy set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para obter instruções sobre como fazer isso, consulte o uso do editor de CLI no modo de configuração no guia de usuário da CLI.
Para configurar uma regra NAT de origem em uma interface de zona pública:
-
Configure interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
-
Configure zonas e atribua-as às interfaces.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Configure livros de endereços e crie endereços.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.2/32 user@host# set security-zone public address-book address proxy 172.16.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.2/32
-
Configure um conjunto de regras nat de origem.
[edit security nat source] user@host# set rule-set sip-phones from zone private user@host# set rule-set sip-phones to zone public user@host# set rule-set sip-phones rule phone1 match source-address 10.1.1.2/32 user@host# set rule-set sip-phones rule phone1 then source-nat interface
-
Habilite a tradução de NAT de origem persistente.
[edit security nat source] user@host# set address-persistent
-
Configure uma política de segurança para permitir o tráfego SIP de saída.
[edit security policies from-zone private to-zone public policy outgoing] user@host# set match source-address phone1 user@host# set match destination-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
-
Configure uma política de segurança para permitir o tráfego SIP de entrada.
[edit security policies from-zone public to-zone private policy incoming] user@host# set match source-address phone2 user@host# set match destination-address phone1 user@host# set match source-address proxy user@host# set match application junos-sip user@host# set then permit
Resultados
A partir do modo de configuração, confirme sua configuração entrando nosshow interfaces
, show security zones
show security policies
e show security nat
comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } }
[edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.2/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address proxy 172.16.1.3/32; address phone2 172.16.1.2/32; } interfaces { ge-0/0/2.0; } } [edit] user@host# show security nat source { rule-set sip-phones { from zone private; to zone public; rule phone1 { match { source-address 10.1.1.2/32; } then { source-nat { interface; } } } } } [edit] user@host# show security policies from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address [ phone2 proxy ]; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy incoming { match { source-address [ phone2 proxy ]; destination-address phone1 ; application junos-sip; } then { permit; } } }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Para confirmar se a configuração está funcionando corretamente, execute essas tarefas:
Verificando o uso das regras do NAT de origem
Propósito
Verifique se há tráfego que corresponda à regra NAT de origem.
Ação
Do modo operacional, entre no show security nat source rule all
comando. Veja a tradução em campo para verificar se o tráfego corresponde à regra.
user@host> show security nat source rule all source NAT rule: phone1 Rule-set: sip-phones Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 0.0.0.0 - 255.255.255.255 Destination port : 0 - 0 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 0 Successful sessions : 0 Failed sessions : 0 Number of sessions : 0
Significado
O Translation hits
campo mostra que não há tráfego que corresponda à regra NAT de origem.
Verificando o status do SIP ALG
Propósito
Verifique se o SIP ALG está habilitado em seu sistema.
Ação
Do modo operacional, entre no show security alg status
comando.
user@host> show security alg status ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Significado
A saída mostra o status DO SIP ALG da seguinte forma:
-
Habilitado — mostra que o SIP ALG está habilitado.
-
Desabilitado — mostra que o SIP ALG está desativado.
Exemplo: diminuindo a complexidade da rede configurando um pool NAT de origem para chamadas SIP de entrada
Este exemplo mostra como diminuir a complexidade da rede configurando um pool NAT de origem em uma interface externa para habilitar o NAT para chamadas SIP recebidas.
Requisitos
Antes de começar, entenda como o NAT funciona com o SIP ALG. Veja como entender o SIP ALG e o NAT.
Visão geral
Em um cenário de duas zonas com o servidor proxy SIP em uma zona externa ou pública, você pode usar o NAT para chamadas recebidas configurando um pool NAT na interface para a zona pública.
Neste exemplo (veja a Figura 6), o telefone1 está na zona privada, e o telefone 2 e o servidor proxy estão na zona pública. Você configura um pool NAT de origem para fazer NAT. Você também cria uma política que permite o tráfego SIP da zona privada para a zona pública. Isso permite que o telefone 1 na zona privada se registre no servidor proxy na zona pública, e também permite a entrada de chamadas da zona pública para a zona privada.
Topologia
A Figura 6 mostra o pool de NAT de origem para chamadas recebidas.

Neste exemplo, você configura o NAT de origem da seguinte forma:
-
Defina o pool NAT de origem chamado sip-nat-pool para conter a faixa de endereço IP de 172,16,1,20/32 a 172,16,1,40/32.
-
Crie um conjunto de regras nat de origem chamado sip-nat com uma regra sip-r1 para combinar pacotes da zona privada com a zona pública com o endereço IP de origem 10.1.1.3/24. Para pacotes correspondentes, o endereço de origem é traduzido para um dos endereços IP no sip-nat-pool.
-
Configure o ARP proxy para os endereços 172.16.1.20/32 a 172.16.1.40/32 na interface ge-0/0/2.0. Isso permite que o sistema responda às solicitações de ARP recebidas na interface desses endereços.
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente esta seção do exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com sua configuração de rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private address-book address phone1 10.1.1.3/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address proxy 172.16.1.3/32 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security zones security-zone public interfaces ge-0/0/2.0 set security nat source pool sip-nat-pool address 172.16.1.20/32 to 172.16.1.40/32 set security nat source address-persistent set security nat source rule-set sip-nat from zone private set security nat source rule-set sip-nat to zone public set security nat source rule-set sip-nat rule sip-r1 match source-address 10.1.1.3/24 set security nat source rule-set sip-nat rule sip-r1 then source-nat pool sip-nat-pool set security nat proxy-arp interface ge-0/0/2.0 address 172.16.1.20/32 to 172.16.1.40/32 set security policies from-zone private to-zone public policy outgoing match source-address phone1 set security policies from-zone private to-zone public policy outgoing match destination-address any set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match destination-address phone1 set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para obter instruções sobre como fazer isso, consulte o uso do editor de CLI no modo de configuração no guia de usuário da CLI.
Para configurar um pool NAT de origem para chamadas recebidas:
-
Configure interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
-
Configure zonas e atribua interfaces a elas.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Configure os livros de endereços.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.3/32 user@host# set security-zone public address-book address proxy 172.16.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32
-
Configure um pool NAT de origem.
[edit security nat] user@host# set source pool sip-nat-pool address 172.16.1.20/32 to 172.16.1.40/32
-
Configure um conjunto de regras NAT de origem com uma regra.
[edit security nat source rule-set sip-nat] user@host# set from zone private user@host# set to zone public user@host# set rule sip-r1 match source-address 10.1.1.3/24 user@host# set rule sip-r1 then source-nat pool sip-nat-pool
-
Habilite o NAT persistente.
[edit security nat] user@host# set source address-persistent
-
Configure o ARP proxy.
[edit security nat] user@host# set proxy-arp interface ge-0/0/2.0 address 172.16.1.20/32 to 172.16.1.40/32
-
Configure uma política de segurança para permitir o tráfego SIP de saída.
[edit security policies from-zone private to-zone public policy outgoing] set match source-address phone1 set match destination-address any set match application junos-sip set then permit
-
Configure uma política de segurança para permitir o tráfego SIP de entrada.
[edit security policies from-zone public to-zone private policy incoming] set match source-address phone2 set match destination-address phone1 set match application junos-sip set then permit
Resultados
A partir do modo de configuração, confirme sua configuração entrando nosshow interfaces
, show security zones
show security nat
e show security policies
comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } } [edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.3/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address proxy 172.16.1.3/32; address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } } user@host# show security nat source { pool sip-nat-pool { address { 172.16.1.20/32 to 172.16.1.40/32; } } address-persistent; rule-set sip-nat { from zone private; to zone public; rule sip-r1 { match { source-address 10.1.1.3/24; } then { source-nat { pool { sip-nat-pool; } } } } } } proxy-arp { interface ge-0/0/2.0 { address { 172.16.1.20/32 to 172.16.1.40/32; } } } [edit] user@host# show security policies from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address any; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address phone1; application junos-sip; } then { permit; } } }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Para confirmar se a configuração está funcionando corretamente, execute essas tarefas:
- Verificando o uso do pool NAT de origem
- Verificando o uso das regras do NAT de origem
- Verificando o status do SIP ALG
- Verificando as polícias de segurança do SIP ALG
Verificando o uso do pool NAT de origem
Propósito
Verifique se há tráfego usando endereços IP do pool NAT de origem.
Ação
Do modo operacional, entre no show security nat source pool all
comando.
user@host> show security nat source pool all
Total pools: 1 Pool name : sip-nat-pool Pool id : 4 Routing instance : default Host address base : 0.0.0.0 Port : [1024, 63487] port overloading : 1 Total addresses : 21 Translation hits : 0 Address range Single Ports Twin Ports 172.16.1.20 - 172.16.1.40 0 0
Significado
O Translation hits
campo mostra que não há tráfego usado por endereços IP do pool NAT de origem.
Verificando o uso das regras do NAT de origem
Propósito
Verifique se há tráfego que corresponda à regra NAT de origem.
Ação
Do modo operacional, entre no show security nat source rule all
comando.
user@host> show security nat source rule all
source NAT rule: sip-r1 Rule-set: sip-nat Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 0.0.0.0 - 255.255.255.255 Destination port : 0 - 0 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 0 Successful sessions : 0 Failed sessions : 0 Number of sessions : 0
Significado
O Translation hits
campo mostra que não há tráfego que corresponda à regra NAT de origem.
Verificando o status do SIP ALG
Propósito
Verifique se o SIP ALG está habilitado em seu sistema.
Ação
Do modo operacional, entre no show security alg status
comando.
user@host> show security alg status
ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Significado
A saída mostra o status DO SIP ALG da seguinte forma:
-
•Habilitado — mostra que o SIP ALG está habilitado.
-
• Desativado — mostra que o SIP ALG está desativado.
Verificando as polícias de segurança do SIP ALG
Propósito
Verifique se o NAT de origem entre a zona pública e a zona privada está definido.
Ação
Do modo operacional, entre no show security policies
comando.
user@host> show security policies
from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address any; application junos-sip; } then { permit; } } from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address phone1; application junos-sip; } then { permit; } }
Significado
A saída de amostra mostra que o NAT de origem entre a zona pública e a zona privada está definido.
Exemplo: configurar NAT estático para chamadas SIP que chegam
Este exemplo mostra como configurar um mapeamento NAT estático que permite que os chamadores na zona privada se registrem no servidor proxy na zona pública.
Requisitos
Antes de começar, entenda como o NAT funciona com o SIP ALG. Veja como entender o SIP ALG e o NAT.
Visão geral
Quando um servidor proxy SIP está localizado em uma zona externa ou pública, você pode configurar NAT estático na interface pública para permitir que os chamadores na zona privada se registrem no servidor proxy.
Neste exemplo (veja a Figura 7), o telefone1 está na interface ge-0/0/0 na zona privada, e o telefone 2 e o servidor proxy estão na interface ge-0/0/2 na zona pública. Você cria um conjunto de regras de NAT estático chamado de entrada com uma regra chamada phone1 para combinar pacotes da zona pública com o endereço de destino 172.16.1.3/32. Para pacotes correspondentes, o endereço IP de destino é traduzido para o endereço privado 10.1.1.3/32. Você também cria um ARP proxy para o endereço 172.16.1.3/32 na interface ge-0/0/2.0. Isso permite que o sistema responda às solicitações de ARP recebidas na interface desses endereços. Por fim, você cria uma política de segurança chamada de entrada que permite o tráfego SIP da zona pública até a zona privada.
Ao configurar NAT estático para chamadas SIP recebidas, certifique-se de configurar um endereço público para cada endereço privado na zona privada.
Topologia
A Figura 7 mostra NAT estático para chamadas recebidas.

Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente esta seção do exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com sua configuração de rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone private address-book address phone1 10.1.1.5/32 set security zones security-zone public interfaces ge-0/0/2.0 set security zones security-zone public address-book address proxy 172.16.1.3/32 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security nat static rule-set incoming-sip from zone public set security nat static rule-set incoming-sip rule phone1 match destination-address 172.16.1.3/32 set security nat static rule-set incoming-sip rule phone1 then static-nat prefix 10.1.1.3/32 set security nat proxy-arp interface ge-0/0/2.0 address 172.16.1.3/32 set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match source-address proxy set security policies from-zone public to-zone private policy incoming match destination-address phone1 set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit set security policies from-zone private to-zone public policy outgoing match source-address phone1 set security policies from-zone private to-zone public policy outgoing match destination-address phone2 set security policies from-zone private to-zone public policy outgoing match destination-address proxy set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para obter instruções sobre como fazer isso, consulte o uso do editor de CLI no modo de configuração no guia de usuário da CLI.
Para configurar NAT estático para chamadas recebidas:
-
Configure interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
-
Crie zonas de segurança.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Atribua endereços às zonas de segurança.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.5/32 user@host# set security-zone public address-book address proxy 172.16.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32
-
Crie um conjunto de regras NAT estáticas com uma regra.
[edit security nat static rule-set incoming-sip] user@host# set from zone public user@host# set rule phone1 match destination-address 172.16.1.3/32 user@host# set rule phone1 then static-nat prefix 10.1.1.3/32
-
Configure o ARP proxy.
[edit security nat] user@host# set proxy-arp interface ge-0/0/2.0 address 172.16.1.3/32
-
Defina uma política de segurança para permitir o tráfego SIP de entrada.
[edit security policies from-zone public to-zone private policy incoming] user@host# set match source-address phone2 user@host# set match source-address proxy user@host# set match destination-address phone1 user@host# set match application junos-sip user@host# set then permit
-
Defina uma política de segurança para permitir o tráfego SIP de saída.
[edit security policies from-zone private to-zone public policy outgoing] user@host# set match source-address phone1 user@host# set match destination-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Resultados
A partir do modo de configuração, confirme sua configuração entrando nosshow interfaces
, show security zones
show security nat
e show security policies
comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } }
[edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.5/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address proxy 172.16.1.3/32; address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } }
[edit] user@host# show security nat static { rule-set incoming-sip { from zone public; rule phone1 { match { destination-address 172.16.1.3/32; } then { static-nat prefix 10.1.1.3/32; } } } } proxy-arp { interface ge-0/0/2.0 { address { 172.16.1.3/32; } } }
[edit] user@host# show security policies from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address phone1; application junos-sip; } then { permit; } } } from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address [phone2 proxy]; application junos-sip; } then { permit; } } }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Para confirmar se a configuração está funcionando corretamente, execute essas tarefas:
- Verificando a configuração do NAT estático
- Verificando o status do SIP ALG
- Verificando as polícias de segurança do SIP ALG
Verificando a configuração do NAT estático
Propósito
Verifique se há tráfego que corresponda ao conjunto de regras de NAT estático.
Ação
Do modo operacional, entre no show security nat static rule all
comando.
user@host> show security nat static rule all
Static NAT rule: phone1 Rule-set: incoming-sip Rule-Id : 1 Rule position : 1 From zone : public Destination addresses : 172.16.1.3 Host addresses : 172.16.1.4 Netmask : 24 Host routing-instance : N/A Translation hits : 4 Successful sessions : 4 Failed sessions : 0 Number of sessions : 4
Significado
O Translation hits
campo mostra que há tráfego que combina com o conjunto de regras nat estáticas.
Verificando o status do SIP ALG
Propósito
Verifique se o SIP ALG está habilitado em seu sistema.
Ação
Do modo operacional, entre no show security alg status
comando.
user@host> show security alg status
ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Significado
A saída mostra o status DO SIP ALG da seguinte forma:
-
•Habilitado — mostra que o SIP ALG está habilitado.
-
• Desativado — mostra que o SIP ALG está desativado.
Verificando as polícias de segurança do SIP ALG
Propósito
Verifique se o NAT estático entre a zona pública e a zona privada está definido.
Ação
Do modo operacional, entre no show security policies
comando.
user@host> show security policies
from-zone public to-zone private { policy incoming { match { source-address [ phone2 proxy ]; destination-address phone1; application junos-sip; } then { permit; } } } from-zone private to-zone public { policy outgoing { match { source-address phone1; destination-address [ phone2 proxy ]; application junos-sip; } then { permit; } } }
Significado
A saída de amostra mostra que o NAT estático entre a zona pública e a zona privada está definido.
Exemplo: configurar o proxy SIP na zona privada e NAT na zona pública
Este exemplo mostra como configurar um servidor proxy SIP em uma zona privada e NAT estático em uma zona pública para permitir que os chamadores na zona pública se registrem no servidor proxy.
Requisitos
Antes de começar, entenda como o NAT funciona com o SIP ALG. Veja como entender o SIP ALG e o NAT.
Visão geral
Com o servidor proxy SIP na zona privada, você pode configurar NAT estático na interface externa ou pública para permitir que os chamadores na zona pública se registrem no servidor proxy.
Neste exemplo (veja a Figura 8), o telefone 1 e o servidor proxy SIP estão na interface ge-0/0/0 na zona privada, e o telefone2 está na interface ge-0/0/2 na zona pública. Você configura uma regra NAT estática para o servidor proxy para permitir que o phone2 se registre no servidor proxy e, em seguida, crie uma política chamada de saída que permite que o tráfego SIP do público para a zona privada permita que os chamadores na zona pública se registrem no servidor proxy. Você também configura uma política chamada de entrada do privado para a zona pública para permitir que o telefone 1 ligue para fora.
Topologia
A Figura 8 mostra a configuração de proxy SIP na zona privada e NAT em uma zona pública.

Neste exemplo, você configura o NAT da seguinte forma:
-
Configure NAT estático na interface ge-0/0/2 para o servidor proxy com um conjunto de regras chamado incoming-sip com uma regra chamada proxy para combinar pacotes da zona pública com o endereço de destino 172.16.1.2/32. Para pacotes correspondentes, o endereço IP de destino é traduzido para o endereço privado 10.1.1.5/32.
-
Configure um segundo conjunto de regras chamado sip-phones com uma regra chamada phone1 para habilitar o NAT de interface para comunicação do telefone1 ao telefone2.
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente esta seção do exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com sua configuração de rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set interfaces ge-0/0/2 unit 0 proxy-arp set security zones security-zone private address-book address phone1 10.1.1.3/32 set security zones security-zone private address-book address proxy 10.1.1.5/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security zones security-zone public interfaces ge-0/0/2.0 set security nat source rule-set sip-phones from zone private set security nat source rule-set sip-phones to zone public set security nat source rule-set sip-phones rule phone1 match source-address 10.1.1.3/32 set security nat source rule-set sip-phones rule phone1 then source-nat interface set security nat static rule-set incoming-sip from zone public set security nat static rule-set incoming-sip rule proxy match destination-address 172.16.1.2/32 set security nat static rule-set incoming-sip rule proxy then static-nat prefix 10.1.1.5/32 set security nat proxy-arp interface ge-0/0/2.0 address 172.16.1.2/32 set security policies from-zone private to-zone public policy outgoing match source-address any set security policies from-zone private to-zone public policy outgoing match destination-address phone2 set security policies from-zone private to-zone public policy outgoing match application junos-sip set security policies from-zone private to-zone public policy outgoing then permit set security policies from-zone public to-zone private policy incoming match source-address phone2 set security policies from-zone public to-zone private policy incoming match destination-address proxy set security policies from-zone public to-zone private policy incoming match application junos-sip set security policies from-zone public to-zone private policy incoming then permit
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para obter instruções sobre como fazer isso, consulte o uso do editor de CLI no modo de configuração no guia de usuário da CLI.
Para configurar NAT estático para chamadas recebidas:
-
Configure interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 user@host# set interfaces ge-0/0/2 unit 0 proxy-arp
-
Configure zonas de segurança.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0
-
Atribua endereços às zonas de segurança.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.3/32 user@host# set security-zone private address-book address proxy 10.1.1.5/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32
-
Crie um conjunto de regras para NAT estático e atribua uma regra a ela.
[edit security nat static rule-set incoming-sip] user@host# set from zone public user@host# set rule proxy match destination-address 172.16.1.2/32 user@host# set rule proxy then static-nat prefix 10.1.1.5/32
-
Configure o proxy-arp para o endereço 172.16.1.2/32.
[edit security nat] user@host# proxy-arp interface ge-0/0/2.0 address 172.16.1.2/32
-
Configure o segundo conjunto de regras e atribua uma regra a ela.
[edit security nat source rule-set sip-phones] user@host# set from zone private user@host# set to zone public user@host# set rule phone1 match source-address 10.1.1.3/32 user@host# set rule phone1 then source-nat interface
-
Configure uma política de segurança para tráfego de saída.
[edit security policies from-zone private to-zone public policy outgoing] user@host# set match source-address any user@host# set match destination-address phone2 user@host# set match application junos-sip user@host# set then permit
-
Configure uma política de segurança para tráfego de entrada.
[edit security policies from-zone public to-zone private policy incoming] user@host# set match source-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Resultados
A partir do modo de configuração, confirme sua configuração entrando nosshow interfaces
, show security zones
show security nat
e show security policies
comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/2 { unit 0 { proxy-arp; family inet { address 172.16.1.1/24; } } } [edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.3/32; address proxy 10.1.1.5/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } } [edit] user@host# show security nat source { rule-set sip-phones { from zone private; to zone public; rule phone1 { match { source-address 10.1.1.3/32; } then { source-nat { interface; } } } } } static { rule-set incoming-sip { from zone public; rule proxy { match { destination-address 172.16.1.2/32; } then { static-nat prefix 10.1.1.5/32; } } } proxy-arp { interface ge-0/0/2.0 { address { 172.16.1.2/32; } } } } [edit] user@host# show security policies from-zone private to-zone public { policy outgoing { match { source-address any; destination-address phone2; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy incoming { match { source-address phone2; destination-address proxy; application junos-sip; } then { permit; } } }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Para confirmar se a configuração está funcionando corretamente, execute essas tarefas:
- Verificando a configuração do NAT estático
- Verificando o status do SIP ALG
- Verificando a regra do NAT de origem
- Verificando a sessão de fluxo de segurança
Verificando a configuração do NAT estático
Propósito
Verifique se há tráfego que corresponda ao conjunto de regras de NAT estático.
Ação
Do modo operacional, entre no show security nat static rule all
comando. Veja a tradução em campo para verificar se o tráfego corresponde à regra.
user@host> show security nat static rule all Total static-nat rules: 1 Total referenced IPv4/IPv6 ip-prefixes: 2/0 Static NAT rule: proxy Rule-set: incoming-sip Rule-Id : 2 Rule position : 1 From zone : public Destination addresses : 172.16.1.2 Host addresses : 10.1.1.5 Netmask : 32 Host routing-instance : N/A Translation hits : 23 Successful sessions : 23 Failed sessions : 0 Number of sessions : 0
Significado
O Translation hits
campo mostra que existem 23 tráfegos correspondentes à regra NAT estática.
Verificando o status do SIP ALG
Propósito
Verifique se o SIP ALG está habilitado em seu sistema.
Ação
Do modo operacional, entre no show security alg status
comando.
user@host> show security alg status ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Significado
A saída mostra o status DO SIP ALG da seguinte forma:
-
Habilitado — mostra que o SIP ALG está habilitado.
-
Desabilitado — mostra que o SIP ALG está desativado.
Verificando a regra do NAT de origem
Propósito
Verifique se a configuração de regra nat de origem.
Ação
Do modo operacional, entre no show security nat source rule all
comando.
user@host> show security nat source rule all Total referenced IPv4/IPv6 ip-prefixes: 1/0 source NAT rule: phone1 Rule-set: sip-phones Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 10.1.1.3 - 10.1.1.3 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 88 Successful sessions : 88 Failed sessions : 0 Number of sessions : 0
Significado
O Translation hits
campo mostra que existem 88 tráfegos correspondentes à regra NAT de origem.
Verificando a sessão de fluxo de segurança
Propósito
Verifique se a tradução do NAT telefone1 para telefone2.
Ação
Do modo operacional, entre no run show security flow session
comando.
user@host> run show security flow session Session ID: 169, Policy name: allow-all/4, Timeout: 2, Valid In: 10.1.1.3/4 --> 172.16.1.4/52517;icmp, Conn Tag: 0x0, If: ge-0/0/0.0, Pkts: 1, Bytes: 84, Out: 172.16.1.4/52517 --> 172.16.1.1/25821;icmp, Conn Tag: 0x0, If: ge-0/0/1.0, Pkts: 1, Bytes: 84,
Significado
A saída exibe a tradução de NAT de telefone1 para telefone2.
Exemplo: configurar um cenário SIP ALG e NAT de três zonas
Este exemplo mostra como configurar um servidor proxy SIP em uma zona privada e NAT estático em uma zona pública para permitir que os chamadores na zona pública se registrem no servidor proxy.
Requisitos
Antes de começar, entenda como o NAT funciona com o SIP ALG. Veja como entender o SIP ALG e o NAT.
Visão geral
Em uma configuração SIP de três zonas, o servidor proxy SIP normalmente está em uma zona diferente dos chamados e chamados sistemas. Esse cenário requer configuração e políticas adicionais de endereço e zona para garantir que todos os sistemas tenham acesso uns aos outros e ao servidor proxy.
Neste exemplo, o telefone1 está na interface ge-0/0/0.0 na zona privada, o telefone2 está na interface ge-0/0/2.0 na zona pública, e o servidor proxy está na interface ge-0/0/1.0 na DMZ. Você configura a regra NAT estática para telefone1 na zona privada. Em seguida, você cria políticas para o tráfego que atravessa da zona privada para a DMZ e da DMZ para a zona privada, da zona pública ao DMZ e da DMZ para a zona pública, e da zona privada para a zona pública. As setas na Figura 9 mostram o fluxo de tráfego de sinalização SIP quando o telefone2 na zona pública coloca uma chamada para o telefone 1 na zona privada. Após o início da sessão, os dados fluem diretamente entre o telefone1 e o telefone2.

Neste exemplo, você configura o NAT da seguinte forma:
Configure um conjunto de regras NAT estática chamada de entrada com uma regra telefônica1 para combinar pacotes da zona pública com o endereço de destino 10.1.2.3/32. Para pacotes correspondentes, o endereço IP de destino é traduzido para o endereço privado 10.1.1.3/32.
Configure o ARP proxy para o endereço 10.1.2.3/32 na interface ge-0/0/1.0, permitindo que o sistema responda às solicitações de ARP recebidas na interface para este endereço.
Configure um segundo conjunto de regras chamado sip-phones com uma regra r1 para permitir a interface NAT para comunicação do telefone1 ao servidor proxy e do telefone1 ao telefone2.
Configuração
Procedimento
Configuração rápida da CLI
Para configurar rapidamente esta seção do exemplo, copie os seguintes comandos, cole-os em um arquivo de texto, remova quaisquer quebras de linha, altere todos os detalhes necessários para combinar com sua configuração de rede, copiar e colar os comandos na CLI no nível de [edit]
hierarquia e, em seguida, entrar no commit
modo de configuração.
set security nat static rule-set sip-phone from zone private set security nat static rule-set sip-phone from zone public set security nat static rule-set sip-phone rule phone1 match destination-address 10.1.2.3/32 set security nat static rule-set sip-phone rule phone1 then static-nat prefix 10.1.1.3/32 set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 set interfaces ge-0/0/1 unit 0 family inet address 10.1.2.2/24 set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24 set security zones security-zone private address-book address phone1 10.1.1.3/32 set security zones security-zone private interfaces ge-0/0/0.0 set security zones security-zone public address-book address phone2 172.16.1.4/32 set security zones security-zone public interfaces ge-0/0/2.0 set security zones security-zone dmz address-book address proxy 10.1.2.4/32 set security zones security-zone dmz interfaces ge-0/0/1.0 set security nat source rule-set sip-phones from zone private set security nat source rule-set sip-phones to zone dmz set security nat source rule-set sip-phones rule r1 match source-address 10.1.1.3/32 set security nat source rule-set sip-phones rule r1 then source-nat interface set security policies from-zone private to-zone dmz policy private-to-proxy match source-address phone1 set security policies from-zone private to-zone dmz policy private-to-proxy match destination-address proxy set security policies from-zone private to-zone dmz policy private-to-proxy match application junos-sip set security policies from-zone private to-zone dmz policy private-to-proxy then permit set security policies from-zone public to-zone dmz policy public-to-proxy match source-address phone2 set security policies from-zone public to-zone dmz policy public-to-proxy match destination-address proxy set security policies from-zone public to-zone dmz policy public-to-proxy match application junos-sip set security policies from-zone public to-zone dmz policy public-to-proxy then permit set security policies from-zone public to-zone private policy public-to-private match source-address phone2 set security policies from-zone public to-zone private policy public-to-private match destination-address phone1 set security policies from-zone public to-zone private policy public-to-private match application junos-sip set security policies from-zone public to-zone private policy public-to-private then permit set security policies from-zone private to-zone public policy private-to-public match source-address phone1 set security policies from-zone private to-zone public policy private-to-public match destination-address phone2 set security policies from-zone private to-zone public policy private-to-public match application junos-sip set security policies from-zone private to-zone public policy private-to-public then permit set security policies from-zone dmz to-zone private policy proxy-to-private match source-address proxy set security policies from-zone dmz to-zone private policy proxy-to-private match destination-address phone1 set security policies from-zone dmz to-zone private policy proxy-to-private match application junos-sip set security policies from-zone dmz to-zone private policy proxy-to-private then permit set security policies from-zone dmz to-zone public policy proxy-to-public match source-address proxy set security policies from-zone dmz to-zone public policy proxy-to-public match destination-address phone2 set security policies from-zone dmz to-zone public policy proxy-to-public match application junos-sip set security policies from-zone dmz to-zone public policy proxy-to-public then permit
Procedimento passo a passo
O exemplo a seguir exige que você navegue por vários níveis na hierarquia de configuração. Para obter instruções sobre como fazer isso, consulte o uso do editor de CLI no modo de configuração no guia de usuário da CLI.
Para configurar um servidor proxy SIP em uma zona privada e NAT estático em uma zona pública:
Crie um conjunto de regras para NAT estático e atribua uma regra a ela.
[edit security nat static rule-set] user@host# sip-phone from zone private user@host# sip-phone from zone public user@host# sip-phone rule phone1 match destination-address 10.1.2.3/32 user@host# phone1 then static-nat prefix 10.1.1.3/32
Configure interfaces.
[edit] user@host# set interfaces ge-0/0/0 unit 0 family inet address 10.1.1.1/24 user@host# set interfaces ge-0/0/1 unit 0 family inet address 10.1.2.2/24 user@host# set interfaces ge-0/0/2 unit 0 family inet address 172.16.1.1/24
Configure zonas de segurança.
[edit security zones] user@host# set security-zone private interfaces ge-0/0/0.0 user@host# set security-zone public interfaces ge-0/0/2.0 user@host# set security-zone dmz interfaces ge-0/0/1.0
Atribua endereços às zonas de segurança.
[edit security zones] user@host# set security-zone private address-book address phone1 10.1.1.3/32 user@host# set security-zone public address-book address phone2 172.16.1.4/32 user@host# set security-zone dmz address-book address proxy 10.1.2.4/32
Configure o NAT de interface para comunicação do telefone1 ao proxy.
[edit security nat source rule-set sip-phones] user@host# set from zone private user@host# set to zone dmz user@host# set rule r1 match source-address 10.1.1.3/32 user@host# set rule r1 then source-nat interface
Configure uma política de segurança para permitir o tráfego da zona privada à zona DMZ.
[edit security policies from-zone private to-zone dmz policy private-to-proxy] user@host# set match source-address phone1 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Configure uma política de segurança para permitir o tráfego da zona pública à zona DMZ.
[edit security policies from-zone public to-zone dmz policy public-to-proxy] user@host# set match source-address phone2 user@host# set match destination-address proxy user@host# set match application junos-sip user@host# set then permit
Configure uma política de segurança para permitir o tráfego de zona privada para zona pública.
[edit security policies from-zone private to-zone public policy private-to-public] user@host# set match source-address phone1 user@host# set match destination-address phone2 user@host# set match application junos-sip user@host# set then permit
Configure uma política de segurança para permitir o tráfego da zona pública à zona privada.
[edit security policies from-zone public to-zone private policy public-to-private] user@host# set match source-address phone2 user@host# set match destination-address phone1 user@host# set match application junos-sip user@host# set then permit
Configure uma política de segurança para permitir o tráfego da zona DMZ para a zona privada.
[edit security policies from-zone dmz to-zone private policy proxy-to-private] user@host# set match source-address proxy user@host# set match destination-address phone1 user@host# set match application junos-sip user@host# set then permit
Configure uma política de segurança para permitir que o tráfego da zona DMZ para a zona pública.
[edit security policies from-zone dmz to-zone public policy proxy-to-public] user@host# set match source-address proxy user@host# set match destination-address phone2 user@host# set match application junos-sip user@host# set then permit
Resultados
A partir do modo de configuração, confirme sua configuração entrando nosshow interfaces
, show security zones
show security nat
e show security policies
comandos. Se a saída não exibir a configuração pretendida, repita as instruções de configuração neste exemplo para corrigi-la.
[edit] user@host# show interfaces ge-0/0/0 { unit 0 { family inet { address 10.1.1.1/24; } } } ge-0/0/1 { unit 0 { family inet { address 10.1.2.2/24; } } } ge-0/0/2 { unit 0 { family inet { address 172.16.1.1/24; } } }
[edit] user@host# show security zones security-zone private { address-book { address phone1 10.1.1.3/32; } interfaces { ge-0/0/0.0; } } security-zone public { address-book { address phone2 172.16.1.4/32; } interfaces { ge-0/0/2.0; } } security-zone dmz { address-book { address proxy 10.1.2.4/32; } interfaces { ge-0/0/1.0; } }
[edit] user@host# show security nat static { rule-set sip-phone { from zone [ private public ]; rule phone1 { match { destination-address 10.1.2.3/32; } then { static-nat { prefix { 10.1.1.3/32; } } } } } } source { rule-set sip-phones { from zone private; to zone dmz; rule r1 { match { source-address 10.1.1.3/32; } then { source-nat { interface; } } } } } proxy-arp { interface ge-0/0/1.0 { address { 10.1.2.3/32; } } }
[edit] user@host# show security policies from-zone private to-zone dmz { policy private-to-proxy { match { source-address phone1; destination-address proxy; application junos-sip; } then { permit; } } } from-zone public to-zone dmz { policy public-to-proxy { match { source-address phone2; destination-address proxy; application junos-sip; } then { permit; } } } from-zone public to-zone private { policy public-to-private { match { source-address phone2; destination-address phone1; } then { permit; } } } from-zone private to-zone public { policy private to-zone public { match { source-address phone1; destination-address phone2; } then { permit; } } } from-zone dmz to-zone private { policy proxy-to-private { match { source-address proxy; destination-address phone2; application junos-sip; } then { permit; } } }
Se você terminar de configurar o dispositivo, entre no commit
modo de configuração.
Verificação
Para confirmar se a configuração está funcionando corretamente, execute essas tarefas:
- Verificando o uso das regras do NAT de origem
- Verificando o uso de regras de NAT estáticas
- Verificando o status do SIP ALG
Verificando o uso das regras do NAT de origem
Propósito
Verifique se há tráfego que corresponda à regra NAT de origem.
Ação
Do modo operacional, entre no show security nat source rule all
comando. Veja a tradução em campo para verificar se o tráfego corresponde à regra.
user@host> show security nat source rule all source NAT rule: r1 Rule-set: sip-phones Rule-Id : 1 Rule position : 1 From zone : private To zone : public Match Source addresses : 0.0.0.0 - 255.255.255.255 Destination port : 0 - 0 Action : interface Persistent NAT type : N/A Persistent NAT mapping type : address-port-mapping Inactivity timeout : 0 Max session number : 0 Translation hits : 0 Successful sessions : 0 Failed sessions : 0 Number of sessions : 0
Significado
Isso Translation hits field
mostra que não há tráfego que corresponda à regra nat de origem.
Verificando o uso de regras de NAT estáticas
Propósito
Verifique se há tráfego que corresponda à regra NAT estática.
Ação
Do modo operacional, entre no show security nat static rule all
comando. Veja a tradução em campo para verificar se o tráfego corresponde à regra.
user@host> show security nat static rule all Total static-nat rules: 1 Total referenced IPv4/IPv6 ip-prefixes: 2/0 Static NAT rule: phone1 Rule-set: sip-phone Rule-Id : 1 Rule position : 1 From zone : private : public Destination addresses : 10.1.2.3 Host addresses : 10.1.2.4 Netmask : 32 Host routing-instance : N/A Translation hits : 127 Successful sessions : 127 Failed sessions : 0 Number of sessions : 0
Significado
O Translation hits
campo mostra que o tráfego que combina com a regra NAT estática.
Verificando o status do SIP ALG
Propósito
Verifique se o SIP ALG está habilitado em seu sistema.
Ação
Do modo operacional, entre no show security alg status
comando.
user@host> show security alg status ALG Status : DNS : Enabled FTP : Enabled H323 : Disabled MGCP : Disabled MSRPC : Enabled PPTP : Enabled RSH : Disabled RTSP : Disabled SCCP : Disabled SIP : Enabled SQL : Enabled SUNRPC : Enabled TALK : Enabled TFTP : Enabled IKE-ESP : Disabled
Significado
A saída mostra o status DO SIP ALG da seguinte forma:
Habilitado — mostra que o SIP ALG está habilitado.
Desabilitado — mostra que o SIP ALG está desativado.