2012/5/17 Josu R. <jrvi...@gmail.com>: > Hola a todos, > > Estaba realizando unas pruebas me he encontrado esta curiosidad. > Creéis que es una ip v4 valida "1.3.23452"
Para inet_aton, lo es :P. De la página de manual: a.b.c.d se interpreta como cuatro octetos a.b.c se interpreta como dos octetos y un valor de 16 bits a.b se interpreta como un octeto y un valor de 24 bits a se interpreta como un valor de 32 bits Así que tu 23452 (0x5b9c) se interpreta como "91.156" Además, históricamente no hubo una definición precisa (en RFC) de cómo se debía escribir una dirección IP. La notación separada por puntos no se menciona siquiera hasta el RFC 780, que no tiene nada que ver con IP en sí, sino con un protocolo de capa superior y no se dio una especificación formal hasta que se empezó a trabajar en IPv6. inet_aton de 4.2BSD se convirtió en el estándar de facto :) > Lo pregunto y la curiosidad es la siguiente > > import socket > > addr ="1.3.23452" > try: > socket.inet_aton(addr) > except socket.error: > print "error" > > '\x01\x03[\x9c' > > > -- > > _______________________________________________ > Python-es mailing list > Python-es@python.org > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/