Krusty a dit: je ne forwarderai pas tes paquets

CINQ HEURES ! CINQ PUTAIN D’HEURES on vient de passer avec _mat et ofredj à essayer de débugger cette SALOPERIE de netfilter. Pour faire court, toujours dans les peripeties de zone0, je me disais ce matin “bon peinard, je sette les redirections de ports du dom0 vers les domUs et on part racker”: AH-AH. Et que jte PREROUTE, et que jte FORWARD et qu’on browse, qu’on lit des histoires de checksums erronés, de mode nat pour Xen, on essaye, on casse, on boit. Bref, la misère: impossible de faire un minable petit forwarding de port du dom0 vers un domU. En désespoir de cause, je tente ma chance avec IPVS, dont je connais la robustesse par le biais de mon boulot. Et bah… 10mn de lecture de man, 3mn de commandes, et ça marche. Là comme ça direct. Je vous l’accorde, c’est un peu le marteau pilon pour écraser une mouche, mais à bien y reflechir, les capacités de ce module kernel à faire du load balancing nous ouvrent potentiellement de nouveaux horizons… Un chouillat de conf pour faire envie

Je déclare une VIP (Virtual IP) de service (ici, DNS) load-bancé suivant l’algo Round-Robin :

Puis j’attache à cette VIP un (mais surtout plusieurs) serveur réel, ici je n’attache qu’un serveur, mais en TCP et UDP :

Et un peu d’output :

Ça change du –par-ici –par-la –sourceroutingcroise -j ACCEPT -i eth0 -A -I -O -P -L –ouaisouais non ?