para acedera un servicio detras de un roter debes hacer NAT de lo contrario es posible que no acedas ...
Luego en tu código del servidor no indiques la ip : # configuración del servidor: > ip = " " > puerto = 2000 > # Se prepara el servidor > ................. Cuéntanos que tal El 2 de septiembre de 2012 13:56, Miguel Barraza < [email protected]> escribió: > ** > hola, tengo unas duditas sobre sockets, ahora que ya tengo la aplicación > lista para las primeras pruebas, dejo de probarlo en la intranet y le > coloco mi ip pública para verificar desde internet y me tira este eror: > > return getattr(self._sock,name)(*args) > error: [Errno 10049] La dirección solicitada no es válida en este contexto > > mi consulta es: es por algún parámetro que estoy poniendo mal? > tengo que utilizar algúna clase especial para manejar bien los sockets?. > o puede ser por algún problema de mi red...que calculo que no, aunque > estoy detrás de un router yo que sepa no está blockeando ningún puerto y > tengo acceso libre a internet. no estoy detrás de un proxi. > > el código que utilizo es el siguiente: > > import socket, sqlite3, client > from threading import Thread > > # configuración del servidor: > ip = "190.179.12.21" > puerto = 2000 > # Se prepara el servidor > server = socket.socket(socket.AF_INET, socket.SOCK_STREAM) > server.bind((ip, puerto)) > server.listen(5) > print "Esperando clientes..." > > # bucle para atender clientes > while 1: > # Se espera a un cliente > socket_cliente, datos_cliente = server.accept() > # Se escribe su informacion > print "conectado "+str(datos_cliente) > # Se crea la clase con el hilo y se arranca. > hilo = client.client(socket_cliente, datos_cliente) > hilo.start() > > utilizándolo en intranet, dejando la variable ip bacía, funciona > perfectamente. ahora cuando pongo la ip pública ya no funciona. me tira el > error antes mensionado. > y aprovechando este hilo de sockets, consulto otra cosita mas: cuando > levanto datos de la base de datos y envío, cuando encuentra acentos tira un > error python, imaginé que es por la codificación. > probé de esta forma: antes de mandar el texto lo codifico en utf8: > texto.encode('utf8') > y almenos ya no tira error pero en lo que recibe el cliente no muestra > acentos en que codificación debo ponerla para que funcione bien con > sockets?. > mi idea es mostrar acentos por default, y si alguno configura luego armar > alguna función que remplase acentos por letras sin acentos). > > gracias por todo. un saludo! > > atte, Miguel > > _______________________________________________ > Python-es mailing list > [email protected] > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > >
_______________________________________________ Python-es mailing list [email protected] http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
