Neocute
Posts: 6
Joined: Sun Sep 22, 2019 11:34 am

Routeur + Répartition de charge + Point accès USB Ethernet, 4G, Wifi | Router + Load Balancing

Mon Sep 23, 2019 4:42 pm

Bonjour,

Je rencontre une problématique depuis plusieurs mois sans trouver de solutions totalement adaptées.
Pour faire simple, je souhaite avoir un "Router + load balancing" pour avoir accès à internet à partir de plusieurs smartphone (connexions 4G).

L'idée est simple : Brancher 2 smartphones avec chacun 1 à 2 accès 4G (double sim dont l'un permet le 4G en dual sim simultanément) sur un router, pour ensuite balancer le tout (connexions mixées en "une seule") en Ethernet (direct sur l'ordi et/ou sur prise CPL) et en Wifi (pour les tablettes, ou ordi/smartphone d'invités n'ayant pas de port Eth ou trop éloignés pour se câbler en Ethernet), tout en équilibrant les charges et les "forfaits 4G" de chacune de cartes sim....

Un graph représentant ce que je souhaite dans "l'idéal". Les parties "(optionnel)" sont donc dans l'idéal. Je n'ai pas l'impression qu'on puisse rajouter un port Ethernet sur le raspberry. Le port Ethernet serait alors utilisé soit en "entrée", soit en "sortie".

Code: Select all

		Smartphone "1" 4G	Smartphone "2" 4G	BOX et/ou Ordi + internet (optionnel)
	     	        |			|				|
		     USB 1		      USB 2			 Ethernet 1 - RJ45
			|	                |				|
			*********************************************************
			 ** Raspberry pi 4 (Load Balancing + failover + DHCP) **
			*********************************************************
		 	    |			|			|
			    USB 3	       Wifi    	 Ethernet 2 - RJ45 (Optionnel)
			    |			|			|
			   Autre	   Ordi 2, Tablette,...	   Autre...

Il existe déjà des choses de type hotspot 4G couplé à son forfait 4G (multisim etc.) et/ou 'dongle/box 4G'... Mais ce n'est pas ce que je cherche.
Je ne souhaite pas avoir "10 000" cartes sim (offre "multisim" 2 sims, l'une pour le smartphone, l'autre pour un dongle/box 4G....),
Je ne souhaite pas devoir retirer la/les carte-s sim du/des smartphone-s pour l'insérer dans un emplacement 4G intégré au routeur,
Je souhaite "simplement" pouvoir brancher les smartphones en USB sur le router "et voilà!".

Ça existe, j'ai un router Asus WiFi actuellement avec 1 WAN, 4 LAN, 2 ports USB (mais un seul à la fois peut servir pour "router" une connexion 4G) en y branchant 1 smartphone (ou dongle/box 4G...).

J'ai trouvé des routeurs avec au moins 2 ports USB permettant de faire ce que je veux (capable de fonctionner simultanément et de faire de la répartition de charge aussi à partir des 2 ports USB), mais... entre 300 et 450€.
Beaucoup trop pour mon budget, hors de question de mettre autant dans ce genre de chose.

Autre alternative, je peux logiquement réaliser de manière matériel et logciel, ce que je cherche directement à partir de mon ordinateur (tour encombrante sous windows), cela doit donc être possible sur Raspberry : Pas encombrant et idéal alors dans un salon (et pourra en plus me servir "d'ordinateur de salon" et/ou média center etc...).

Plusieurs personnes ont déjà réfléchi à ce type d'utilisation (sur le forum) : La 1 consisterait dans mon cas, à installer la distro openWRT, ce qui me parait être la "grosse artillerie" par rapport à mes besoins (tout en étant pourtant une solution "allégée" pour ne répondre qu'à ce type de besoin mais d'ampleur plus importante).
La 2eme semble bien plus proche, mais je ne sais pas si les solutions proposées (bonding, iptables, OpenVPN...) soient les plus appropriées.


Donc avant d'acheter un kit Raspberry, pensez-vous que le raspberry peut répondre à mes besoins/attentes, et pouvez-vous m'apporter quelques réponses, éclaircissements, aides et/ou pistes pour installer/config/paramétrer tout cela ?

Merci par avance.
:)

epoch1970
Posts: 3781
Joined: Thu May 05, 2016 9:33 am
Location: Paris, France

Re: Routeur + Répartition de charge + Point accès USB Ethernet, 4G, Wifi | Router + Load Balancing

Mon Sep 23, 2019 8:24 pm

A mon avis,
1 - C'est pas gagné,
2 - Ca ne sera jamais magique.

Le problème tel que je pourrais l'exprimer :
  • On a 2 passerelles avec 2 IP publiques, eth1 1.1.1.1 (ISP 1) et eth2 2.2.2.2 (ISP 2)
  • On va voir un serveur sur 3.3.3.3, disons pour une session ssh, et on alterne l'utilisation des 2 passerelles.
  • De temps en temps, le chemin serait:
    • 1.1.1.1 -> 3.3.3.3, 3.3.3.3 -> 1.1.1.1. Nickel
    • 1.1.1.1 -> 3.3.3.3, 3.3.3.3 -> 1.1.1.1, 2.2.2.2 -> 3.3.3.3. Serveur pas content
La plus ancienne et la plus simple des solutions est je pense d'avoir des routes fixes via 1.1.1.1 et via 2.2.2.2 sélectionnées selon l'adresse IP du client, ou selon le protocole utilisé. Ca se passe autour de LARTC et éventuellement de fwmark (iptables). C'est de la répartition statique.

Plus récemment ECMP avec marquage par flots (L4) doit permettre dans linux d'avoir une politique de round-robin sur plusieurs routes, tout en sélectionnant toujours la même route pour la même composante "IP source, IP dest, protocole". Un vague exemple. Ca devrait "balancer" les connexions sans les casser, mais de là à penser que ça équilibrerait les forfaits 4G...

Rien que pour la stabilité, j'utiliserai une distro routeur dédiée plutôt qu'un linux générique comme Raspbian. Avec un peu de chance, la dite distro inclut des modules pour traiter ce genre de question (je n'ai aucune idée de l'état de OpenWRT/LEDE).

Ni l'une ni l'autre des solutions ne tolère la panne de passerelle, ça serait à rajouter par-dessus.

Si tu te lances et que tu parviens quelque part, un post décrivant la méthode sera sûrement bien intéressant.
"S'il n'y a pas de solution, c'est qu'il n'y a pas de problème." Les Shadoks, J. Rouxel

iznobe
Posts: 247
Joined: Sun Feb 05, 2017 4:14 pm
Location: Avignon , FRANCE

Re: Routeur + Répartition de charge + Point accès USB Ethernet, 4G, Wifi | Router + Load Balancing

Tue Oct 01, 2019 2:54 pm

Salut ,

je ne suis pas specialiste des reseaux , mais pour le probleme du 2eme port ethernet , pluto que de le vouloir sur le pi , une solution est d' ajouter un switch , que tu peux placer ou tu veux d' ailleurs , ou bien un routeur wifi + port ethernet .

pour le reste , pour avoir tester de faire simplement un routeur wifi + ethernet de mon pi , j ' ai deja galerer a mort , mais fini par y arriver .

alors rajouter du load balancing sur du 4G multisim , je te souhaite bien du courage :mrgreen:

cela dit c ' est certainement possible .avec une charge de travail plutot importante ( sauf si vous etes un specialiste reseau )

nikotinux
Posts: 694
Joined: Sat Feb 02, 2013 2:11 am

Re: Routeur + Répartition de charge + Point accès USB Ethernet, 4G, Wifi | Router + Load Balancing

Tue Oct 01, 2019 6:19 pm

Ça me fonctionnera jamais !!

Pour comprendre pourquoi, il faut revenir au principes d'une communication en TCP/IP qui représente la grosse majorité des communications IP. Quand deux machines veulent dialoguer, elles vont établir une session qui est un échange de messages. Ces messages sont découpés en trames (d'environ 1500 octets) auquel on rajoute des marqueurs qui permettent en autre de reconstituer le message d'origine et de vérifier si l'information n'a pas été corrompu pendant la transmission. Si on détecte une erreur sur le parcours, l’émetteur en est informé et le message est renvoyé.
Si au début d'internet il été prévu que le réseau soit maillé et que le marquage temporel des trames puisse permettre de reconstituer le message d'origine, c'est que les concepteurs imaginaient quelques centaines de machines qui échangerait des messages de 2 ou 3 trames au plus via des télétypes. Aujourd'hui c'est bien sur totalement abandonné. Les messages DOIVENT suivre toujours la même route et strictement dans l'ordre temporel. Les fournisseurs de tuyau n'ont absolument pas les moyens technique et financier de faire fonctionner internet autrement. Le principe de correction d'erreur sur les trames est toujours valable, mais comme il dégrade fortement le trafic, il est détecté et éventuellement relégué au fin fond de la bande passante.

Le fait d'essayer de faire transiter les paquets soit par une connexion, soit par une autre va engendrer ce phénomène avec, au final, des performances inversement proportionnelles au résultat escompté voire complètement nulles.

Certains diront que le binding ça existe et ça marche ! Certes ! Mais les conditions de mises en œuvre, quelque soit la norme que l'on veux utiliser, sont très strictes. Par exemple sur un réseau local, on bind 2 ou 3 ports ethernet sur une machine, et on est obligé de raccorder les cables sur le même switch managé ou les ports sont bindés de la même manière.
De la même façon, si on commande 2 lignes xDSL a un fournisseur de tuyau pour augmenter son débit, il vous fournira un routeur ou les 2 lignes seront raccordées mais il devra aussi les lier au niveau du concentrateur ou les deux lignes arriveront. Ce n'est pas un truc que l'on peut faire soit même et encore moins avec des lignes chez des fournisseurs différents.

On est très loin de ce qui est envisagé au départ de ce sujet !

Return to “Français”