Les xarxes informàtiques utilitzant protocols de tunneling (tunneling protocols) per encapsular altres protocols. Per definició són protocols que transporten altres protocols.
Al utilitzar un túnel es pot transportar dades de un protocol (el protocol transportat) a través d'una xarxa on aquell protocol no es podria transportar però sobretot s'utilitzen per proveir d'un camí segur a través d'una xarxa no segura.
Aquest tipus de protocols emboliquen els sistemes de capes OSI o TCP/IP ja que trencant la línealitat de les capes al posar capes dins d'altres capes. Per exemple el protocol GRE s'executa s'obre IP i serveix sovint per transportar també paquets IP.
NOTA: Cal tenir en compte que evidentment transportar dades a través de un túnel té una penalització de velocitat i de temps de procés
Els protocols de tunneling poden utilitzar xifratge de dades per tal de transportar protocols insegurs a través d'una xarxa pública i així proveixen un servei de VPN.
Segons el nivell en que es realitzi l'encapsulament classificarem els túnels en:
Recursos:
NOTA: Amb aquest tipus de túnel, no "s'encaminen" els paquets de broadcast ni tampoc IPv6
Aquest tipus de túnels estan disponibles des de fa temps a Linux. Només calen els mòduls del kernel:
ipip.o new_tunnel.o
Posem un exemple amb tres xarxes: dos xarxes internes (A i B), internes però en llocs remots i una xarxa externa intermediària (C), per exemple Internet.
network A:
network 10.0.1.0 netmask 255.255.255.0 router 10.0.1.1
El router 10.0.1.1 té la IP 172.16.17.18 a la xarxa C (Internet)
Network B:
network 10.0.2.0 netmask 255.255.255.0 router 10.0.2.1
El router 10.0.2.1 té la adreça 172.19.20.21 a la xarxa C (Internet).
Aleshores per fer el túnel:
$ sudo insmod ipip.o $ sudo insmod new_tunnel.o
NOTA: També podeu utilitzar modprobe
Aleshores al router Linux de la xarxa A poseu:
$ sudo ifconfig tunl0 10.0.1.1 pointopoint 172.19.20.21 $ sudo route add -net 10.0.2.0 netmask 255.255.255.0 dev tunl0
Hi al router de la xarxa B
$ sudo ifconfig tunl0 10.0.2.1 pointopoint 172.16.17.18 $ sudo route add -net 10.0.1.0 netmask 255.255.255.0 dev tunl0
Per desconfigurar el túnel:
$ sudo ifconfig tunl0 down
Linux IP-in-IP (IP-in-IP) tunneling no funciona amb altres sistemes operatius o routers
Vegeu també routerOS
http://wiki.mikrotik.com/wiki/Manual:Interface/VLAN#RouterOS_.2F32_and_IP_unnumbered_addresses
GRE són les inicials de Generic Routing Encapsulation (definit al RFC 2784) un tunneling protocol desenvolupat per Cisco. Pot encapsular varietat de protocols en un ellaç punt a punt.
De la mateixa forma que els protocols IPIP o EoIP és un protocol stateless de forma que si el túnel cau els paquets que estaven viatjant es perden. Alguns sistemes com routerOS implementen un sistema de keepalive per tal d'evitar que això passi,
Els túnels GRE afegeixen un overheade de 24 bytes (4-byte gre header + 20-byte IP header).
GRE i alguns tipus de NATs antics no són compatibles.
Consulteu EoIP.
Consulteu routerOS GRE.
L2TP es transporta mitjançánt UDP. Consulteu L2TP.
TODO: http://www.monperrus.net/martin/howto-tunneling-via-proxy.html
Consulteu Túnels SSH
S'utilitza el procotol HTTP (concretament la directiva CONNECT) per tal d'utilitza el protocol HTTP com a protocol de tunneling. Tenen l'avantatge de ser molt díficil de bloquejar amb firewalls i proxies restrictius.
Eines:
Recursos
Un túnel ICMP (aka IMCPTX) permet crear una connexió encoberta entre dos ordinadors utilitzant paquets pings (ICMP echo requests i replies ). Es pot arribar a túnelar trànsit TCP en pings.
Eines:
Recursos:
TODO: Veure l'ordre obsoleta iptunnel i com utilitzar iproute2 i l'ordre ip tunnel
Hi ha una relació molt estreta entre el concepte de túnel i els protocols PPP. Hi ha protocols PPP que permeten crear un enllaç punt a punt entre dos nodes de xarxa sense necessitat que estiguin connectats directament (a nivell d'enllaç). ÉS possible fer la connexió punt a punt a traves d'una xarxa amb encaminadors ja sigui pública o privada.
Consulteu PPP
De la mateixa forma que hi ha una relació molt estreta entre els túnels i els protocols PPP, també hi ha una relació molt estreta entre els túnels i les Xarxes privades Virtuals (VPNs). Els túnels són la base d'aquest tipus de xarxes.
Consulteu VPN