Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-21 Par sujet Christophe Maquaire
Le jeudi 15 juin 2023 à 18:06 +0200, roger.tar...@free.fr a écrit :

> Je vois que le ZYXEL LTE490-M904 est à environ 400 € sur le site du
> fabricant et à 730 € chez certains revendeurs.
> C'est un produit pour l'extérieur (IP68).
> Il a bien "One Gigabit RJ-45 PoE LAN port".

Oui, il a UN port ethernet POE, le fabricant met à jour relativement
régulièrement son firmware.

Christophe



Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-15 Par sujet Benoit Szczygiel
J'ai eu un zyxel il y a longtemps. Le problème c'est le jour où ils ont décidé 
de l'arrêter, plus de muse à jour.
Pour moi, j'ai un sg3100 de chez netgate et pas de soucis

Le 15 juin 2023 18:06:39 GMT+02:00, roger.tar...@free.fr a écrit :
>Merci pour le script.
>
>Je vois que le ZYXEL LTE490-M904 est à environ 400 € sur le site du fabricant 
>et à 730 € chez certains revendeurs.
>C'est un produit pour l'extérieur (IP68).
>Il a bien "One Gigabit RJ-45 PoE LAN port".
>https://www.zyxel.com/fr/fr/products/mobile-broadband/4g-lte-a-pro-outdoor-router-lte7490-m904
>
>- Mail original -
>De: "Christophe Maquaire" 
>À: "Liste Debian" 
>Envoyé: Mercredi 14 Juin 2023 18:37:44
>Objet: Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian
>
>Le mercredi 14 juin 2023 à 17:46 +0200, roger.tar...@free.fr a écrit :
>> Bonjour,
>> 
>Bonjour,
>> J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
>> Si le lien principal (FO) tombe, alors l'autre lien 4G prend le
>> relais automatiquement.
>> Si le lien principal revient, alors c'est lui qui va reprendre le
>> relais.
>> 
>> J'aimerais en réaliser un avec un PC debian équipé des matériels et
>> logiciels nécessaires.
>> (Mon expérience du Raspberry me fait oublier cette solution : sur le
>> long terme, mes cartes flash "haut de gamme" n'ont jamais tenu)
>> 
>> Je dispose :
>> - d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi
>> d'un opérateur.
>> IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé
>> par n'importe quel routeur !
>> - d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui
>> ait aussi une interface Ethernet)
>>  - d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ;
>> logiquement, il lui faudrait 3 cartes réseau...
>> 
>> Je sais que c'est théoriquement possible de faire ça. Ce doit être du
>> routage de flux conditionnel (sur l'état des liens).
>> Et je sais par expérience dans un domaine approché que ça doit être
>> rapide ou tès long à réaliser.
>> Surtout que je n'ai pas d'expérience.
>> 
>J'ai un script récupéré je ne sais plus où et adapté à mes besoins qui
>fait çà en IPv4
>
>---début
>#!/bin/bash
>
># variables (eventuellement passees par ENV)
>
>CHECK_DELAY=${CHECK_DELAY:-5}
>CHECK_IP=${CHECK_IP:-1.1.1.1}
>PRIMARY_IF=${PRIMARY_IF:-enp3s0f0}
>PRIMARY_GW=${PRIMARY_GW:-192.168.1.254}
>BACKUP_IF=${BACKUP_IF:-enp4s0f1}
>BACKUP_GW=${BACKUP_GW:-192.168.2.254}
>FAILOVER_LOG=${FAILOVER_LOG:-/var/log/failover.log}
>
>date >> $FAILOVER_LOG
>echo "CHECK_DELAY " $CHECK_DELAY >> $FAILOVER_LOG
>echo "CHECK_IP " $CHECK_IP >> $FAILOVER_LOG
>echo "PRIMARY_IF "$PRIMARY_IF >> $FAILOVER_LOG
>echo "PRIMARY_GW " $PRIMARY_GW >> $FAILOVER_LOG
>echo "BACKUP_IF " $BACKUP_IF >> $FAILOVER_LOG
>echo "BACKUP_GW " $BACKUP_GW >> $FAILOVER_LOG
>
>
># Comparaison défault GW actuelle avec celle donnée en argument
>gateway_if() {
>[[ "$1" = "$(ip route get "$CHECK_IP" | grep dev | cut -d ' ' -f5 )" ]]
>}
>
>
># boucle continue de vérification de la connectivité sur primary
>while true
>do
>  if gateway_if "$BACKUP_IF"
>then
>  ip route add "$CHECK_IP" via "$PRIMARY_GW" dev "$PRIMARY_IF"
>  PING_PRIMARY_IF=$( ping -I "$PRIMARY_IF" -c1 "$CHECK_IP"|grep
>'packet loss'|cut -d ' ' -f4)
>  ip route del "$CHECK_IP" via "$PRIMARY_GW" dev "$PRIMARY_IF"
>else
>  PING_PRIMARY_IF=$(ping -I "$PRIMARY_IF" -c1 "$CHECK_IP"|grep
>'packet loss'|cut -d ' ' -f4)
>  fi
>
>  if [ $PING_PRIMARY_IF -eq 1 ]
>#   succès de verif interface primaire
>then
>#  On est sur backup?
>  if gateway_if "$BACKUP_IF"
>then
>#  Switch sur primary
>date  >> $FAILOVER_LOG
>echo "GW "$BACKUP_GW "=> "$PRIMARY_GW  >> $FAILOVER_LOG
>echo "INTERFACE "$BACKUP_IF "=> "$PRIMARY_IF >> $FAILOVER_LOG
>  ip route del default via "$BACKUP_GW" dev "$BACKUP_IF"
>  ip route add default via "$PRIMARY_GW" dev "$PRIMARY_IF"
>  fi
>else
>#  echec de verif interface primaire
># On est sur  primary?
>  if gateway_if "$PRIMARY_IF"
>then
>
># Switch sur backup
>  ip route del default via "$PRIM

Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-15 Par sujet roger . tarani
Merci pour le script.

Je vois que le ZYXEL LTE490-M904 est à environ 400 € sur le site du fabricant 
et à 730 € chez certains revendeurs.
C'est un produit pour l'extérieur (IP68).
Il a bien "One Gigabit RJ-45 PoE LAN port".
https://www.zyxel.com/fr/fr/products/mobile-broadband/4g-lte-a-pro-outdoor-router-lte7490-m904

- Mail original -
De: "Christophe Maquaire" 
À: "Liste Debian" 
Envoyé: Mercredi 14 Juin 2023 18:37:44
Objet: Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

Le mercredi 14 juin 2023 à 17:46 +0200, roger.tar...@free.fr a écrit :
> Bonjour,
> 
Bonjour,
> J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
> Si le lien principal (FO) tombe, alors l'autre lien 4G prend le
> relais automatiquement.
> Si le lien principal revient, alors c'est lui qui va reprendre le
> relais.
> 
> J'aimerais en réaliser un avec un PC debian équipé des matériels et
> logiciels nécessaires.
> (Mon expérience du Raspberry me fait oublier cette solution : sur le
> long terme, mes cartes flash "haut de gamme" n'ont jamais tenu)
> 
> Je dispose :
> - d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi
> d'un opérateur.
> IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé
> par n'importe quel routeur !
> - d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui
> ait aussi une interface Ethernet)
>  - d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ;
> logiquement, il lui faudrait 3 cartes réseau...
> 
> Je sais que c'est théoriquement possible de faire ça. Ce doit être du
> routage de flux conditionnel (sur l'état des liens).
> Et je sais par expérience dans un domaine approché que ça doit être
> rapide ou tès long à réaliser.
> Surtout que je n'ai pas d'expérience.
> 
J'ai un script récupéré je ne sais plus où et adapté à mes besoins qui
fait çà en IPv4

---début
#!/bin/bash

# variables (eventuellement passees par ENV)

CHECK_DELAY=${CHECK_DELAY:-5}
CHECK_IP=${CHECK_IP:-1.1.1.1}
PRIMARY_IF=${PRIMARY_IF:-enp3s0f0}
PRIMARY_GW=${PRIMARY_GW:-192.168.1.254}
BACKUP_IF=${BACKUP_IF:-enp4s0f1}
BACKUP_GW=${BACKUP_GW:-192.168.2.254}
FAILOVER_LOG=${FAILOVER_LOG:-/var/log/failover.log}

date >> $FAILOVER_LOG
echo "CHECK_DELAY " $CHECK_DELAY >> $FAILOVER_LOG
echo "CHECK_IP " $CHECK_IP >> $FAILOVER_LOG
echo "PRIMARY_IF "$PRIMARY_IF >> $FAILOVER_LOG
echo "PRIMARY_GW " $PRIMARY_GW >> $FAILOVER_LOG
echo "BACKUP_IF " $BACKUP_IF >> $FAILOVER_LOG
echo "BACKUP_GW " $BACKUP_GW >> $FAILOVER_LOG


# Comparaison défault GW actuelle avec celle donnée en argument
gateway_if() {
[[ "$1" = "$(ip route get "$CHECK_IP" | grep dev | cut -d ' ' -f5 )" ]]
}


# boucle continue de vérification de la connectivité sur primary
while true
do
  if gateway_if "$BACKUP_IF"
then
  ip route add "$CHECK_IP" via "$PRIMARY_GW" dev "$PRIMARY_IF"
  PING_PRIMARY_IF=$( ping -I "$PRIMARY_IF" -c1 "$CHECK_IP"|grep
'packet loss'|cut -d ' ' -f4)
  ip route del "$CHECK_IP" via "$PRIMARY_GW" dev "$PRIMARY_IF"
else
  PING_PRIMARY_IF=$(ping -I "$PRIMARY_IF" -c1 "$CHECK_IP"|grep
'packet loss'|cut -d ' ' -f4)
  fi

  if [ $PING_PRIMARY_IF -eq 1 ]
#   succès de verif interface primaire
then
#   On est sur backup?
  if gateway_if "$BACKUP_IF"
then
#   Switch sur primary
date  >> $FAILOVER_LOG
echo "GW "$BACKUP_GW "=> "$PRIMARY_GW  >> $FAILOVER_LOG
echo "INTERFACE "$BACKUP_IF "=> "$PRIMARY_IF >> $FAILOVER_LOG
  ip route del default via "$BACKUP_GW" dev "$BACKUP_IF"
  ip route add default via "$PRIMARY_GW" dev "$PRIMARY_IF"
  fi
else
#  echec de verif interface primaire
# On est sur  primary?
  if gateway_if "$PRIMARY_IF"
then

# Switch sur backup
  ip route del default via "$PRIMARY_GW" dev "$PRIMARY_IF"
  ip route add default via "$BACKUP_GW" dev "$BACKUP_IF"
date  >> $FAILOVER_LOG
echo "GW "$PRIMARY_GW "=> "$BACKUP_GW >> $FAILOVER_LOG
echo "INTERFACE "$PRIMARY_IF "=> "$BACKUP_IF >> $FAILOVER_LOG
  fi
# la primary est down et on est dèjà sur la backup
# du coup on espère que la backup est UP  
  fi
sleep "$CHECK_DELAY"
done

---fin-

En gros on ping sur l'interface usuelle, si ça foire on passe sur
l'interface de backup en adaptant la table de routage.
Si l'interface usuelle remonte, on switch de nouveau.

Si on NAT (c'est probable) il faut ajouter les règles utiles (iptables
ou nftables)

> 
> Quel modèle vous a satisfait ?
> 
J'ai un routeur ZYXEL LTE490-M904 sur la façade qui fonctionne pas mal,
mais qui n'est pas donné
> 
> PS : Je ne dispose pas d'info des opérateurs pour déterminer si un
> tel appareil saurait remplacer le modem FO de l'opérateur et
> communiquer avec le serveur FO de l'opérateur.
> Je dirais plutôt que non (protocole proprio ?)
> Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de
> votre opérateur ?
> 
Me contente d'une box...
> Merci.
De rien,
Christophe



Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-15 Par sujet NoSpam

Bonjour

Le 15/06/2023 à 10:52, RogerT a écrit :

Bonjour,

Tu connectes donc sans souci le modem FO de l’opérateur avec ton 
propre routeur.

Est-ce toujours possible ?

Non
(j’imaginais que l’opérateur créait une relation propriétaire entre 
son modem et son routeur).


Quel modèle de routeur netgate (qui embarque pfsense) t’a satisfait ?

Merci.


Le 15 juin 2023 à 07:33, Benoit Szczygiel  a écrit :


Bonjour,
Remplacer le routeur opérateur n'est pas un problème, c'est ce que je 
fais depuis longtemps.
Pour le logiciel, j'utilise pfsense et pour me simplifier les choses, 
j'ai un routeur netgate qui l'embarque.

Bonne journée


Le 14 juin 2023 18:39:07 GMT+02:00, Sabri KHEMISSA 
 a écrit :


Bonjour,

Je te suggère d'installer opnsense https://opnsense.org/ sur ton PC.

La solution répond à tes deux besoins : WAN Failover et VPN (au
choix VPN SSL ou IPSec)

A mon sens, tu ne pourras pas remplacer le routeur opérateur.
Prévoir du NAT au niveau de ton routeur pour le VPN (il te faudra
une IP fixe sur Internet ou faire du DynDNS, le cas échéant).

Bonne soirée,
/Sabri

Le mer. 14 juin 2023 à 17:46,  a écrit :

Bonjour,

J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
Si le lien principal (FO) tombe, alors l'autre lien 4G prend
le relais automatiquement.
Si le lien principal revient, alors c'est lui qui va
reprendre le relais.

Le dispositif du commerce doit s'appeler un HA dual WAN
router. Et il intègre souvent un VPN.

Je ne veux plus dépendre d'un seul opérateur dont la ligne ou
le matériel peut être défaillant. Et dont l'équipement
détient tous mes réglages (routage de ports/NAT).

J'aimerais en réaliser un avec un PC debian équipé des
matériels et logiciels nécessaires.
(Mon expérience du Raspberry me fait oublier cette solution :
sur le long terme, mes cartes flash "haut de gamme" n'ont
jamais tenu)

Je dispose :
- d'un modem FO (interface Ethernet) et d'un routeur
Ethernet/WiFi d'un opérateur.
IMPORTANT : j'ignore si le routeur de l'opérateur peut être
remplacé par n'importe quel routeur !
- d'un modem 4G avec une interface WiFi+USB (j'attends un
modem qui ait aussi une interface Ethernet)
- d'un PC qui a trois interfaces réseau (2 Ethernet et 1
WiFi) ; logiquement, il lui faudrait 3 cartes réseau...

Je sais que c'est théoriquement possible de faire ça. Ce doit
être du routage de flux conditionnel (sur l'état des liens).
Et je sais par expérience dans un domaine approché que ça
doit être rapide ou tès long à réaliser.
Surtout que je n'ai pas d'expérience.

Schéma de connexion au PC :
modem 4G /WiFi+USB [+Ethernet] connecté au PC en USB (ou en
WiFi)  [ou en Ethernet s'il a tel port]
modem FO connecté en Ethernet au PC
Routeur Ethernet connecté au PC = routeur du LAN

Etes-vous d'accord pour ce schéma de câblage matériel ?


Ensuite... Comment dois-je procéder sur le plan logiciel ?
Je souhaite aussi que ce PC assure le VPN, de façon à
m'affranchir de toute configuration chez l'opérateur.
Existe-t-il un paquet debian qui fasse tout ça ?


Enfin, si vous connaissez bien cette application, peut-être
recommanderez-vous d'acheter un appareil du marché (carte
robuste et compacte) qui fait ça tout seul :
- modem 4G avec carte SIM
- routeur Ethernet pour y connecter le modem FO/ADSL de
l'opérateur
- VPN openVPN/IPsec
Quel modèle vous a satisfait ?


PS : Je ne dispose pas d'info des opérateurs pour déterminer
si un tel appareil saurait remplacer le modem FO de
l'opérateur et communiquer avec le serveur FO de l'opérateur.
Je dirais plutôt que non (protocole proprio ?)
Avez-vous déjà réussi à utiliser votre propre modem FO au
réseau de votre opérateur ?

Merci.

Benoît szczygiel

Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-15 Par sujet RogerT
Bonjour,

Tu connectes donc sans souci le modem FO de l’opérateur avec ton propre 
routeur. 
Est-ce toujours possible ?
(j’imaginais que l’opérateur créait une relation propriétaire entre son modem 
et son routeur). 

Quel modèle de routeur netgate (qui embarque pfsense) t’a satisfait ?

Merci. 

> Le 15 juin 2023 à 07:33, Benoit Szczygiel  a écrit :
> 
> 
> Bonjour,
> Remplacer le routeur opérateur n'est pas un problème, c'est ce que je fais 
> depuis longtemps.
> Pour le logiciel, j'utilise pfsense et pour me simplifier les choses, j'ai un 
> routeur netgate qui l'embarque.
> Bonne journée
> 
> 
> Le 14 juin 2023 18:39:07 GMT+02:00, Sabri KHEMISSA  
> a écrit :
>> Bonjour,
>> 
>> Je te suggère d'installer opnsense https://opnsense.org/ sur ton PC.
>> 
>> La solution répond à tes deux besoins : WAN Failover et VPN (au choix VPN 
>> SSL ou IPSec) 
>> 
>> A mon sens, tu ne pourras pas remplacer le routeur opérateur. Prévoir du NAT 
>> au niveau de ton routeur pour le VPN (il te faudra une IP fixe sur Internet 
>> ou faire du DynDNS, le cas échéant).
>> 
>> Bonne soirée,
>> /Sabri 
>> 
>>> Le mer. 14 juin 2023 à 17:46,  a écrit :
>>> Bonjour,
>>> 
>>> J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
>>> Si le lien principal (FO) tombe, alors l'autre lien 4G prend le relais 
>>> automatiquement.
>>> Si le lien principal revient, alors c'est lui qui va reprendre le relais.
>>> 
>>> Le dispositif du commerce doit s'appeler un HA dual WAN router. Et il 
>>> intègre souvent un VPN.
>>> 
>>> Je ne veux plus dépendre d'un seul opérateur dont la ligne ou le matériel 
>>> peut être défaillant. Et dont l'équipement détient tous mes réglages 
>>> (routage de ports/NAT).
>>> 
>>> J'aimerais en réaliser un avec un PC debian équipé des matériels et 
>>> logiciels nécessaires.
>>> (Mon expérience du Raspberry me fait oublier cette solution : sur le long 
>>> terme, mes cartes flash "haut de gamme" n'ont jamais tenu)
>>> 
>>> Je dispose :
>>> - d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi d'un 
>>> opérateur.
>>> IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé par 
>>> n'importe quel routeur !
>>> - d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui ait 
>>> aussi une interface Ethernet)
>>> - d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ; 
>>> logiquement, il lui faudrait 3 cartes réseau...
>>> 
>>> Je sais que c'est théoriquement possible de faire ça. Ce doit être du 
>>> routage de flux conditionnel (sur l'état des liens).
>>> Et je sais par expérience dans un domaine approché que ça doit être rapide 
>>> ou tès long à réaliser.
>>> Surtout que je n'ai pas d'expérience.
>>> 
>>> Schéma de connexion au PC :
>>> modem 4G /WiFi+USB [+Ethernet] connecté au PC en USB (ou en WiFi)  [ou en 
>>> Ethernet s'il a tel port]
>>> modem FO connecté en Ethernet au PC
>>> Routeur Ethernet connecté au PC = routeur du LAN
>>> 
>>> Etes-vous d'accord pour ce schéma de câblage matériel ?
>>> 
>>> 
>>> Ensuite... Comment dois-je procéder sur le plan logiciel ?
>>> Je souhaite aussi que ce PC assure le VPN, de façon à m'affranchir de toute 
>>> configuration chez l'opérateur.
>>> Existe-t-il un paquet debian qui fasse tout ça ?
>>> 
>>> 
>>> Enfin, si vous connaissez bien cette application, peut-être 
>>> recommanderez-vous d'acheter un appareil du marché (carte robuste et 
>>> compacte) qui fait ça tout seul :
>>> - modem 4G avec carte SIM
>>> - routeur Ethernet pour y connecter le modem FO/ADSL de l'opérateur
>>> - VPN openVPN/IPsec
>>> Quel modèle vous a satisfait ?
>>> 
>>> 
>>> PS : Je ne dispose pas d'info des opérateurs pour déterminer si un tel 
>>> appareil saurait remplacer le modem FO de l'opérateur et communiquer avec 
>>> le serveur FO de l'opérateur.
>>> Je dirais plutôt que non (protocole proprio ?)
>>> Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de votre 
>>> opérateur ?
>>> 
>>> Merci.
> 
> Benoît szczygiel


Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-14 Par sujet Benoit Szczygiel
Bonjour,
Remplacer le routeur opérateur n'est pas un problème, c'est ce que je fais 
depuis longtemps.
Pour le logiciel, j'utilise pfsense et pour me simplifier les choses, j'ai un 
routeur netgate qui l'embarque.
Bonne journée

Le 14 juin 2023 18:39:07 GMT+02:00, Sabri KHEMISSA  a 
écrit :
>Bonjour,
>
>Je te suggère d'installer opnsense https://opnsense.org/ sur ton PC.
>
>La solution répond à tes deux besoins : WAN Failover et VPN (au choix VPN
>SSL ou IPSec)
>
>A mon sens, tu ne pourras pas remplacer le routeur opérateur. Prévoir du
>NAT au niveau de ton routeur pour le VPN (il te faudra une IP fixe sur
>Internet ou faire du DynDNS, le cas échéant).
>
>Bonne soirée,
>/Sabri
>
>Le mer. 14 juin 2023 à 17:46,  a écrit :
>
>> Bonjour,
>>
>> J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
>> Si le lien principal (FO) tombe, alors l'autre lien 4G prend le relais
>> automatiquement.
>> Si le lien principal revient, alors c'est lui qui va reprendre le relais.
>>
>> Le dispositif du commerce doit s'appeler un HA dual WAN router. Et il
>> intègre souvent un VPN.
>>
>> Je ne veux plus dépendre d'un seul opérateur dont la ligne ou le matériel
>> peut être défaillant. Et dont l'équipement détient tous mes réglages
>> (routage de ports/NAT).
>>
>> J'aimerais en réaliser un avec un PC debian équipé des matériels et
>> logiciels nécessaires.
>> (Mon expérience du Raspberry me fait oublier cette solution : sur le long
>> terme, mes cartes flash "haut de gamme" n'ont jamais tenu)
>>
>> Je dispose :
>> - d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi d'un
>> opérateur.
>> IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé par
>> n'importe quel routeur !
>> - d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui ait
>> aussi une interface Ethernet)
>> - d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ;
>> logiquement, il lui faudrait 3 cartes réseau...
>>
>> Je sais que c'est théoriquement possible de faire ça. Ce doit être du
>> routage de flux conditionnel (sur l'état des liens).
>> Et je sais par expérience dans un domaine approché que ça doit être rapide
>> ou tès long à réaliser.
>> Surtout que je n'ai pas d'expérience.
>>
>> Schéma de connexion au PC :
>> modem 4G /WiFi+USB [+Ethernet] connecté au PC en USB (ou en WiFi)  [ou en
>> Ethernet s'il a tel port]
>> modem FO connecté en Ethernet au PC
>> Routeur Ethernet connecté au PC = routeur du LAN
>>
>> Etes-vous d'accord pour ce schéma de câblage matériel ?
>>
>>
>> Ensuite... Comment dois-je procéder sur le plan logiciel ?
>> Je souhaite aussi que ce PC assure le VPN, de façon à m'affranchir de
>> toute configuration chez l'opérateur.
>> Existe-t-il un paquet debian qui fasse tout ça ?
>>
>>
>> Enfin, si vous connaissez bien cette application, peut-être
>> recommanderez-vous d'acheter un appareil du marché (carte robuste et
>> compacte) qui fait ça tout seul :
>> - modem 4G avec carte SIM
>> - routeur Ethernet pour y connecter le modem FO/ADSL de l'opérateur
>> - VPN openVPN/IPsec
>> Quel modèle vous a satisfait ?
>>
>>
>> PS : Je ne dispose pas d'info des opérateurs pour déterminer si un tel
>> appareil saurait remplacer le modem FO de l'opérateur et communiquer avec
>> le serveur FO de l'opérateur.
>> Je dirais plutôt que non (protocole proprio ?)
>> Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de votre
>> opérateur ?
>>
>> Merci.
>>

Benoît szczygiel

Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-14 Par sujet Christophe Maquaire
Le mercredi 14 juin 2023 à 17:46 +0200, roger.tar...@free.fr a écrit :
> Bonjour,
> 
Bonjour,
> J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
> Si le lien principal (FO) tombe, alors l'autre lien 4G prend le
> relais automatiquement.
> Si le lien principal revient, alors c'est lui qui va reprendre le
> relais.
> 
> J'aimerais en réaliser un avec un PC debian équipé des matériels et
> logiciels nécessaires.
> (Mon expérience du Raspberry me fait oublier cette solution : sur le
> long terme, mes cartes flash "haut de gamme" n'ont jamais tenu)
> 
> Je dispose :
> - d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi
> d'un opérateur.
> IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé
> par n'importe quel routeur !
> - d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui
> ait aussi une interface Ethernet)
>  - d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ;
> logiquement, il lui faudrait 3 cartes réseau...
> 
> Je sais que c'est théoriquement possible de faire ça. Ce doit être du
> routage de flux conditionnel (sur l'état des liens).
> Et je sais par expérience dans un domaine approché que ça doit être
> rapide ou tès long à réaliser.
> Surtout que je n'ai pas d'expérience.
> 
J'ai un script récupéré je ne sais plus où et adapté à mes besoins qui
fait çà en IPv4

---début
#!/bin/bash

# variables (eventuellement passees par ENV)

CHECK_DELAY=${CHECK_DELAY:-5}
CHECK_IP=${CHECK_IP:-1.1.1.1}
PRIMARY_IF=${PRIMARY_IF:-enp3s0f0}
PRIMARY_GW=${PRIMARY_GW:-192.168.1.254}
BACKUP_IF=${BACKUP_IF:-enp4s0f1}
BACKUP_GW=${BACKUP_GW:-192.168.2.254}
FAILOVER_LOG=${FAILOVER_LOG:-/var/log/failover.log}

date >> $FAILOVER_LOG
echo "CHECK_DELAY " $CHECK_DELAY >> $FAILOVER_LOG
echo "CHECK_IP " $CHECK_IP >> $FAILOVER_LOG
echo "PRIMARY_IF "$PRIMARY_IF >> $FAILOVER_LOG
echo "PRIMARY_GW " $PRIMARY_GW >> $FAILOVER_LOG
echo "BACKUP_IF " $BACKUP_IF >> $FAILOVER_LOG
echo "BACKUP_GW " $BACKUP_GW >> $FAILOVER_LOG


# Comparaison défault GW actuelle avec celle donnée en argument
gateway_if() {
[[ "$1" = "$(ip route get "$CHECK_IP" | grep dev | cut -d ' ' -f5 )" ]]
}


# boucle continue de vérification de la connectivité sur primary
while true
do
  if gateway_if "$BACKUP_IF"
then
  ip route add "$CHECK_IP" via "$PRIMARY_GW" dev "$PRIMARY_IF"
  PING_PRIMARY_IF=$( ping -I "$PRIMARY_IF" -c1 "$CHECK_IP"|grep
'packet loss'|cut -d ' ' -f4)
  ip route del "$CHECK_IP" via "$PRIMARY_GW" dev "$PRIMARY_IF"
else
  PING_PRIMARY_IF=$(ping -I "$PRIMARY_IF" -c1 "$CHECK_IP"|grep
'packet loss'|cut -d ' ' -f4)
  fi

  if [ $PING_PRIMARY_IF -eq 1 ]
#   succès de verif interface primaire
then
#   On est sur backup?
  if gateway_if "$BACKUP_IF"
then
#   Switch sur primary
date  >> $FAILOVER_LOG
echo "GW "$BACKUP_GW "=> "$PRIMARY_GW  >> $FAILOVER_LOG
echo "INTERFACE "$BACKUP_IF "=> "$PRIMARY_IF >> $FAILOVER_LOG
  ip route del default via "$BACKUP_GW" dev "$BACKUP_IF"
  ip route add default via "$PRIMARY_GW" dev "$PRIMARY_IF"
  fi
else
#  echec de verif interface primaire
# On est sur  primary?
  if gateway_if "$PRIMARY_IF"
then

# Switch sur backup
  ip route del default via "$PRIMARY_GW" dev "$PRIMARY_IF"
  ip route add default via "$BACKUP_GW" dev "$BACKUP_IF"
date  >> $FAILOVER_LOG
echo "GW "$PRIMARY_GW "=> "$BACKUP_GW >> $FAILOVER_LOG
echo "INTERFACE "$PRIMARY_IF "=> "$BACKUP_IF >> $FAILOVER_LOG
  fi
# la primary est down et on est dèjà sur la backup
# du coup on espère que la backup est UP  
  fi
sleep "$CHECK_DELAY"
done

---fin-

En gros on ping sur l'interface usuelle, si ça foire on passe sur
l'interface de backup en adaptant la table de routage.
Si l'interface usuelle remonte, on switch de nouveau.

Si on NAT (c'est probable) il faut ajouter les règles utiles (iptables
ou nftables)

> 
> Quel modèle vous a satisfait ?
> 
J'ai un routeur ZYXEL LTE490-M904 sur la façade qui fonctionne pas mal,
mais qui n'est pas donné
> 
> PS : Je ne dispose pas d'info des opérateurs pour déterminer si un
> tel appareil saurait remplacer le modem FO de l'opérateur et
> communiquer avec le serveur FO de l'opérateur.
> Je dirais plutôt que non (protocole proprio ?)
> Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de
> votre opérateur ?
> 
Me contente d'une box...
> Merci.
De rien,
Christophe



Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-14 Par sujet Sabri KHEMISSA
Bonjour,

Je te suggère d'installer opnsense https://opnsense.org/ sur ton PC.

La solution répond à tes deux besoins : WAN Failover et VPN (au choix VPN
SSL ou IPSec)

A mon sens, tu ne pourras pas remplacer le routeur opérateur. Prévoir du
NAT au niveau de ton routeur pour le VPN (il te faudra une IP fixe sur
Internet ou faire du DynDNS, le cas échéant).

Bonne soirée,
/Sabri

Le mer. 14 juin 2023 à 17:46,  a écrit :

> Bonjour,
>
> J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
> Si le lien principal (FO) tombe, alors l'autre lien 4G prend le relais
> automatiquement.
> Si le lien principal revient, alors c'est lui qui va reprendre le relais.
>
> Le dispositif du commerce doit s'appeler un HA dual WAN router. Et il
> intègre souvent un VPN.
>
> Je ne veux plus dépendre d'un seul opérateur dont la ligne ou le matériel
> peut être défaillant. Et dont l'équipement détient tous mes réglages
> (routage de ports/NAT).
>
> J'aimerais en réaliser un avec un PC debian équipé des matériels et
> logiciels nécessaires.
> (Mon expérience du Raspberry me fait oublier cette solution : sur le long
> terme, mes cartes flash "haut de gamme" n'ont jamais tenu)
>
> Je dispose :
> - d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi d'un
> opérateur.
> IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé par
> n'importe quel routeur !
> - d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui ait
> aussi une interface Ethernet)
> - d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ;
> logiquement, il lui faudrait 3 cartes réseau...
>
> Je sais que c'est théoriquement possible de faire ça. Ce doit être du
> routage de flux conditionnel (sur l'état des liens).
> Et je sais par expérience dans un domaine approché que ça doit être rapide
> ou tès long à réaliser.
> Surtout que je n'ai pas d'expérience.
>
> Schéma de connexion au PC :
> modem 4G /WiFi+USB [+Ethernet] connecté au PC en USB (ou en WiFi)  [ou en
> Ethernet s'il a tel port]
> modem FO connecté en Ethernet au PC
> Routeur Ethernet connecté au PC = routeur du LAN
>
> Etes-vous d'accord pour ce schéma de câblage matériel ?
>
>
> Ensuite... Comment dois-je procéder sur le plan logiciel ?
> Je souhaite aussi que ce PC assure le VPN, de façon à m'affranchir de
> toute configuration chez l'opérateur.
> Existe-t-il un paquet debian qui fasse tout ça ?
>
>
> Enfin, si vous connaissez bien cette application, peut-être
> recommanderez-vous d'acheter un appareil du marché (carte robuste et
> compacte) qui fait ça tout seul :
> - modem 4G avec carte SIM
> - routeur Ethernet pour y connecter le modem FO/ADSL de l'opérateur
> - VPN openVPN/IPsec
> Quel modèle vous a satisfait ?
>
>
> PS : Je ne dispose pas d'info des opérateurs pour déterminer si un tel
> appareil saurait remplacer le modem FO de l'opérateur et communiquer avec
> le serveur FO de l'opérateur.
> Je dirais plutôt que non (protocole proprio ?)
> Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de votre
> opérateur ?
>
> Merci.
>


Re: Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-14 Par sujet NoSpam

Bonjour

Le 14/06/2023 à 17:46, roger.tar...@free.fr a écrit :

Bonjour,

J'ai besoin de disposer d'un lien internet redondant (FO+ 4G).
Si le lien principal (FO) tombe, alors l'autre lien 4G prend le relais 
automatiquement.

Si le lien principal revient, alors c'est lui qui va reprendre le relais.

Le dispositif du commerce doit s'appeler un HA dual WAN router. Et il 
intègre souvent un VPN.


Je ne veux plus dépendre d'un seul opérateur dont la ligne ou le 
matériel peut être défaillant. Et dont l'équipement détient tous mes 
réglages (routage de ports/NAT).


J'aimerais en réaliser un avec un PC debian équipé des matériels et 
logiciels nécessaires.
(Mon expérience du Raspberry me fait oublier cette solution : sur le 
long terme, mes cartes flash "haut de gamme" n'ont jamais tenu)


Je dispose :
- d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi 
d'un opérateur.
IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé 
par n'importe quel routeur !
- d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui 
ait aussi une interface Ethernet)
- d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ; 
logiquement, il lui faudrait 3 cartes réseau...


Je sais que c'est théoriquement possible de faire ça. Ce doit être du 
routage de flux conditionnel (sur l'état des liens).
Et je sais par expérience dans un domaine approché que ça doit être 
rapide ou tès long à réaliser.

Surtout que je n'ai pas d'expérience.

Schéma de connexion au PC :
modem 4G /WiFi+USB [+Ethernet] connecté au PC en USB (ou en WiFi)  [ou 
en Ethernet s'il a tel port]

modem FO connecté en Ethernet au PC
Routeur Ethernet connecté au PC = routeur du LAN

Pourquoi rajouter un routeru puisque le PC peut faire ce job


Etes-vous d'accord pour ce schéma de câblage matériel ?


Ensuite... Comment dois-je procéder sur le plan logiciel ?
Je souhaite aussi que ce PC assure le VPN, de façon à m'affranchir de 
toute configuration chez l'opérateur.

Existe-t-il un paquet debian qui fasse tout ça ?


Non.

Déjà le routeur FO peut il être en mode pont ? Si non, il faut créer un 
réseau entre le PC et ce routeur.

Même question concernant le point WIFI.



Enfin, si vous connaissez bien cette application, peut-être 
recommanderez-vous d'acheter un appareil du marché (carte robuste et 
compacte) qui fait ça tout seul :

- modem 4G avec carte SIM
- routeur Ethernet pour y connecter le modem FO/ADSL de l'opérateur
- VPN openVPN/IPsec
Quel modèle vous a satisfait ?
L'ANSSI recommande de ne PAS mettre le VPN sur le FW mais derrière. 
Concernant le VPN wireguard sans hésiter.



PS : Je ne dispose pas d'info des opérateurs pour déterminer si un tel 
appareil saurait remplacer le modem FO de l'opérateur et communiquer 
avec le serveur FO de l'opérateur.

Je dirais plutôt que non (protocole proprio ?)
Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de 
votre opérateur ?


Regarde sur la fibre.info, tu y trouveras des tonnes d'informations

Ma configuration: 2 FTTH, FREE pas de mode pont donc réseau 192.168.x.y, 
Operateur Pro en mode pont. les 2 routeurs sont connectés à un switch, 
chacun son VLAN. Le serveur (Debian11) gère tous les liens VLAN et 
possède 2 machines virtuelles: UTM Sophos (licence gratuite pour 
utilisation privée) et une VM routeur. L'UTM Sophos récupère tous les 
flux, elle fait office de FW. La seconde VM fait le routage pour le LAN, 
serveur DHCP, gère les VPN, sites Internet, etc.


Lorsque l'un des liens tombe, l'UTM bascule le flux sur le second. Je 
fais de la répartition en faisant sortir certains PC/flux/services par 
opérateur.


--
Daniel


Faire un routeur HA dual WAN (+ VPN) avec un PC sous debian

2023-06-14 Par sujet roger . tarani
Bonjour, 

J'ai besoin de disposer d'un lien internet redondant (FO+ 4G). 
Si le lien principal (FO) tombe, alors l'autre lien 4G prend le relais 
automatiquement. 
Si le lien principal revient, alors c'est lui qui va reprendre le relais. 

Le dispositif du commerce doit s'appeler un HA dual WAN router. Et il intègre 
souvent un VPN. 

Je ne veux plus dépendre d'un seul opérateur dont la ligne ou le matériel peut 
être défaillant. Et dont l'équipement détient tous mes réglages (routage de 
ports/NAT). 

J'aimerais en réaliser un avec un PC debian équipé des matériels et logiciels 
nécessaires. 
(Mon expérience du Raspberry me fait oublier cette solution : sur le long 
terme, mes cartes flash "haut de gamme" n'ont jamais tenu) 

Je dispose : 
- d'un modem FO (interface Ethernet) et d'un routeur Ethernet/WiFi d'un 
opérateur. 
IMPORTANT : j'ignore si le routeur de l'opérateur peut être remplacé par 
n'importe quel routeur ! 
- d'un modem 4G avec une interface WiFi+USB (j'attends un modem qui ait aussi 
une interface Ethernet) 
- d'un PC qui a trois interfaces réseau (2 Ethernet et 1 WiFi) ; logiquement, 
il lui faudrait 3 cartes réseau... 

Je sais que c'est théoriquement possible de faire ça. Ce doit être du routage 
de flux conditionnel (sur l'état des liens). 
Et je sais par expérience dans un domaine approché que ça doit être rapide ou 
tès long à réaliser. 
Surtout que je n'ai pas d'expérience. 

Schéma de connexion au PC : 
modem 4G /WiFi+USB [+Ethernet] connecté au PC en USB (ou en WiFi) [ou en 
Ethernet s'il a tel port] 
modem FO connecté en Ethernet au PC 
Routeur Ethernet connecté au PC = routeur du LAN 

Etes-vous d'accord pour ce schéma de câblage matériel ? 


Ensuite... Comment dois-je procéder sur le plan logiciel ? 
Je souhaite aussi que ce PC assure le VPN, de façon à m'affranchir de toute 
configuration chez l'opérateur. 
Existe-t-il un paquet debian qui fasse tout ça ? 


Enfin, si vous connaissez bien cette application, peut-être recommanderez-vous 
d'acheter un appareil du marché (carte robuste et compacte) qui fait ça tout 
seul : 
- modem 4G avec carte SIM 
- routeur Ethernet pour y connecter le modem FO/ADSL de l'opérateur 
- VPN openVPN/IPsec 
Quel modèle vous a satisfait ? 


PS : Je ne dispose pas d'info des opérateurs pour déterminer si un tel appareil 
saurait remplacer le modem FO de l'opérateur et communiquer avec le serveur FO 
de l'opérateur. 
Je dirais plutôt que non (protocole proprio ?) 
Avez-vous déjà réussi à utiliser votre propre modem FO au réseau de votre 
opérateur ? 

Merci.