Árvore de páginas

Você está vendo a versão antiga da página. Ver a versão atual.

Comparar com o atual Ver Histórico da Página

« Anterior Versão 20 Próxima »

01. OBJETIVO

Realização de testes relacionados a validação da comunicação Site-to-Site necessária entre os PDVs e o Monitor de PDV.

02. COMUNICAÇÃO 

É importante deixar claro e dividir as questões relacionadas a comunicação em VPN em duas situações distintas:

  • VPN TOTVS - CLIENTE

É aquela prevista no projeto e documentação, realizada entre o IP Peer da TOTVS e IP Peer (único) do cliente, definidos e validados, a partir da sua configuração, o cliente deverá realizar e validar a configuração desse ponto principal para as demais lojas da rede do mesmo.

Mais informações: VPN | Procedimentos de Ativação


  • VPN CLIENTE - LOJAS

É aquela configurada pelo cliente a partir do ponto principal (VPN TOTV - Cliente) para as demais lojas, é a responsável direta pela comunicação entre o Monitor de PDV (que é o gerenciador de todas as operações/movimentações relacionadas ao PDV) e cada PDV de cada loja.


03. TESTES

Os testes de comunicação devem ser realizados sempre nos dois sentidos, ou seja do Monitor de PDV para o PDV e por sua vez, no sentido contrário, do PDV para o Monitor de PDV, pois só assim é possivel verificar e identificar de maneira assertiva, bloqueios, restrições ou falhas de comunicação na origem correta.

É importante considerar que, especificamente em caso de PDV Windows o mesmo continua sujeito a necessidade de verificação/liberação das restrições de GPO e Firewall (local).

Principais testes sugeridos: 

  1. PING

  2. TELNET

  3. NETSTAT

  4. PATHPING

  5. MTR

  6. TCPING*

  7. WIRESHARK*

Os comandos de 1 a 5 estão presentes e funcionais nativamente nos respectivos ambientes (Linux e ou Windows), já as sugestões dos itens 6 e 7 (TCPing e Wireshark) os mesmos podem demandar instalação complementar por não virem instalados/embarcados em todas as distribuições.

Exemplos práticos:

  1. PING:


    É o primeiro teste que deve ser realizado pois com ele é possivel validar a comunicação e também o limite do pacote de dados MTU que pode trafegar de forma estável na VPN.

    Executar no Prompt (Windows) ou Terminal (Linux)

    1. PING SIMPLES

      PING NUMEROIP -t

      Exemplo: Ping 192.168.13.208 -t 


    2. PING COM TESTE DE MTU

      PING NUMEROIP -l 1410 -t
      Exemplo: Ping 192.168.13.208 -l 1410 -t

      No exemplo abaixo é possivel verificar que estável até 1410, porém, acima (1411) já não há mais retorno, nesse cenário o indicado é realizar também o teste de NETSTAT na porta 8011 via Terminal no mesmo PDV para conferir se está acumulando conexões.
      Se confirmada a divergência, como impacta diretamente na estabilidade das comunicações entre Servidor x PDV é necessário realizar/solicitar o ajuste, o que pode ser feito tanto PDV x PDV (interface ETH0) quanto via Roteador, portanto, indicamos a realização dos testes citados logo na instalação do 1º PDV

      Mensagem de "Falha" ao tentar enviar configurações e cargar são indícios de divergência de MTU o que pode ser confirmado com o teste complementar de NETSTAT na porta 8011, sendo confirmado, é possivel realizar o ajuste tanto PDV por PDV (interface ETH0) quanto no Roteador.  Executem o teste de limite acima, pois a estabilidade pode se manter acima de 1410 em algumas redes.



      COMO CONFERIR  O MTU ATUAL no PDV


      LINUX

      No terminal:

      # ifconfig eth0
      eth0      Link encap:Ethernet  HWaddr 00:0c:29:ac:b2:8e
                inet addr:172.23.134.101  Bcast:172.23.134.255  Mask:255.255.255.0
                inet6 addr: fe80::20c:29ff:feac:b28e/64 Scope:Link
                UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                RX packets:6164356 errors:0 dropped:0 overruns:0 frame:0
                TX packets:96179 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:1000
                RX bytes:515490533 (491.6 MiB)  TX bytes:22206002 (21.1 MiB)

      Na linha 5 você pode ver MTU:1500


      O exemplo acima é uma forma simples e rápida de confirmar o MTU atual/default na interface de rede do PDV;



      WINDOWS

      No prompt de comando:

      netsh interface ipv4 show subinterfaces

      No exemplo acima (Windows) é exibido que o tamanho MTU naquele momento para a Interface de rede é 1500




      COMO ALTERAR O TAMANHO DO MTU NO PDV

      LINUX

      a. Alteração temporária (irá se perder quando reiniciar o equipamento), mas permite realizar os testes e análises necessários para verificação da necessidade de ajuste permanente.

      Para realizar a alteração manual (temporária) do MTU para um valor específico utilize o seguinte comando (exemplo ajustando MTU para 1410). 

      No Terminal do Linux, executar:

      # ifconfig eth0 mtu 1410


      O resultado de saída do comento será parecido com o conteúdo abaixo:

      # ifconfig eth0
      eth0      Link encap:Ethernet  HWaddr 00:0c:29:ac:b2:8e
                inet addr:172.23.134.101  Bcast:172.23.134.255  Mask:255.255.255.0
                inet6 addr: fe80::20c:29ff:feac:b28e/64 Scope:Link
                UP BROADCAST RUNNING MULTICAST  MTU:1410  Metric:1
                RX packets:6168787 errors:0 dropped:0 overruns:0 frame:0
                TX packets:96489 errors:0 dropped:0 overruns:0 carrier:0
                collisions:0 txqueuelen:1000
                RX bytes:515839287 (491.9 MiB)  TX bytes:22249757 (21.2 MiB)


      A configuração via linha de comando acima será perdida após reiniciar o equipamento, é indicada para validação do tamanho estavel limite e confirmado, deverá ser ajustado permanentemente.



      b. Alteração permamente no PDV

      Após a devida análise, verificada a necessidade de ajuste permamente é preciso editar o arquivo de configuração para que o parâmetro seja sempre mantido após reinicar o equipamento.



  2. TELNET:

    A finalidade é validar se as portas principais (7011 e 8011) estão se comunicando.

    Do Monitor de PDV para o PDV

    Estando no prompt do Windows, digitar Telnet IP_do_PDV 8011
    Ex. Telnet 192.168.2.10 7011

    Do PDV para o Monitor de PDV
    Estando no terminal, digitar Telnet IP_do_Monitor_de_PDV 7011
    Ex. Telnet 10.0.1.6 8011

    Em ambos os casos, seja do Servidor para o PDV ou do PDV para o Servidor, a confirmação da comunicação deverá exibir sempre a mensagem de "Conectado" como na imagem de exemplo abaixo

    Caso o teste de Telnet informe que a porta não está acessível, verifique a mensagem exibida:
    1. Mensagem simples de "Porta não Acessível"
      Dica: Verifique as regras de liberação previstas na documentação padrão (portas 7011, 8011, etc...)

    2. Mensagem de "Excesso de conexões ou Limite de Conexões excedido"
      Dica: Esse é  um forte indício de que pode haver divergência no tamanho máximo suportado do pacote de MTU (exemplo de Ping no Item 1)

      Observação: A existência de Objetos Inválidos no Banco de Dados inativa o Serviço do Monitor e deixa parados os Listeners de portas, como 8011 e 7011, nesse cenário o ping funciona, mas o Telnet não. Verifique Objetos Inválidos na opção "ALL USERS" utilizando usuário que tenha essas permissões.




  3. NETSTAT:

    Valida a quantidade de conexões ativas, indicado para execução no terminal do PDV.

    Estando no terminal do Linux do PDV:

    Verificar conexões existentes na porta 8011:
    netstat -an | grep 8011

    Verificar apenas o total de conexoes ativas existentes filtrando pela porta 8011
    netstat -ant | grep ESTABILISHED | grep 8011 | wcl -l

    Caso queira gravar a saída de resultados em um arquivo Log/TXT basta adicionar ao final da linhas acima o complemento:     >arquivo.log




  4. PATHPING (Windows):

    É uma combinação de PING com TRACERT, permite que você confira as rotas/pontos a partir do Host de origem até IP de destino informado.

    Exemplo:


  5. MTR (Linux)

    É o equivalente em LINUX do PATHPING, deve ser executado no Terminal do Linux, a grande vantagem é que ele fica em execução constante automática, verificando a velocidade, perdas de pacote, etc... (até que seja finalizado).
    Como fica em execução (loop) é possivel usar atalhos para "D" Display mode, "R" Restart statistics, etc...

    Exemplo: mtr -o "LSD A MX" IP_Destino



    Dicas de Parâmetros
    • Use  -x ou -xml para gerar xml
    • Use -C para exportar os dados em arquivo csv
    • Use -j para saida no padrão json

    Lista de parâmetros adicionais para usar com a opção "-o"

    É possível informar vários, de acordo com a necessidade de monitoramento.

    FlagDescrição
    LLoss ratio
    DDropped packets
    RReceived packets
    SSent packets
    NNewest RTT(ms)
    BMin/Best RTT(ms)
    AAverage RTT(ms)
    WMax/Worst RTT(ms)
    VStandard Deviation
    GGeometric Mean
    JCurrent Jitter
    MJitter Mean/Avg.
    XWorst Jitter
    IInterarrival Jitter



  6. TCPING:

    Exibe informações mais detalhadas da comunicação do que o PING tradicional e é possivel informar porta especifica, não vem por padrão instalado no Windows, mas é possivel ser instalado. 

    Exemplos: 

    tcping -d -t -j IPDESTINO


    tcping -d -t -j IPDESTINO PORTA


  7. WIRESHARK

    Software que possui versões Windows e Linux (vem embarcado em algumas distribuições Linux do AcruxPDV) e permite filtros e um detalhamento ainda mais avançado que todos os anteriores, é possivel até mesmo conferir a inconsistência do tamanho de um pacote MTU.

    No Linux, executando a partir do AcruxPDV, procure pela aplicação Wireshark (use F3 para alternar aplicação do AcruxPDV caso queira mantê-la ativa e busque em aplicativos).



    Exemplo: no Filtro digite o IP do Servidor de PDV, no caso do exemplo ip.src==10.0.1.6

    Podem haver algumas variações na interface interface inicial de acordo com a versão utilizada e ou embarcada, mas a forma de uso é sempre a mesma, informar o filtro desejado a as interfaces que deseja monitorar.
  • Sem rótulos