[Cascavel-pm] Validando um IP

Luis Motta Campos luismottacampos em yahoo.co.uk
Domingo Outubro 22 15:45:20 PDT 2006


Thomas Britis wrote:
> Luis Motta Campos wrote:
>>   Ah! Golf... adoro golf...
>>
>>   (?!1(0|72\.16|92\.168)\.)
>
> De acordo com a RFC 1918 as classes privadas são:
> 10/8
> 172.16/12
> 192.168/16
>
> 	Sendo assim o IP 172.16.x.x é privado e entra na sua regex.
> Porém, o IP
> 172.20.x.x também é privado e foge da sua regex.
>
> 	O certo seria validar o 172.[16..31].

  Ah! Um connoisseur(1) de networking! :-)

  Muito obrigado por esta lição.
  Eu já nem me lembrava mais disso.
  Agora, com licensa, que eu preciso dar uma tacada muito complicada... ;-)

  A minha "jogada" anterior era aplicar isto:
  (?!1(0|72\.16|92\.168)\.)

  ao final da expressão regular que já enviei para esta lista antes.

  Para quem perdeu, sempre existe a chance de encontrar nos arquivos da
lista...

  http://mail.pm.org/pipermail/cascavel-pm/2006-October/007180.html

  Agora, vou tentar aplicar isto:
  (?!1(0|72\.(1[6-9]|2\d|3[01])|92\.168)\.)

  ao final da mesma expressão regular, o que me dá uma "senhora"
desvantagem, com mais de 10 toques... :-( puxa, fazia tempo que eu não
perdia uma partida de Perl Golf para mim mesmo.

  De qualquer forma, o Thomas tem razão, e a gente tem de ficar atento
com as soluções que implementa. Obrigado, Thomas!

(1): Não saber francês não é crime, você pode aprender o que é um
connoisseur aqui: http://en.wikipedia.org/wiki/Connoisseur

-- 
Luis Motta Campos
Sênior System Engineer at Segula.FR
Hobbyist Cooker and Photograph


Mais detalhes sobre a lista de discussão Cascavel-pm