Rediriger facilement du trafic réseau avec rinetd
Il est parfois utile de faire des redirections de port (NAT) vers une autre machine notamment lors d’un migration de dns qui n’est jamais effective immédiatement.
Pour résoudre ce problème et assurer la continuité de service lors de mes migrations, j’ai découvert rinetd.
Installation
apt-get install rinetd
Configuration
On édite le fichier de configuration
vim /etc/rinetd.conf
Rien de bien compliqué dans la syntaxe, elle est de ce type. On pourra aussi spécifier un fichier de log.
#localip localport remoteip remoteport logfile /var/log/rinetd.log
Avec ici un exemple de redirection du trafic sur le port 80.
0.0.0.0 80 192.168.1.50 80
La présence de 0.0.0.0 signifie que l’écoute du port se fait sur toutes les interfaces réseau.
Il est également possible de mettre des restrictions sur qui à le droit ou pas de passer par ce NAT, en spécifiant l’IP autorisée. Les wildcards sont permises mais attention pas les FQDN.
allow IP deny 192.168.2.15 allow 192.168.1.*
Test
Chaque changement de configuration doit être suivie d’un restart du service
/etc/init.d/rinetd restart
Et on peut vérifier l’écoute du port comme ceci
netstat -ntlpv | grep rinetd tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN 1905/rinetd