Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Deux connexions ADSL

5 réponses
Avatar
Fabien LE LEZ
Bonjour,

J'ai une machine avec deux interfaces réseau : une pour le LAN et
l'autre pour une connexion ADSL Nerim.
Sur cette machine sont installés Qmail et Squid.
Tout ça marche très bien... sauf quand la connexion Nerim tombe.

J'ai donc décidé de prendre une deuxième connexion ADSL, chez Cegetel.
Et c'est là que ça se complique : j'aimerais que la bonne connexion
soit utilisée automatiquement (cf ci-dessous), mais je ne sais pas du
tout par où commencer -- même pas quels mots clés taper dans Google.

Voici ce que j'aimerais :

Qmail tente d'envoyer les mails vers le MX du destinataire, via la
connexion Nerim. Si ça ne marche pas (connexion impossible, erreur du
style "IP blacklistée", etc.), il tente alors smtp.cegetel.fr, via la
connexion Cegetel. Si possible, il envoie un warning vers l'expéditeur
du mail.

Squid, au contraire, devra tenter d'utiliser la connexion Cegetel, et,
si le serveur est injoignable, se rabattra sur la connexion Nerim (de
capacité moindre).

Et, bien évidemment, si une connexion TCP entrante arrive par une
connexion ADSL, les paquets émis en réponse doivent passer par la même
connexion ADSL.

Est-ce possible ? délirant ? horriblement compliqué alors qu'il y a
une solution toute simple ?

Merci d'avance pour toute réponse, piste, URL, etc.

5 réponses

Avatar
gillot
Le Sun, 26 Mar 2006 23:43:22 +0200, Fabien LE LEZ a écrit :

Bonjour,

J'ai une machine avec deux interfaces réseau : une pour le LAN et
l'autre pour une connexion ADSL Nerim.
Sur cette machine sont installés Qmail et Squid.
Tout ça marche très bien... sauf quand la connexion Nerim tombe.

J'ai donc décidé de prendre une deuxième connexion ADSL, chez Cegetel.
Et c'est là que ça se complique : j'aimerais que la bonne connexion
soit utilisée automatiquement (cf ci-dessous), mais je ne sais pas du
tout par où commencer -- même pas quels mots clés taper dans Google.

Voici ce que j'aimerais :

Qmail tente d'envoyer les mails vers le MX du destinataire, via la
connexion Nerim. Si ça ne marche pas (connexion impossible, erreur du
style "IP blacklistée", etc.), il tente alors smtp.cegetel.fr, via la
connexion Cegetel. Si possible, il envoie un warning vers l'expéditeur
du mail.

Squid, au contraire, devra tenter d'utiliser la connexion Cegetel, et,
si le serveur est injoignable, se rabattra sur la connexion Nerim (de
capacité moindre).

Et, bien évidemment, si une connexion TCP entrante arrive par une
connexion ADSL, les paquets émis en réponse doivent passer par la même
connexion ADSL.

Est-ce possible ? délirant ? horriblement compliqué alors qu'il y a
une solution toute simple ?

Merci d'avance pour toute réponse, piste, URL, etc.


Chercher à utiliser un autre smtp, je vois pas trop l'intérêt,
normalement, vous ne devriez pas rencontrer de problèmes à ce niveau-la,
après c'est du ressort de votre FAI.

Je pense qu'il faut surtout palier au problème de connexion : si la
principale (Cegetel par ex.) tombe, utiliser la secondaire (nerim).

Je suppose que vous disposez de deux routeurs, un par connexion ADSL ?
Personellement, ce que je ferai (mais il y a peut-être une meilleure
solution !) :
Un petit script bash qui fait ceci :
Tester une IP qui est sensée ne jamais tomber avec un ping (toutes les x
minutes).
- Tant que le ping réponds, on ne fait rien.
- Si le ping ne réponds pas, changer la passerelle qui doit pointer vers
le routeur principal pour qu'elle pointe vers le routeur secondaire
(commande route)
Pinguer à nouveau l'IP du dessus. Si ça fonctionne, envoyer un petit mail
à l'admin (vous ?) pour signaler qu'il y a eu un problème avec la
connexion.

Ensuite, vous pouvez tester par ex tous les 1/4 d'heure la connexion
principale pour vérifier si elle est remontée ou pas, et si oui, repasser
sur la connexion principale... et hop, un petit mail pour informer l'admin.

En même temps, je suis par expert en réseau, mais ça devrait fonctionner.

A+ Gillot ;o)

Avatar
Fabien LE LEZ
On Mon, 27 Mar 2006 01:37:43 +0200, gillot :

Chercher à utiliser un autre smtp, je vois pas trop l'intérêt,


Si un email est refusé, ça peut être pour plusieurs raisons :
- impossibilité de se connecter au MX destinataire
1-> la connexion ADSL est down
2-> le réseau Nerim est coupé
3-> le MX destinataire est down
4- mon IP est blacklistée

Dans tous les cas (sauf le 3), passer par le serveur SMTP du FAI de
l'autre connexion résoud le problème.

Je suppose que vous disposez de deux routeurs, un par connexion ADSL ?


Oui. D'ailleurs, je ne sais pas trop si je dois les mettre sur le même
sous-réseau ou pas.

Tester une IP qui est sensée ne jamais tomber


Ça existe, ça ?

- Si le ping ne réponds pas, changer la passerelle qui doit pointer vers
le routeur principal pour qu'elle pointe vers le routeur secondaire
(commande route)


En fait, j'aimerais beaucoup que les deux connexions puissent être
actives en même temps.

J'aimerais pallier tous les types de pannes que j'ai pu voir
récemment :

- connexion ADSL Nerim down, évidemment
- connexion Nerim fonctionnelle, mais coupure d'Internet au niveau de
FreeIX
- connexion ADSL "à moitié en panne" : les connexions TCP entrantes
(SMTP) fonctionnaient, les connexions TCP sortantes étaient refusées

Avatar
Arol
"Fabien LE LEZ" a écrit dans le message de news:
[snip]

Il te faut un routeur avec un double wan.
Il gère l'agrégation de la bande passante ainsi que la tolérance aux pannes.
Genre
http://www.netgear.fr/produits/ft.php?prod=FVS124G
http://www.clubic.com/article-20448-1-deux-connexions-internet-linksys-rv042
.html

Tu auras le modem nerim connecté sur un wan, le modem cegetel connecté sur
l'autre wan.
Ton serveur Qmail et Squid sera connecté derriere le routeur double wan.

Je réponds pas à ta question, mais cette solution clé en main est plus
pratique que de bidouiller un serveur avec une triple interface réseau et
faire du load balancing avec.
Avatar
Ploc
Fabien LE LEZ wrote:
Bonjour,

J'ai une machine avec deux interfaces réseau : une pour le LAN et
l'autre pour une connexion ADSL Nerim.
Sur cette machine sont installés Qmail et Squid.
Tout ça marche très bien... sauf quand la connexion Nerim tombe.

J'ai donc décidé de prendre une deuxième connexion ADSL, chez Cegetel.
Et c'est là que ça se complique : j'aimerais que la bonne connexion
soit utilisée automatiquement (cf ci-dessous), mais je ne sais pas du
tout par où commencer -- même pas quels mots clés taper dans Google.

Voici ce que j'aimerais :

Qmail tente d'envoyer les mails vers le MX du destinataire, via la
connexion Nerim. Si ça ne marche pas (connexion impossible, erreur du
style "IP blacklistée", etc.), il tente alors smtp.cegetel.fr, via la
connexion Cegetel. Si possible, il envoie un warning vers l'expéditeur
du mail.

Squid, au contraire, devra tenter d'utiliser la connexion Cegetel, et,
si le serveur est injoignable, se rabattra sur la connexion Nerim (de
capacité moindre).

Et, bien évidemment, si une connexion TCP entrante arrive par une
connexion ADSL, les paquets émis en réponse doivent passer par la même
connexion ADSL.

Est-ce possible ? délirant ? horriblement compliqué alors qu'il y a
une solution toute simple ?


A vue de nez, je regarderai du cote de load-balancing, dynamic routing.
Ca peut-etre :
http://bird.network.cz/
ou
http://www.linux-france.org/prj/inetdoc/guides/lartc/lartc.rpdb.multiple-links.html
Je l'ai pas lu, donc, je ne sais pas si c'est vraiment pertinent.


Par contre, utiliser un service sur une interface et l'autre sur
l'autre, semble plus complique. Certains softs peuvent ecouter une
interface precise, mais du coup, ils peuvent pas changer en cas de panne.

Avatar
Samuel
Bonjour,


En fait, j'aimerais beaucoup que les deux connexions puissent être
actives en même temps.


Puisque tu es chez Nerim, un ancien (XH) avait expliqué sa méthode
(recherche dans les archives Nerim):

- Pour le traffic entrant :
Une passerelle linux avec iptables et la 'cible' (aïe pas sûr du nom)
CONNMARK ... elle rajoute un état pour le conntrack qui permet de
marquer et matcher un paquet au niveau de sa connexion :
Quand un nouveau paquet arrive par ppp0 on marque '1' et quand ça arrive
par ppp1 on marque '2' pour le conntrack par ex :

iptables -t mangle -A PREROUTING -i $DEV_FREE -m state --state NEW -j
CONNMARK --set-mark 1

Comme cela pour le paquet de retour sortant, la table d'état arrive à
retrouver ses petits.

- pour le traffic sortant à l'état NEW, c'est pas automatique, faut
changer la route en fonction des tests effectués par des scripts (ping
ou ce que l'on veut d'autre).

Samuel.