Realização de testes relacionados a validação da comunicação Site-to-Site necessária entre os PDVs e o Monitor de PDV.
É importante deixar claro e dividir as questões relacionadas a comunicação em VPN em duas situações distintas:
É 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
É 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.
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:
WIRESHARK*
É 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)
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, embora já seja um forte indicador de que será necessário o ajuste de MTU, sugerimos e indicamos realizar também o teste de NETSTAT na porta 8011 via Terminal no mesmo PDV para conferir se está acumulando conexões naquela porta.
É importante considerar que muitos equipamentos já vem por padrão com MTU configurado para 1500 e mesmo acima, então o teste de estabilidade da VPN (com pacote definido usando o parâmetro "l" do exemplo) pode se iniciar justamente a partir de 1500 e então ir diminuindo até ser estabilizado e comunicar ou identificado o valor limite (a partir do qual é exibido "timed out" como na imagem abaixo).
Se confirmada a divergência, como impacta diretamente na estabilidade das comunicações entre Servidor x PDV será necessário realizar/solicitar o ajuste, o que pode ser feito tanto PDV x PDV (interface ETH0), via Roteador (cliente) ou ainda, via Servidor de PDV (dispensando as outras 2 anteriormente citadas), portanto, indicamos a realização dos testes citados logo na instalação do 1º PDV.
Verificar no PDV (Linux)
No terminal, digite a linha 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: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
Verificar no Windows
No prompt de comando digite a linha abaixo:
netsh interface ipv4 show subinterfaces
COMO ALTERAR O TAMANHO DO MTU NO PDV
ALTERAÇÃO TEMPORÁRIA PARA TESTES DE ESTABILIDADE
PDV LINUX
a. Alteração temporária do exemplo abaixo irá se perder (será restaurada a padrão) quando for reiniciado o PDV, porém, enquanto isso não ocorrer será perfeitamente possivel realizar testes e novos ajustes de tamanho de pacote de MTU e as respectivas análises de estabilidade com aquele valor, assim, em seguida deverá ser realizado o ajuste permanente de forma assertiva, recomendamos fortemente realizar esses procedimentos no 1º PDV de Testes instalado.
Para realizar a alteração manual (temporária) do MTU para um valor específico, no exemplo abaixo utilizaremos o ajuste do 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 partir desse momento é possivel por exemplo fechar e abrir a aplicação do PDV (para liberar eventuais conexões pendentes) e realizar novos testes de estabilidade e funcionamento
ALTERAÇÃO PERMANENTE DO PDV
Após a devida análise, verificada a necessidade de ajuste permamente é possivel ajustar (em definitivo) naquele PDV o MTU na respectiva interface (ETH0 no exemplo) ou editar o arquivo de configuração para que o parâmetro seja sempre mantido após reinicar o equipamento.
ALTERAÇÃO MTU
Alteraçao:
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:
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)
Valida a quantidade de conexões ativas, indicado para execução no terminal do PDV.
Linux
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
Linux
Estando no terminal do Linux do PDV:
Verificar conexões existentes na porta 8011:
netstat -an | grep 8011
É 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, podendo evidenciar problemas de comunicação como link e operadora.
Exemplo:
É 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
É possível informar vários parâmetros adicionais de acordo com a necessidade de monitoramento, segue tabela:
Flag | Descrição |
L | Loss ratio |
D | Dropped packets |
R | Received packets |
S | Sent packets |
N | Newest RTT(ms) |
B | Min/Best RTT(ms) |
A | Average RTT(ms) |
W | Max/Worst RTT(ms) |
V | Standard Deviation |
G | Geometric Mean |
J | Current Jitter |
M | Jitter Mean/Avg. |
X | Worst Jitter |
I | Interarrival Jitter |
Exemplo: no Filtro digite o IP do Servidor de PDV, no caso do exemplo ip.src==10.0.1.6