Este é o comando sipsak que pode ser executado no provedor de hospedagem gratuita OnWorks usando uma de nossas várias estações de trabalho online gratuitas, como Ubuntu Online, Fedora Online, emulador online do Windows ou emulador online do MAC OS
PROGRAMA:
NOME
sipsak - um utilitário para vários testes em servidores sip e agentes de usuário
SINOPSE
gole [-dFGhiILnNMRSTUVvwz] [-uma SENHA ] [-b NÚMERO ] [-c SIPURI ] [-C SIPURI ] [-D
NÚMERO ] [-e NÚMERO ] [-E STRING ] [-f ARQUIVO ] [-g STRING ] [-H NOME DE ANFITRIÃO ] [-eu PORT ] [-m
NÚMERO ] [-ou NÚMERO ] [-p NOME DE ANFITRIÃO ] [-P NÚMERO ] [-q REGEXP ] [-r PORT ] [-t NÚMERO ] [-você
STRING ] [-C NÚMERO ] [-x NÚMERO ] -s SIPURI
DESCRIÇÃO
gole é um utilitário de diagnóstico e estresse SIP. Ele envia solicitações SIP para o servidor
dentro do gole-uri e examina as respostas recebidas. Funciona em um dos seguintes
modos:
- modo padrão
Uma mensagem SIP é enviada ao destino em gole-uri e o status da resposta é exibido. o
a solicitação é tirada de nome do arquivo ou gerado como uma nova mensagem OPTIONS.
- modo traceroute (-T)
Este modo é útil para o caminho da solicitação de aprendizagem. Ele opera de forma semelhante à camada IP
utilidade traceroute(8).
- modo de mensagem (-M)
Envia uma mensagem curta (semelhante a SMS de telefones celulares) para um determinado alvo.
Com a opção -B o conteúdo da MENSAGEM pode ser definido. Útil pode ser o
opções -c e -O neste modo.
- modo usrloc (-U)
Modo de estresse para registrador SIP. gole continua se registrando em um servidor SIP em alta
ritmo. Além disso, o registrador pode ser estressado com o -I ou de -M opção. Se
-I e -M são omitidos gole pode ser usado para registrar qualquer contato (com o -C
opção) para uma conta em um registrador e para consultar as ligações atuais para um
conta em um registrador.
- modo randtrash (-R)
Modo de tortura do analisador. gole continua enviando mensagens corrompidas aleatoriamente para torturar um
Analisador do servidor SIP.
- modo de inundação (-F)
Modo de estresse para servidores SIP. gole continua enviando solicitações para um servidor SIP em alta
ritmo.
Se libruli (http://www.nongnu.org/ruli/) o suporte é compilado no gole binário, então
primeiro é feita uma pesquisa SRV para _sip._udp.hostname. E se essa pesquisa falhar em um A normal
pesquisa é feita. Se uma porta foi fornecida no URI de destino, a pesquisa SRV é omitida. Failover,
distribuição de carga e outros transportes ainda não são suportados.
OPÇÕES
-a, --password SENHA
Com o dado SENHA uma autenticação será tentada em '401 recebido
Não autorizado'. A autorização será testada a tempo. Se esta opção for omitida, um
será tentada uma autorização com uma senha vazia (""). Se a senha for igual
para - a senha será lida a partir da entrada padrão (por exemplo, o teclado). Esse
impede que outros usuários no mesmo host vejam a senha a senha no
lista de processos. OBSERVAÇÃO: a senha ainda pode ser lida da memória se outros usuários
tem acesso a ele.
-A, --tempo
imprime apenas os valores de tempo da execução do teste se a verbosidade for zero porque não -v
foi dado. Se um ou mais -v foram fornecidas, esta opção será ignorada.
-b, --apendix-begin NÚMERO
O número inicial anexado ao nome do usuário no modo usrloc. Esse
NÚMERO é aumentado até atingir o valor dado pelo -e parâmetro. Se
omitido, o número inicial será um.
-B, --message-body STRING
O dado STRING será usado como o corpo para solicitações de saída de MESSAGE.
-c, --de SIPURI
O dado SIPURI será usado no cabeçalho De se gole é executado no modo de mensagem
(iniciado com o -M opção). Isso é útil para apresentar ao receptor um
MENSAGEM um endereço significativo e útil para onde talvez até mesmo as respostas possam ser enviadas.
-C, --contato SIPURI
Este é o conteúdo do cabeçalho Contact no modo usrloc. Isso permite inserir
encaminha como para o correio. Por exemplo, você pode inserir o uri do seu primeiro SIP
conta em uma segunda conta, portanto, todas as chamadas para a segunda conta serão encaminhadas
para a primeira conta. Como o argumento para esta opção não será incluído em
colchetes você pode fornecer também vários contatos no formato bruto como separados por vírgulas
Lista. As palavras especiais vazio or Nenhum resultará em nenhum cabeçalho de contato no
Solicitação de REGISTRO e, portanto, o servidor deve responder com as ligações atuais para
a conta no registrador.
-d, --ignore-redireciona
Se esta opção for definida, todos os redirecionamentos serão ignorados. Por padrão, sem esta opção
redirecionamentos recebidos serão respeitados. Esta opção é ativada automaticamente no
modo randtrash e no modo inundação.
-D, --fator de tempo limite NUMBER
O temporizador SIP_T1 está sendo multiplicado pelo número fornecido. Depois de receber um
resposta provisória para uma solicitação INVITE, ou quando um transporte confiável como TCP
ou TLS é usado gole aguarda a quantidade de tempo resultante para uma resposta final
até desistir.
-e, --apêndice-end NUMBER
O número final que é anexado ao nome do usuário no modo usrloc. Esse
o número é aumentado até atingir este final número. No modo de inundação, isso é
o número máximo de mensagens que serão enviadas. Se omitido, o valor padrão é
2 ^ 31 (2147483647) no modo de inundação.
-E, --transport STRING
O valor de STRING será usado como transporte IP para enviar e receber solicitações
e respostas. Esta opção substitui qualquer resultado da avaliação de URI e SRV
olho para cima. Atualmente, apenas 'udp' e 'tcp' são aceitos como valores para FRAGMENTO.
-f, --filename ARQUIVO
O conteúdo de ARQUIVO será lido em modo binário e será usado como substituto
para a mensagem sip criada alternativamente. Isso pode ser usado no modo padrão para
fazer outras solicitações além das solicitações de OPÇÕES (por exemplo, CONVIDAR). Por padrão ausente
os retornos de carro na frente dos avanços de linha serão inseridos (use -L para desativar
esta função). Se o nome do arquivo for igual a - o arquivo é lido da entrada padrão,
por exemplo, do teclado ou de um tubo. Observe que as funções de manipulação
(por exemplo, inserir o cabeçalho Via) são testados apenas com solicitações em conformidade com RFC. Adicionalmente
strings especiais dentro do arquivo podem ser substituídas por alguns valores locais ou dados
(Vejo -g e -G para mais detalhes).
-F, --modo de inundação
Esta opção ativa o modo de inundação. Neste modo, as solicitações de OPÇÕES com
números crescentes de CSeq são enviados ao servidor. As respostas são ignoradas - porta de origem
9 (descarte) de localhost é anunciado na Via superior.
-h, --ajuda
Imprime uma mensagem simples de ajuda de uso. Se a opção longa --Socorro está disponível
irá imprimir uma mensagem de ajuda com as opções longas disponíveis.
-g, --substituir string STRING
Ativa a substituição de $ replace $ dentro da solicitação (normalmente lido de um
arquivo) com o FRAGMENTO. Alternativamente, você também pode especificar uma lista de atributos e
valores. Esta lista deve começar e terminar com um caractere não alfanumérico. o
mesmo caractere deve ser usado também como separador entre o atributo e o valor
e entre novos pares de valores de atributos adicionais. A string "$ attribute $" será
substituído pela string de valor na mensagem.
-G, --substituir
Ativa a substituição automática das seguintes variáveis na solicitação
(normalmente lido de um arquivo): $ dsthost $ será substituído por pelo host ou
nome de domínio que é fornecido pelo -s parâmetro. $ srchost $ será substituído pelo
nome do host da máquina local. $ port $ será substituído pela porta de escuta local
of gole. $ user $ será substituído pelo nome de usuário que é fornecido pelo -s
parâmetro.
-H, --hostname NOME DO HOST
Substitui a detecção automática do nome do host com o parâmetro fornecido.
Atenção: use isso com cuidado (preferível apenas se a detecção automática falhar).
-i, --no-via
Desativa a inserção da linha Via do localhost. Atenção: isso provavelmente
desabilita o recebimento das respostas do servidor.
-I, --invite-mode
Ativa os ciclos de convites dentro do modo usrloc. Deve ser combinado com -VOCÊ.
Nesta combinação gole primeiro registra um usuário e, em seguida, simula um
convite para este usuário. Primeiro, um convite é enviado, ele é respondido com 200 OK e
finalmente, um ACK é enviado. Esta opção também pode ser usada sem -U , mas você deveria ser
certifique-se de NÃO convidar UAs reais com esta opção. Em caso de falta -U da -l
PORT é necessário porque somente se você fez um -U executado com uma porta local fixa antes,
uma corrida com -I e a mesma porta local fixa pode ser bem-sucedida. Atenção: gole is
nenhum UA real e convites para UAs reais podem resultar em comportamento inesperado.
-j, --headers STRING
A corda será adicionado como um ou mais cabeçalhos adicionais à solicitação. o
string "\ n" (nota: dois caracteres) será substituída por CRLF e, portanto, resultará em
dois cabeçalhos separados. Dessa forma, mais de um cabeçalho pode ser adicionado.
-l, --local-port PORTA
O soquete UDP receptor usará a rede local porta. Útil se um arquivo for
dado por -f que contém uma linha Via correta. Verifica a -S opção para detalhes como
sipsak envia e recebe mensagens.
-L, --no-crlf
Desativa a inserção de retornos de carro (\ r) antes de todos os avanços de linha (\ n)
(que ainda não é procedido por retorno de carro) se a entrada vier de um
Arquivo ( -f ) Sem esta opção, também uma linha vazia será acrescentada ao pedido
se necessário.
-m, --max-forward NUMBER
Isso define o valor do campo de cabeçalho Max-Forward. Se omitido, não Max-Forward
campo será inserido. Se omitido no modo traceroute número será 255.
-M, --modo de mensagem
Isso ativa os ciclos de mensagens dentro do modo usrloc (conhecido por gole
versões anteriores a 0.8.0 dentro do teste usrloc normal). Esta opção deve ser combinada
com -U para que um registro bem-sucedido seja testado com uma mensagem de teste para o
usuário e respondeu com 200 OK. Mas esta opção também pode ser usada sem o -U
opção. Atenção: usando sem -U pode causar comportamento inesperado.
-n, --numérico
Em vez do nome de domínio totalmente qualificado na linha Via, o IP do host local
será usado. Esta opção agora está ativada por padrão.
-N, --nagios-código
Use códigos de retorno compatíveis com o Nagios em vez dos códigos normais do sipsak. Isso significa
gole retornará 0 se tudo estiver ok e 2 em caso de algum erro (local ou
controlo remoto).
-o, --sono NUMBER
gole vai dormir por NÚMERO ms antes de iniciar o próximo ciclo no modo usrloc.
Isso tornará mais lento todo o processo de teste para ser mais realista. Cada ciclo será
ainda concluído o mais rápido possível, mas todo o teste será mais lento.
-O, --disposição STRING
O dado STRING será usado como o conteúdo do cabeçalho Content-Disposition.
Sem esta opção, não haverá cabeçalho Content-Disposition na solicitação.
-p, --outbound-proxy HOSTNAME [: PORT]
o endereço do nome do host é o destino para onde a solicitação será enviada
(proxy de saída). Use isto se o host de destino for diferente da parte do host
do uri do pedido. O nome do host é resolvido via DNS SRV se compatível (consulte
descrição para resolução SRV) e nenhuma porta é fornecida.
-P, --processos NUMBER
Início NÚMERO de processos em paralelo para fazer a verificação de envio e resposta. Faz apenas
sentido se um número maior para -e é fornecido no modo usrloc, mensagem ou convite.
-q, --search REGEXP
corresponder respostas contra REGEXP e retorna falso se nenhuma correspondência ocorreu. Útil para
exemplo para detectar o nome do servidor no campo de cabeçalho do servidor.
-r, --remote-port PORTA
Em vez da porta sip padrão 5060, o PORT será usado. Alternativamente, o
a porta remota pode ser fornecida dentro do sip uri do -s parâmetro.
-R, --modo aleatório
Isso ativa o modo randtrash. Neste modo, as solicitações de OPÇÕES serão enviadas para
servidor com um número crescente de caracteres travados aleatoriamente nesta solicitação.
A posição dentro da solicitação e o caractere de substituição são escolhidos aleatoriamente.
Qualquer outra resposta diferente de solicitação incorreta (4xx) interromperá este modo. Também três
envios não respondidos irão parar este modo. Com o -t parâmetro o máximo de lixo
caracteres podem ser fornecidos.
-s, --sip-uri SIPURI
Esta opção obrigatória define o destino da solicitação. Depende do modo
se apenas o nome do servidor ou também um nome de usuário for obrigatório. Exemplo para um completo
SIPURI : trago:[email protegido]: 123 Veja a nota na parte de descrição sobre SRV
pesquisas para obter detalhes de como o nome do host deste URI é convertido em um IP e uma porta.
-S, --simétrica
Com esta opção gole usará apenas uma porta para enviar e receber mensagens.
Com esta opção a porta local para envio será o valor do -l opção.
No modo padrão gole envia de uma porta aleatória e escuta na porta fornecida
do -l opção. Nota: Com esta opção gole não será capaz de receber
respostas de servidores com sinalização assimétrica (e implementação de rport quebrada)
como o proxy Cisco. Se você correr gole como root e com suporte de soquete bruto (verifique
a saída do -V opção), então esta opção não é necessária porque neste
casas gole já usa apenas uma porta para enviar e receber mensagens.
-t, --trash-chars NÚMERO
Este parâmetro especifica o máximo de caracteres descartados no modo randtrash.
Se omitido NÚMERO será definido para a duração da solicitação.
-T, --modo traceroute
Isso ativa o modo traceroute. Este modo funciona como o bem conhecido
traceroute(8) o comando espera que nem o número de saltos de rede seja contado, em vez disso
o número de servidores a caminho do usuário de destino. Também o tempo de ida e volta
de cada pedido é impresso, mas devido a uma limitação dentro do protocolo sip, o
identidade (IP ou nome) só pode ser determinada e impressa se a resposta do
servidor contém um campo de cabeçalho de aviso. Neste modo, em cada solicitação de saída, o
valor do campo de cabeçalho Max-Forwards é aumentado, começando com um. O máximo
do cabeçalho Max-Forwards será 255 se nenhum outro valor for fornecido pelo -m parâmetro.
Qualquer outra resposta diferente de 483 ou 1xx é tratada como uma resposta final e será
encerre este modo.
-u, --auth-nomedeusuário STRING
Use o dado STRING como valor de nome de usuário para a autenticação (conta diferente
e nome de usuário de autenticação).
-U, --usrloc-modo
Isso ativa o modo usrloc. Sem o -I ou de -M opção, só esta
registra usuários em um registrador. Com uma das opções acima, o anterior
o usuário registrado também será investigado com um fluxo de chamada simulado (convite, 200,
ack) ou com uma mensagem instantânea (mensagem, 200). Uma senha para todas as contas de usuários
dentro do teste usrloc pode ser dado com o -a opção. Um nome de usuário é obrigatório
para este modo no -s parâmetro. O número começando com -b parâmetro para o
-e parâmetro é anexado ao nome do usuário. Se o -b e os votos de -e parâmetro são omitidos,
apenas um é executado com o nome de usuário fornecido, mas sem acrescentar número aos nomes de usuário
é feito.
-v, --verboso
Este parâmetro aumenta o detalhamento da saída. Não -v significa quase nenhuma saída, exceto
em traceroute e mensagens de erro. O máximo de três v's imprime o conteúdo
de todos os pacotes recebidos e enviados.
-V, --versão
Imprime o nome e o número da versão do gole e as opções que eram
compilado no binário.
-w, --extrair-ip
Ativa a extração do IP ou nome do host do campo de cabeçalho Aviso.
-W, --nagios-warn NÚMERO
Retorne o código de saída de aviso do Nagios (1) se o número de retransmissões antes do sucesso
estava acima do número fornecido.
-x, - expira NUMBER
Define o valor do cabeçalho Expires para o número fornecido.
-z, --remove-ligações
Ativa a remoção aleatória de ligações antigas no modo usrloc. Quantos por
cento das ligações serão removidos, é determinado pelo USRLOC_REMOVE_PERCENT
definir dentro do código (definir antes da compilação). Remoção múltipla de ligações
é possível e não pode ser evitado.
RETORNO VALORES
O valor de retorno 0 significa que 200 foi recebido. 1 significa outra coisa que 1xx ou 2xx
foi recebido. 2 serão devolvidos em erros locais, como nomes não resolvíveis ou errados
combinação de opções. 3 será devolvido em erros remotos como erros de socket (por exemplo, icmp
erro), redireciona sem um cabeçalho de contato ou simplesmente sem resposta (tempo limite).
Se o -N opção foi fornecida, o código de retorno será 2 no caso de algum (local ou remoto)
erro. 1 caso tenha havido retransmissões de gole para o servidor. E 0 se houver
não foi nenhum erro.
CUIDADO
Use gole responsavelmente. Executá-lo em qualquer um dos modos de estresse coloca uma carga substancial sobre
rede e servidor em teste.
EXEMPLOS
gole -vv -s gole:[email protegido]
exibe as respostas recebidas.
sipsak -T -s gole:[email protegido]
rastreia o caminho SIP para ninguém.
sipsak -U -C gole: me @ home -x 3600 -a senha -s gole: eu @ empresa
insere o encaminhamento do trabalho para casa por uma hora.
sipsak -f bye.sip -g '! FTAG! 345.af23! TTAG! 1208.12!' -s gole: myproxy
lê o arquivo bye.sip, substitui $ FTAG $ por 345.af23 e $ TTAG $ por 1208.12 e
finalmente envie esta mensagem para myproxy
LIMITAÇÕES / NÃO IMPLEMENTADO
Muitos servidores podem decidir NÃO incluir campos de cabeçalho SIP "Aviso". Infelizmente, este
torna impossível a exibição de endereços IP de servidores SIP no modo traceroute.
IPv6 não é compatível.
Falta suporte para o registro de rota e cabeçalho de rota.
Use sipsak online usando serviços onworks.net