9 votes

Comment le dispositif de bouclage est-il mis en œuvre ?

L'interface réseau de bouclage

est un dispositif de réseau virtuel mis en œuvre entièrement par logiciel.

Mais comment cette mise en œuvre s'effectue-t-elle réellement et comment la manipuler ?

Pour autant que je sache, les IP sont marquées comme locales dans la table de routage locale :

ip route show table local  

L'envoi vers une IP marquée comme locale déclenchera le dispositif de bouclage. Mais cette détection se fait-elle uniquement par les tables de routage ou également par d'autres opérations du noyau ?

Edit : Mon but ultime est de manipuler la configuration du loop-device, de sorte que l'envoi de datagrammes entre mes interfaces (deux adaptateurs wlan) sur mon ordinateur portable se traduise par un véritable trafic / datagrammes dans le réseau et non par des boucles locales. Interface 1 -> WLAN -> Interface 2 et PAS : Interface 1 -> LOOP -> Interface 2

7voto

Pierre Carrier Points 1155

Il est entièrement géré par les tables de routage.

Il est assez facile de l'essayer dans une machine virtuelle, si vous voulez vous amuser. Je ne suis pas responsable de ce qui pourrait se passer sur la machine où vous l'essayez.

Commençons par modifier le masque de réseau de lo à 255.255.0.0 :

sudo ip addr del 127.0.0.1/8 dev lo; sudo ip addr add 127.0.0.1/16 dev lo

Regardons maintenant notre lo :

$ ip -4 addr show dev lo
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 16436 qdisc noqueue state UNKNOWN 
    inet 127.0.0.1/16 scope host lo

Où iraient les paquets vers 127.1.1.1 ?

$ sudo ip route get 127.1.1.1
127.1.1.1 via 172.16.22.2 dev eth0  src 172.16.22.130 
    cache  mtu 1500 advmss 1460 hoplimit 64

Nous commençons à faire du ping dans un autre terminal :

$ ping 127.1.1.1

Surveillons le trafic ICMP sur eth0 :

$ sudo tcpdump -i eth0 icmp
tcpdump: verbose output suppressed, use -v or -vv for full protocol decode
listening on lo, link-type EN10MB (Ethernet), capture size 65535 bytes
07:28:42.060077 IP 172.16.22.130 > 127.1.1.1: ICMP echo request, id 5665, seq 4, length 64
07:28:43.059920 IP 172.16.22.130 > 127.1.1.1: ICMP echo request, id 5665, seq 5, length 64

Je vous laisse avec l'exercice de changer le masque de réseau de lo sur une machine distante à 255.255.0.0 et en ajoutant l'adresse IP 127.1.1.1 à son interface réseau. Vous pouvez voir les réponses ICMP qui reviennent. Notez que les routeurs peuvent ne pas jouer le jeu.

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X