Introdução
Este documento descreve como configurar Políticas de Proxy no AS BW, para proxy de cabeçalhos SIP desconhecidos ou parâmetros Requer/Suportado.
Pré-requisitos
- conhecimento básico do Session Initiation Protocol (SIP)
- Conhecimento básico do servidor de aplicativos (AS)
- Conhecimento básico da Bwcli Broadworks (BW)
Requisitos
A Cisco recomenda que você tenha conhecimento destes tópicos:
- Ser capaz de usar o AS bwcli como um usuário administrador
- Ser capaz de revisar os AS XSLogs
- Gere um INVITE (através de um cliente ou simulador) que permita configurar Cabeçalhos e Parâmetros Obrigatórios/Suportados.
Componentes Utilizados
As informações neste documento são baseadas nestas versões de software e hardware:
As informações neste documento foram criadas a partir de dispositivos em um ambiente de laboratório específico. Todos os dispositivos utilizados neste documento foram iniciados com uma configuração (padrão) inicial. Se a rede estiver ativa, certifique-se de que você entenda o impacto potencial de qualquer comando.
Informações de Apoio
Como um Agente de Usuário Back-to-Back (B2BUA), o AS normalmente não faz proxy de Cabeçalhos SIP ou parâmetros nos cabeçalhos Obrigatório e Suportado, se eles forem considerados desconhecidos.
Por exemplo, se o AS receber esse CONVITE SIP, ele descartará todo o cabeçalho MyUnknownHeader e o parâmetro MyUnknownParameter no cabeçalho Suportado.
INVITE sip:+1555123456@cisco.com;user=phone SIP/2.0
Via: SIP/2.0/TCP 10.1.2.3:5060;branch=z9hG4bKva8in830cgv4i2mj6m20.1
Max-Forwards: 69
To: <sip:+1555123456@cisco.com;user=phone>
From: <sip:+1555654321@cisco.com;user=phone>;tag=SDq4k7b01-1
Contact: <sip:+155565432@172.16.0.1:5060;transport=tcp>
Call-ID: Testcall-456000001
CSeq: 101 INVITE
Supported: 100rel,MyUnknownParameter
MyUnknownHeader: MyStuff
Allow: INVITE, OPTIONS, BYE, CANCEL, ACK, PRACK, UPDATE, REFER, SUBSCRIBE, NOTIFY, INFO, REGISTER
Content-Length: 0
As configurações de ProxyPolicy no AS permitem configurar cabeçalhos e parâmetros desconhecidos para que o AS aplique o proxy de forma transparente.
O Cisco BroadWorks SIP Access Interface Interworking Guide contém uma lista de cabeçalhos e parâmetros conhecidos, que nunca podem ser colocados em proxy de forma transparente, à medida que o AS os processa.
Os cabeçalhos e parâmetros conhecidos são processados e podem ou não ser colocados em proxy (dependendo do resultado do processamento de AS), e não podem ser controlados com a configuração explicada neste artigo.
Configurar
Todas as configurações necessárias para o ProxyPolicy podem ser encontradas no bwcli em AS_CLI/Interface/SIP/ProxyPolicy>.
Para permitir que o AS crie proxy para o cabeçalho MyUnknownHeader, primeiro navegue para AS_CLI/Interface/SIP/ProxyPolicy/Rule> a partir do AS bwcli e adicione uma nova regra:
AS_CLI> cd /Interface/SIP/ProxyPolicy/Rule
AS_CLI/Interface/SIP/ProxyPolicy/Rule> add MyUnknownHeaderRule true true true true true true true true
...Done
Execute o comando get para mostrar a configuração atual.
A configuração agora se parece com isso (devido às muitas opções, a largura da saída desse comando é muito grande; rolar horizontalmente para visualizá-la completamente):
AS_CLI/Interface/SIP/ProxyPolicy/Rule> get
Rule Name Keep On Redirection Keep On Egress Access Keep On Egress Network On-net Keep On Egress Network Off-net Keep On Egress Access Shared Call Appearance Keep On Egress Network BroadWorks Anywhere On-net Keep On Egress Network BroadWorks Anywhere Off-net Accept From Redirect-to URI
============================================================================================================================================================================================================================================================================================================
MyUnknownHeaderRule true true true true true true true true
Depois que isso for concluído, você deverá criar a HeaderPolicy. Navegue até AS_CLI/Interface/SIP/ProxyPolicy/HeaderPolicy> e execute este comando:
AS_CLI/Interface/SIP/ProxyPolicy/HeaderPolicy> add MyUnknownHeader MyUnknownHeaderRule
...Done
Neste exemplo, a regra foi configurada para preservar o cabeçalho em todas as direções, para todos os serviços e em uris de redirecionamento, mas essa configuração depende de seu caso real.
As opções disponíveis são explicadas nesta lista:
- keepOnRedirection: Esse parâmetro determina se o cabeçalho será mantido no caso de um redirecionamento.
- keepOnEgressAccess: Esse parâmetro determina se o cabeçalho é mantido para mensagens de saída para o lado do acesso.
- keepOnEgressNetworkOnNet: Esse parâmetro determina se o cabeçalho é propagado para mensagens de saída na rede ligadas à rede.
- manterSaídaRedeDesativadaRede: Esse parâmetro determina se o cabeçalho é propagado para mensagens de saída fora da rede vinculadas à rede.
- KeepOnEgressAccessSharedCallAppearance: Esse parâmetro determina se o cabeçalho é mantido para mensagens de saída em um local secundário de Aparência de chamada compartilhada.
- KeepOnEgressNetworkBroadWorksAnywhereOnNet: Este parâmetro determina se o cabeçalho é mantido para mensagens de saída na rede para um local do BroadWorks Anywhere.
- keepOnEgressNetworkBroadWorksAnywhereOffNet: Esse parâmetro determina se o cabeçalho é mantido para mensagens fora da rede de saída para um local do BroadWorks Anywhere.
- aceitarDeRedirecionarParaURI: Esse parâmetro determina se um cabeçalho desconhecido inserido em um URI de destino de redirecionamento pode ser aceito para inserção em uma mensagem de saída.
O parâmetro desconhecido pode ser configurado da mesma forma, mas o parâmetro é configurado em AS_CLI/Interface/SIP/ProxyPolicy/OptionTagPolicy> .
Primeiro, crie uma regra.
Note: Para este exemplo, o primeiro switch é definido como false.
AS_CLI/Interface/SIP/ProxyPolicy/Rule> add MyUnknownParameterRule false true true true true true true true
Essa é a regra resultante, com Keep On Redirection definido como false, para que MyUnknownHeader não seja adicionado ao INVITE de saída em caso de redirecionamentos.
AS_CLI/Interface/SIP/ProxyPolicy/Rule> get
Rule Name Keep On Redirection Keep On Egress Access Keep On Egress Network On-net Keep On Egress Network Off-net Keep On Egress Access Shared Call Appearance Keep On Egress Network BroadWorks Anywhere On-net Keep On Egress Network BroadWorks Anywhere Off-net Accept From Redirect-to URI
===================================================================================================================================================================================================================================================================================================================
MyUnknownHeaderRule true true true true true true true true
MyUnknownParameterRule false true true true true true true true
Para concluir a configuração, adicione OptionTagPolicy.
AS_CLI/Interface/SIP/ProxyPolicy/OptionTagPolicy> add MyUnknownParameter MyUnknownParameterRule
O AS agora faz proxy do cabeçalho desconhecido MyUnknownHeader e do parâmetro desconhecido MyUnknownParameter.
Note: O AS não entende a semântica nem processa de forma alguma os cabeçalhos e parâmetros desconhecidos.
Verificar
Envie ao AS o CONVITE contendo o cabeçalho SIP desconhecido e a tag de opção que você configurou na Política de Proxy e verifique se o CONVITE de saída preservou o cabeçalho desconhecido, de acordo com a configuração da Regra.
Troubleshooting
Caso o CONVITE de saída não contenha o cabeçalho ou a tag de opção como esperado, você pode verificar esta lista:
- Certifique-se de que o Cabeçalho ou Parâmetro configurado não esteja incluído na lista de cabeçalhos/parâmetros conhecidos.
- Verifique se o Cabeçalho ou Parâmetro no CONVITE corresponde exatamente àqueles configurados na bwcli (não diferencia maiúsculas de minúsculas).
- Verifique se a Regra configurada permite que o Cabeçalho ou o Parâmetro sejam colocados em proxy.