Pourquoi voudriez-vous qu'un programme utilise une interface autre que celle connectée au serveur pour parler à ce serveur ? Et si le système n'utilise pas l'interface connectée à un serveur pour parler à ce serveur, c'est un problème au niveau du système (table de routage) et cela n'a rien à voir avec le processus qui veut parler à ce serveur.
Des serveurs différents sur des réseaux IP ont des adresses IP différentes. Le noyau doit savoir quelle interface utiliser pour atteindre une adresse IP particulière en se basant sur la table de routage. Si vous essayez de parler à deux serveurs différents qui ont la même adresse IP, le système sera confus (parce que, entre autres choses, il n'indexe les connexions en interne que par adresse de destination). Vous pouvez faire en sorte que cela fonctionne, mais il s'agit d'un correctif au niveau du système qui implique de placer un serveur dans un réseau logique distinct qui n'est connecté à la machine qu'au moyen d'un NAT logiciel.
Ainsi, si elles ont des adresses IP différentes, utilisez les routes pour sélectionner la bonne interface. Si elles ont la même adresse IP, vous devez utiliser la NAT pour qu'elles semblent avoir des adresses IP différentes pour le système.