tengo que crear el servidor de conexión < => cliente. Yo uso este código: Servidor:Python + sockets
import socket
HOST = 'localhost'
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.bind((HOST, PORT))
s.listen(1)
conn, addr = s.accept()
print 'Connected by', addr
while 1:
data = conn.recv(1024)
if not data: break
conn.send(data)
conn.close()
Cliente:
import socket
HOST = 'localhost'
PORT = 50007
s = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
s.connect((HOST, PORT))
s.send('Hello, world')
data = s.recv(1024)
s.close()
print 'Received', repr(data)
funciona bien! Pero si el servidor se crea en la computadora que no tiene enrutador. Si tiene enrutador, antes de crear el servidor, debe abrir el puerto 50007 en su módem. ¿Cómo puedo crear un servidor en todas las computadoras sin la habilitación de puertos? Los clientes de Torrent lo hacen de alguna manera. Gracias.
> tiene que habilitar el reenvío de puertos para NAT y desbloquear rangos de puertos para firewalls ¿Puedo hacerlo usando python? O no es parte de programación? – Ockonal
Eso NO sería una cuestión programática, a menos que el firewall estuviera basado en software. Esa es una especie de sys-admin de red. –