Sockets: usar ip para salida del servidor

Juan Carlos Villalobos C jucavilst en gmail.com
Mie Jun 18 16:27:54 CEST 2008


> Juan Carlos Villalobos C escribió:
>> Saludos, tengo un scritp que desde un servidor envia unos datos a una 
>> ip/puerto, el codigo básico esta así:
>>
>> def enviarDato(ip, puerto, dato):
>>    host = ip
>>    port = puerto
>>    buf = 4096
>>    addr = (host,port)
>>    try:
>>        UDPSock = socket(AF_INET,SOCK_DGRAM)
>>        UDPSock.connect(addr)
>>        UDPSock.settimeout(10)
>>        UDPSock.send(dato)
>>
>>        datax,addr = UDPSock.recvfrom(buf)
>>
>>        UDPSock.close()
>>        respuesta = 1
>>    except:
>>        respuesta = 0
>>
>>
>>    return respuesta
>>
>> El problema que tengo es que esta saliendo por cierta IP, pero se 
>> requiere que salga por una IP especifica.
>> ¿Como puedo hacer para especificar la Ip que debe usar para salir ?
>>
>> Espero se entienda, muchas gracias de antemano por la colaboración
--------------------------------------------------
>From: "Pepe Aracil" <pepe en diselpro.com>
>Sent: Wednesday, June 18, 2008 2:57 AM
>To: "Lista de discusión sobre python en castellano" <python-es en aditel.org>
>Subject: Re: [Python-es] Sockets: usar ip para salida del servidor
>
> Hola
>
> Esto es un problema de enrutado y no de sockets.
>
> Para que salgan los paquetes  por una inerface de red especifica, debes
> modificar la tabla de rutas del SO.
>
> Cuando un paquete (no relay) sale por una interface de red, el SO
> pone como IP origen del paquete la de la interface.
>
> En el caso de Linux debes utilizar el comando "route" o si quieres
> poner reglas de enrutado más complejas debes utilizar el comando "ip"
>
> Saludos.


Hola Pepe, gracias por responder.

Si entonces el tema es por ese lado, voy a quedar bloqueado ya que esto 
corre en un hosting de los que se contratan normalmente, y obviamente no 
puedo lanzar comandos u operar el SO.

Pense que existia la forma de hacerlo, pero también en lo que he podido 
encontrar, no he visto información al respecto.

Gracias por tu ayuda

Cordial saludo
Juan Carlos 

_______________________________________________
Lista de correo Python-es 
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes





Más información sobre la lista de distribución Python-es