Verificando integridade de servidores POP com PHP/sockets
Esse artigo é uma incrementação do artigo "Criando um painel de rede em PHP", mas desta vez vamos mais à fundo nos recursos da linguagem, utilizando de suas funções de rede para verificar a integridade do servidor a um nível mais detalhado.
Nossa primeira versão do painel apenas verificava se uma máquina estava ativa na rede. Para tornarmos nosso aplicativo mais eficiente, vamos utilizar dos recursos de rede do PHP para verificar se o serviço desejado está ativo ou não. Muitas vezes um servidor passa a negar serviços de rede por algum motivo, mas continua respondendo a pacotes ICMP como se nada tivesse acontecido.
Para demonstrar a funcionalidade do painel, escolhi o serviço POP (Post Office Protocol) como alvo de nosso web-robot, por ser muito comum a queda do mesmo em servidores de rede (1).
(1) isso sem levar em conta as quedas do MS SQL Server quando executado em servidores menos robustos
Nossa primeira versão do painel apenas verificava se uma máquina estava ativa na rede. Para tornarmos nosso aplicativo mais eficiente, vamos utilizar dos recursos de rede do PHP para verificar se o serviço desejado está ativo ou não. Muitas vezes um servidor passa a negar serviços de rede por algum motivo, mas continua respondendo a pacotes ICMP como se nada tivesse acontecido.
Para demonstrar a funcionalidade do painel, escolhi o serviço POP (Post Office Protocol) como alvo de nosso web-robot, por ser muito comum a queda do mesmo em servidores de rede (1).
(1) isso sem levar em conta as quedas do MS SQL Server quando executado em servidores menos robustos
Verificando, este algoritmo verifica portas TCP mas as UDP não.
Alguem saberia como capturar uma porta UDP ?
Alguem saberia como capturar uma porta UDP ?
07/10/2006 8:53am
(~18 anos atrás)
Você pode fazer isso com o socket_select...
Vou postar um artigo sobre isso! :)
[]s
Vou postar um artigo sobre isso! :)
[]s
27/07/2005 7:01pm
(~19 anos atrás)
Só queria elogiar o artigo.
É extremamente simples, o que torna fácil a assimilação. Trabalho com segurança e monitoramento e esse tipo de dica é muito importante quem trabalha com isso.
É extremamente simples, o que torna fácil a assimilação. Trabalho com segurança e monitoramento e esse tipo de dica é muito importante quem trabalha com isso.
19/07/2003 9:37pm
(~21 anos atrás)
Nilton,
A referência completa de qualquer função PHP
pode ser facilmente encontrada no site PHP.Net.
Veja:
http://www.php.net/manual/en/function.fsockopen.php
Atenciosamente,
Fábio Berbert de Paula
fabio@vivaolinux.com.br
www.vivaolinux.com.br
A referência completa de qualquer função PHP
pode ser facilmente encontrada no site PHP.Net.
Veja:
http://www.php.net/manual/en/function.fsockopen.php
Atenciosamente,
Fábio Berbert de Paula
fabio@vivaolinux.com.br
www.vivaolinux.com.br
02/07/2002 7:10am
(~22 anos atrás)
$servidores = array ("udp://127.0.0.1","udp://servidor.com.br");