Busqueda sobre Linux y software libre

Noticias sobre linux y software libre - Google 

TUN/TAP

interesante post en blogspot sobre tun/tap y algo llamado huamachi, en:

http://adf.ly/1eWAym

extraido del post..
---8<----------------------------------8<--- Paseando por el README de hamachi encontre algo que me llamo la atención: Hamachi requires TUN/TAP device driver to create and manage virtual network interface. If you have /dev/net/tun file, you are all set.

Y buscando informacion encontre una aplicacion que se llama VTun (Tunel Virtual para los amigos).

Y que es VTun ?
VTun es la forma facil de crear Tuneles Virtuales a traves de redes TCP/IP con encriptación y compresión. Soporta los protocolos IP, PPP, SLIP, Ethernet y otros tipos de tuneles. VTun es facil y altamente configurable, puede ser usado para varias tareas de networking. Pero para instalar VTum se necesita los drivers TUN/TAP y entre otras cosas drivers PPP y pppd.
En el FAQ de VTum hay un lindo chiste geek, aqui esta en su version original:


I don't like VTun. Where can I send complains ?
You can send them to /dev/null.

Ahora sigamos con TUN/TAP
TUN/TAP provee recepción y transmision de paquetes para programas del espacio-de-usuario. Puede ser visto como un simple dispositivo Punto a Punto o Ethernet, el cual en vez de recibir paquetes a traves de un medio fisico, los recibe desde programas del espacio-de-usuario y en vez de enviarlos por un medio fisico los escribe en el espacio de usuario.
Cuando un programa abre /dev/net/tun, el driver crea y registra el dispositivo tunX o tapX. Luego si lo cerramos, el driver automaticamente borra los dispositivos tunXX o tapXX y todas las rutas correspondientes.

Que es TUN ?
TUN es un dispositivo Punto a Punto virtual. El driver TUN fue desarrollado como soporte de bajo nivel para el kernel (?) para hacer IP tunneling. TUN provee a las aplicaciones de espacio-de-usuario 2 interfaces:
- /dev/tunX - un dispositivo de caracter
- tunX - una interfaz Punto a Punto virtual.
Las aplicaciones de espacio-de-usuario pueden escribir tramas IP a /dev/tunX y el kernel las recibe a traves de la interfaz tunX. Al mismo tiempo, cada trama que el kernel escribe en la interfaz tunX, podrán ser leidas por los programas de espacio-de-usuario a a traves de la interfaz /dev/tunX.

(Pensamiento del Traductor: por que carajo le di bola a mi amigo, ahora estaria durmiendo tranquilamente)

Que es TAP ?
TAP es un dispositivo Ethernet virtual. El driver TAP fue desarrollado como soporte de bajo nivel para el kernel (?) para Ethernet tunneling. Este provee a las aplicaciones del espacio-de-usuario 2 interfaces:
- /dev/tapX - un dispositivo de caracter
- tapX - una interfaz Ethernet virtual
Los programas del espacio-de-usuario pueden escribir las tramas Ethernet en /dev/tapX y el kernel las recibirá a traves de la interfaz tapX. De la misma forma cuando el kernel escribe en tapX, los programas de espacio-de-usuario recibiran las tramas por /dev/tapX.

Cual es la diferencia entre TUN y TAP ?
TUN trabaja con tramas IP y TAP trabaja con tramas Ethernet.

En Resumen
(espero que pueda hacerlo): Hamachi necesita los drivers TUN/TAP para funcionar. Estos drivers crean interfaces de red virtuales (ubicadas en /dev/net/), diferentes de las clasicas interfaces físicas (eth0) las cuales necesitan de un tarjeta de red y cables. TUN simulará un dispositivo Punto a Punto y TAP un dispositivo Ethernet. Los paquetes que se envian y se reciben por los dispositivos TUN/TAP son enviados y recibidos por programas del espacio-de-usuario (Hamachi, VTun, etc), lo cual quiere decir que los paquetes son enviados y recibidos por aplicaciones externas al nucleo.

Esta información la saqué del FAQ de TUN/TAP, tambien del FAQ de VTun, fue de utilidad el texto escrito por un tal Maxim Krasnyansky y el README de Hamachi.



Son las 4:13 am estoy terminando de escribir este post, solo me queda decir 2 cosas: Gracias Linux por hacerme buscar y aprender y muchas gracias usuarios de linux por documentar y desarrollar cosas tan copadas, las cuales se pueden aprender y tocar debido al open-source.

Ads by CJ - Linux Foundation

Share This