Linux Networking HOWTO | ||
---|---|---|
Prev | Chapter 7. Informations relatives � l'IP | Next |
Pourquoi vouloir encapsuler des paquets IP dans d'autres paquets IP? Cela semble bizarre si vous n'avez jamais vu d'applications auparavant. Il y a deux endroits o� c'est utilis� : le Mobile-IP et l'IP-Multicast. C'est dans un environnement qui est peut-�tre le plus largement utilis� et qui est le moins connu : le radio-amateurisme.
Options de compilation du noyau :
Networking options ---> [*] TCP/IP Networking [*] IP: forwarding/gatewaying .... <*> IP tunelling |
Les p�riph�riques IP tunnel s'appellent `tunl0', `tunl1', etc..
"Mais pourquoi ?" D'accord. D'accord. Les r�gles de routage classiques sp�cifient qu'un r�seau IP comprend une adresse IP et un masque de r�seau. Ceci fournit un ensemble d'adresses contigu�s qui peuvent toutes �tre rout�es par l'interm�diaire d'une seule entr�e de routage. Cela marche, mais signifie que vous ne pouvez utiliser une seule adresse uniquement lorsque vous �tes connect� � un point du r�seau auquelle elle appartient. Dans la plupart des cas, il n'y a pas de probl�mes, mais si vous �tes en mouvement alors vous ne pouvez pas rester connect� au m�me endroit tout le temps. L'encapsulation IP/IP ( IP tunneling) vous permet de passer outre cette contrainte en permettant aux paquets destin�s � votre adresse d'�tre envelopp�s et redirig�s vers une autre adresse. Si vous savez que vous allez op�rer depuis un autre r�seau IP pour quelques temps, vous pouvez r�gler une machine qui est chez vous pour accepter des paquets destin�s � votre adresse IP et les rediriger vers l'adresse que vous allez utiliser provisoirement.
192.168.1.24 192.168.2.24 - - | ppp0 = ppp0 = | | aaa.bbb.ccc.ddd fff.ggg.hhh.iii | | | | /- - -\ /- - -\ | | | | // | | | |- -| A |- - - // - - - - | B | | | | | // | | | | \- - -/ \- - -/ | | | - - |
Ce diagramme montre une autre raison possible d'utiliser l'encapsulation IPIP : le r�seau priv� virtuel. Cet exemple pr�suppose que vous ayez deux machines chacune avec une seule connexion Internet. Chaque h�te a une seule adresse IP. Derri�re chacune de ces machines se trouve des r�seaux priv�s locaux configur�s avec des adresses IP r�serv�es. Supposez que vous vouliez permettre � chacun des h�tes du groupe A de se connecter � n'importe quel h�te du groupe B, comme s'ils �taient vraiment connect�s � l'Internet via un routage r�seau. L'encapsulation IPIP vous permettra de le faire. � noter que l'encapsulation ne vous permettra pas de faire en sorte que chacun des h�tes des r�seaux A et B puissent parler � n'importe qui sur l'Internet, vous aurez toujours besoin de choses comme le masquage IP pour pouvoir le faire. L'encapsulation est normalement accomplie par une machine fonctionnant comme routeur.
Le routeur Linux `A' sera configur� comme suit :
#!/bin/sh PATH=/sbin:/usr/sbin mask=255.255.255.0 remotegw=fff.ggg.hhh.iii # # configuration �thernet ifconfig eth0 192.168.1.1 netmask $mask up route add -net 192.168.1.0 netmask $mask eth0 # # ppp0 configuration (start ppp link, set default route) pppd route add default ppp0 # # configuration du p�riph�rique de tunneling ifconfig tunl0 192.168.1.1 up route add -net 192.168.2.0 netmask $mask gw $remotegw tunl0 |
Le routeur Linux `B' sera configur� comme suit :
#!/bin/sh PATH=/sbin:/usr/sbin mask=255.255.255.0 remotegw=aaa.bbb.ccc.ddd # # configuration �thernet ifconfig eth0 192.168.2.1 netmask $mask up route add -net 192.168.2.0 netmask $mask eth0 # # ppp0 configuration (start ppp link, set default route) pppd route add default ppp0 # # configuration du p�riph�rique de tunneling ifconfig tunl0 192.168.2.1 up route add -net 192.168.1.0 netmask $mask gw $remotegw tunl0 |
La commande :
root# route add -net 192.168.1.0 netmask $mask0 gw $remotegw tunl0 |
Notez que les configurations sont invers�es � l'autre bout. Le p�riph�rique tunnel utilise `gw' dans la commande route comme destination du paquet IP o� se trouve le datagramme qu'il doit router. Cette machine doit savoir comment `d�sencapsuler' les paquets IPIP, c'est � dire qu'elle doit aussi �tre configur�e comme p�riph�rique tunnel.
Ce n'est pas tout un r�seau que vous aurez � router. Vous pouvez par exemple ne router qu'une seule adresse IP. Dans ce cas vous devrez configurer le p�riph�rique tunl sur la machine `distante' avec sa propre adresse IP et � l'extr�mit� A n'utiliser qu'une route h�te (avec Proxy Arp) plut�t qu'une route r�seau via le p�riph�rique tunnel. Refaisons et modifions notre configuration de mani�re appropri�e. Maintenant nous avons seulement l'h�te `B' qui veut agir comme s'il �tait � la fois connect� � l'Internet et �galement au r�seau distant support� par l'h�te `A' :
192.168.1/24 - | ppp0 = ppp0 = | aaa.bbb.ccc.ddd fff.ggg.hhh.iii | | /- - -\ /- - -\ | | | // | | |- -| A |- - - //- - - - -| B | | | | // | | | \- - -/ \- - -/ | aussi: 192.168.1.12 - |
Le routeur Linux `A' sera configur� comme suit :
#!/bin/sh PATH=/sbin:/usr/sbin mask=255.255.255.0 remotegw=fff.ggg.hhh.iii # # configuration �thernet ifconfig eth0 192.168.1.1 netmask $mask up route add -net 192.168.1.0 netmask $mask eth0 # # configuration de ppp0 (d�marre le lien ppp link, r�gle la route par # d�faut) pppd route add default ppp0 # # configuration du p�riph�rique de tunneling ifconfig tunl0 192.168.1.1 up route add -host 192.168.1.12 gw $remotegw tunl0 # # Proxy ARP pour l'h�te distant arp -s 192.168.1.12 xx:xx:xx:xx:xx:xx pub |
L'h�te Linux `B' sera configur� comme suit :
#!/bin/sh PATH=/sbin:/usr/sbin mask=255.255.255.0 remotegw=aaa.bbb.ccc.ddd # # configuration de ppp0 (d�marre le lien ppp, r�gle la route par d�faut) pppd route add default ppp0 # # configuration du p�riph�rique de tunelling ifconfig tunl0 192.168.1.12 up route add -net 192.168.1.0 netmask $mask gw $remotegw tunl0 |
Ce type de configuration est vraiment typique d'une application IP-Mobile, o� un simple h�te veut seulement se balader sur l'Internet et maintenir une adresse IP utilisable tout le temps. R�f�rez-vous au paragraphe Mobile-IP pour avoir plus d'informations et savoir comment faire en pratique.
Hosting by: Hurra Communications GmbH
Generated: 2007-01-26 18:01:31