He estado jugueteando un poco en los últimos días con los sockets en C#, y por curiosidad he decidido implementar una sencilla función que comprueba si tenemos conexión a Internet. Simplemente, abre un socket para Internet (AF_INET), por lo que es un SOCK_STREAM (bajo TCP), y prueba a conectar, a través del puerto 80, con un servidor web. Como no podía ser menos, intenta hacerlo al dominio de Lobosoft. De conseguirlo, escribe un mensaje y cierra la conexión. De no hacerlo, hace otro tanto, aunque obviamente el mensaje mostrado indica la imposibilidad de conectarse. Sencillo, ¿verdad?
[python]
#!/usr/local/bin/python
# Author: Lobosoft.es
import socket
def IsInternetUp():
testConn = socket.socket(socket.AF_INET,
socket.SOCK_STREAM)
try:
testConn.connect(('www.lobosoft.es', 80))
print "Estamos on-line."
testConn.close()
except:
print "Lo siento, pero no se ha podido establecer la conexión."
testConn.close()
IsInternetUp()
[/python]
fantastico
ResponderEliminar