Conectarse a internet ....

Iniciado por HadesDark, 4 Noviembre 2007, 02:50 AM

0 Miembros y 1 Visitante están viendo este tema.

HadesDark

Hola a todos, quiero hacer un programa en C# que me permtia conectarme a internet, pero no tengo idea de que puedo usar o si es posible, agradezco la ayuda que me puedan brindar.

Hadess_inf

Trata de buscar informacion sobre WinSocks

~~

En los temas con chincheta hay un tuto de Hendrix de sockets, miratelo ;)

HadesDark

Muchas gracias por responder, lo que busco es  como conectarme a internet pero no a una pagina, es decir, que el user ponga el user y password de su conexion a internet, y permita conectarse a internet. No se si fui claro, si no es asi pido disculpas y vuelvo a replantear el problema.

Hadess_inf

Yo no entiendo. No se como sera con los demas. Replantea la pregunta.

gusman

Hmmm, a ver, creo que tu lo que estás intentando hacer es que desde un programa se pueda controlar si hay conexión a internet o no, ¿¿correcto??.

Si es así lo vas a tener un poco dificil, "Internet" no es algo que puedas poner y quitar, internet llega a cada máquina de una forma:un adaptador de red, un adaptador de telefonía, un puerto COM..

Para poder controlar todo esto lo tienes un poco dificil ya que cada Hardware trabaja de una forma.

Puedes recurrir a soluciones que envuelvan las capas de red, quizá bloqueando el protocolo IPv4 y el IPv6 puedas controlar el flujo de paquetes, pero dudo mucho que lo puedas hacer en .net, para esto lo más normal sería escribir un filtro intermedio que viene a ser un driver que se coloca entre los adaptadores de red y las capas de protocolos; el problema es que es muy dificil y has de hacerlo en C puro y usando el SDK de Windows.

Otra solución posible es acceder al IPSEC si la plataforma a la que está orientada la aplicación lo soporta y crear un par de reglas que bloqueen por completo la conexión a internet, el único problema que tienes con este método es que el usuario podría acceder manualmente a esa configuración, por lo cual tendrías que estár comprobando cada poco tiempo si esa regla aún existe. Lo bueno de este sistema es que sí podrías hacerlo en .net, realizando llamadas al api de WFP (mas info aquí).

Una última forma que se me ocurre de hacer esto es utilizar la librería IPHelper para controlar las conexiones TCP de la máquina; mediante estas funciones puedes enumerar las conexiones TCP de la máquina y cerrarlas cuando se produzcan, el único problema que tiene esto es que si se intenta usar internet por otro protocolo que no sea TCP se podría realizar la conexión. Si quieres saber más sobre IPHelper mira aquí.

Un saludo.

El Dr. Gusman.
No está muerto todo lo que yace y con extraños evos hasta la misma muerte puede morir.