Aller au contenu

kcahna

Membres
  • Compteur de contenus

    15
  • Inscription

  • Dernière visite

À propos de kcahna

Visiteurs récents du profil

1242 visualisations du profil

kcahna's Achievements

Newbie

Newbie (1/14)

0

Réputation sur la communauté

  1. Pour la boucle infinie, tu as entièrement raison, c'est une possibilité. J'ai fait le choix de partir sur une tache planifiée car je ne suis pas fan d'un ping en continue vers google.com et que je suis assez convaincu que le déclenchement par ip-down est suffisant. D'autre part, je ne fais pas d'exec toutes les minutes du dernier script. Le premier (TSK-testVpnForDecoDLStation.sh) tourne bien toutes les minutes, je l'ai mis en place en cas d'anomalie sur la ligne VPN qui n'engendrerait pas d'ip-down et qui pourrait faire basculer DLStation sur la route avec mon IP Publique, c'est très peu probable que ce cas de figure se présente mais j'ai décidé par sécurité de le mettre en place (d'autant que l'interface VPN elle-même met bien 45 secondes à se rendre compte d'une anomalie sur la ligne avant de se déconnecter - testé en déconnectant la ligne ADSL chez moi). Le second script (TSK-testVpnForRecoDLStation.sh) tourne toutes les 2 heures (et non toutes les minutes), plutôt au cas ou le VPN remonte (ou que je l'ai relancé manuellement) et que DLStation ne s'est pas relancé pour je ne sais quelle raison (ce dernier n'est surement pas nécessaire non plus mais il ne coûte pas grand chose...). Merci !
  2. Synthèse de la solution mise en oeuvre : Au final j'ai 4 scripts (certainement possibilité de factoriser). J'ai volontairement enlevé les reconnexions et kill automatiques du VPN (synovpnc)en cas de problème (le service VPN que j'utilise est très stable). Si le répertoire public n'existe pas, il y a juste à le créer. Ne pas oublier de faire un "chmod +x <script>" pour chacun des scripts afin qu'ils soient exécutables. # 1 - "/volume1/public/DownloadStationStart.sh" dont j'ordonne le lancement depuis le script système "/etc/ppp/ip-up" avec la simple ligne de commande ./volume1/public/DownloadStationStart.sh # 2 - "/volume1/public/DownloadStationStop.sh" dont j'ordonne le lancement depuis le script système "/etc/ppp/ip-down" script (en début de script) avec la simple ligne de commande ./volume1/public/DownloadStationStop.sh # 3 - "/volume1/public/TSK-testVpnForDecoDLStation.sh" dont j'ordonne le lancement par une tâche planifiée toutes les minutes # 4 - "/volume1/public/TSK-testVpnForRecoDLStation.sh" dont j'ordonne le lancement par une tâche planifiée toutes les heures Il faut éventuellement modifier la valeur "ppp0" dans les scripts en fonction du protocole VPN que vous utilisez. CODE DE DownloadStationStart.sh : #!/bin/ash # DLStation DLStation="/var/packages/DownloadStation/scripts/start-stop-status" #VPN interface interface_vpn="ppp0" # Log file logfile="/volume1/public/vpn.log" ############### START SCRIPT ################### if [ -n "$(ifconfig | grep "$interface_vpn")" ] && [ -z "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ]; then echo $(date) ": Interface " $interface_vpn " found" >> $logfile #VPN Connection is Ok, starting Download station echo $(date) ": DownloadStation starting..." >> $logfile $DLStation start if [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ]; then echo $(date) ": DownloadStation successfully started" >> $logfile else echo $(date) ": ERROR, DownloadStation is still OFF" >> $logfile fi fi exit 0; CODE DE DownloadStationStop.sh : #!/bin/ash # DLStation DLStation="/var/packages/DownloadStation/scripts/start-stop-status" #VPN interface interface_vpn="ppp0" # Log file logfile="/volume1/public/vpn.log" ############### START SCRIPT ################### if [ -z "$(ifconfig | grep "$interface_vpn")" ] && [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ]; then echo $(date) ": VPN not started, DS Dodwnload stopping" >> $logfile #No VPN, Stop Download station $DLStation stop if [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ] ; then echo $(date) ": ERROR, DownloadStation is still on" >> $logfile else echo $(date) ": DownloadStation successfully stopped" >> $logfile fi fi exit 0; CODE DE TSK-testVpnForDecoDLStation.sh : #!/bin/ash # DLStation DLStation="/var/packages/DownloadStation/scripts/start-stop-status" #VPN interface interface_vpn="ppp0" # Log file logfile="/volume1/public/vpn.log" ############### START SCRIPT ################### # Test existance interface VPN, DLStation, Ping if [ -n "$(ifconfig | grep "$interface_vpn")" ] && [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ] && [ -z "$(ping -c 4 -I "$interface_vpn" www.google.fr | grep "64 bytes")" ]; then echo $(date) ": ISSUE : VPN started, DS Dodwnload started, ping google KO, DLStation stopping..." >> $logfile $DLStation stop if [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ] ; then echo $(date) ": ERROR, DownloadStation is still ON" >> $logfile else echo $(date) ": DownloadStation successfully stopped" >> $logfile fi elif [ -z "$(ifconfig | grep "$interface_vpn")" ] && [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ]; then echo $(date) ": ISSUE : VPN not started, DS Dodwnload started, DLStation Stopping..." >> $logfile $DLStation stop if [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ] ; then echo $(date) : "ERROR, DownloadStation is still ON" >> $logfile else echo $(date) ": DownloadStation successfully stopped" >> $logfile fi fi exit 0; CODE DE TSK-testVpnForRecoDLStation.sh : #!/bin/ash # DLStation DLStation="/var/packages/DownloadStation/scripts/start-stop-status" #VPN interface interface_vpn="ppp0" # Log file logfile="/volume1/public/vpn.log" ############### START SCRIPT ################### # Test existance interface VPN, DLStation, Ping if [ -n "$(ifconfig | grep "$interface_vpn")" ] && [ -z "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ] && [ -n "$(ping -c 4 -I "$interface_vpn" www.google.fr | grep "64 bytes")" ]; then echo $(date) ": VPN started, DS Dodwnload stopped, ping google OK, DLStation Starting..." >> $logfile $DLStation start if [ -n "$(ps | grep -v "grep" | grep "/sbin/scheduler")" ] ; then echo $(date) ": DownloadStation successfully started" >> $logfile else echo $(date) ": ERROR, DownloadStation is still stopped" >> $logfile fi fi exit 0;
  3. Bon, c'était en fait tout simple, afin de ne pas perturber le script ip-down en cas d'erreur sur mes scripts "perso", j'avais inséré dans ip-down mes commandes en fin de script mais en cas d'anomalie sur le lien VPN, le script ip-down n'allait pas jusqu'à la fin de son exécution (et donc ne lançait pas l'arrêt de DLStation). J'ai donc inséré l'appel au script "perso" en début d'exécution d'ip-down et cela fonctionne. j'ai donc à priori à coup sûr, un arrêt de DLStation lorsque le lien VPN ne fonctionne pas et un démarrage du DLStation automatique lorsque la ligne VPN se connecte. J'ai quand même, par souci de sécurité, une tache planifiée qui tourne toutes les minutes pour couper DLStation si besoin (mais vraiment pas sûr que cela soit utile). Merci et A+
  4. EDIT J'ai essayé une autre solution que m'a soufflée PiwiLAbruti et qui consiste à lancer ces commandes depuis les scripts /etc/ppp/ip-down et ip-up qui sont lancés automatiquement par le système. En effet, en tâche planifiée toutes les minutes, ce script laisse le temps à DLStation de se reconnecter à travers l'IP publique de ma freebox. Cette solution fonctionne bien lorsque je fais des connexions et déconnexions manuelles du VPN depuis l'interface DSM. Cependant, si je simule une erreur sur le chemin VPN en déconnectant manuellement le câble de l'ADSL, l'interface tombe (plus d'interface ppp0 dans ifconfig) mais le script /etc/ppp/ip-down n'est pas lancé par le système... Quelqu'un connait-il une solution pour détecter de manière rapide un problème sur la ligne VPN ? (sans tâche planifiée) Merci !
  5. Hello, Merci pour le travail sur ce script :) 1 - Il me semble qu'il serait judicieux de préciser l'interface utilisée lors du test du ping google. En effet, le ping peut fonctionner grâce à toute autre interface opérationnelle (ETH0 par exemple). Du coup cela donnerait : if [ -z "$(ping -c 4 -I " $interface_vpn " www.google.fr | grep "64 bytes")" ] && [ -n "$(ifconfig | grep "$interface_vpn")" ]; then 2 - Le choix entre l'option connect ou reconnect de la commande synovpnc n'est pas très claire pour moi. Dans le script en page 1, reconnect est utilisé et, à partir de la page 2, reconnect est utilisé. Du coup, je ne sais trop lequel choisir, alors avant d'avoir un petit éclaircissement d'expert, j'ai testé les 2 et je n'arrive pas à faire de tests concluants avec le reconnect (ça ne fonctionne pas). Comment peut-on simuler une erreur qui ferait fonctionner cette commande ? (rappel de la commande : synovpnc reconnect --protocol=$vpn_proto --name=$vpn_configname --retry=4 --interval=10) En effet, lorsqu'on déconnecte "manuellement" l'interface dans le panneau de config, l'option reconnect ne fonctionne pas, je l'ai changé en : synovpnc connect --id=$vpnconf_id et comme cela ça fonctionne (c'est logique me direz vous). Je me pose d'ailleurs la question si le reconnect peut fonctionner alors que l'interface VPN n'est pas visible avec ifconfig (l'option connect ne serait-elle pas plus juste ?) Merci !
  6. Avant de passer à l'étape ip-up / ip-down, quelques petits points sur ce chouette script partagé : 1 - Il me semble qu'il serait judicieux de préciser l'interface utilisée lors du test du ping google. En effet, le ping peut fonctionner grâce à toute autre interface opérationnelle (ETH0 par exemple). Du coup cela donnerait : if [ -z "$(ping -c 4 -I " $interface_vpn " www.google.fr | grep "64 bytes")" ] && [ -n "$(ifconfig | grep "$interface_vpn")" ]; then 2 - Comment peut-on simuler une erreur qui ferait fonctionner la commande suivante ? (sans intervention physique sur le SYno) : synovpnc reconnect --protocol=$vpn_proto --name=$vpn_configname --retry=4 --interval=10 En effet, lorsqu'on déconnecte "manuellement" l'interface dans le panneau de config, l'option reconnect ne fonctionne pas, je l'ai changé en : synovpnc connect --id=$vpnconf_id et comme cela ça fonctionne (c'est logique me direz vous). Je me pose d'ailleurs la question si le reconnect peut fonctionner alors que l'interface VPN n'est pas visible avec ifconfig (l'option connect ne serait-elle pas plus juste ?) Merci !
  7. Hello, J'ai parcouru ce post fort intéressant. J'ai implémenté le script en job en faisant quelques modifs et ça fonctionne. J'ai cependant une question : ce script lancé toutes les minutes en tâche planifiée ne laisse-t-il pas le temps à Download Stationplus de switcher sur l'interface ETH0 en cas de coupure ? Et même si ça ne représente que quelques secondes de téléchargement, on laisse une trace de notre IP publique qu'on ne souhaiterait pas laisser... Je ne suis pas très linux et pose donc une seconde question aux experts si ma première question a du sens : Y-aurait-il une solution plus instantanée avec un daemon de type event handler de catcher l'erreur sur le réseau VPN ? (un filewatcher sur les notifs par exemple ?) En espérant ne pas être trop à côté de la plaque sur mes questions. merci et A+
  8. Je cherchais juste une réponse précise et simple, même si ça date un peu (15 ans), je suis CCNA et dipose donc de quelques bases réseau. Je comprends que mes questions sortent un peu du scope du forum et me débrouillerai donc par moi-même. Merci encore pour le temps passé.
  9. J'avoue que c'est un peu obscure pour moi... je pensais que toute communication entre le monde extérieur et le syno passait par le routeur et que si la translation d'IP n'était pas configurée, alors le lien ne pouvait être établi. Est-ce que cela vient du fait que c'est le Syno qui initie la connexion via DL Station et que de ce fait, le routeur laisse passer les réponses de l'exterieur ?
  10. ok, compris, malentendu :-) Après une lecture en diagonale (très intéressant au passage), le post ne répond pas vraiment à ma question. Il propose certes une solution que je vais étudier pour couper les téléchargement en cas de problème sur le VPN, mais il n'explique pas pourquoi le téléchargement fonctionne lorsque la redirection du port BT du routeur n'existe pas (en l'occurence la freebox). Y-a-t'il une explication technique à cela ? Encore merci.
  11. Hello, Sorry, j'ai pourtant cherché mais à priori mal... je vais étudier ce post. Si le tunnel VPN ne permet pas de "masquer" l'activité, cette idée reçue est plus que très ancrée... tu as des liens vers des explications associées ? Encore merci et a+
  12. Hello, Vous me direz... qu'est ce qu'il se plaint celui-là si ça fonctionne... je m'explique : J'ai pris un abonnement VPN pour sécuriser l'activité du NAS sur le WAN et tout fonctionne correctement notamment avec download station. Cependant, en cas d'erreur sur le lien VPN, j'aimerais que le téléchargement ne soit plus possible avec mon IP publique. J'ai donc effacé la ligne de redirection de port BT (16881, port paramétré sur l'interface de conf dowload station BT) de la conf de ma freebox, redémarré la freebox, checké que la ligne n'existe plus et j'ai tenté de relancé un téléchargement BT avec le VPN coupé... et le téléchargement tourne quand même... quelqu'un peut-il m'expliquer comment cela est-il possible ??? Merci d'avance pour votre aide.
  13. Hello, Il faut vérifier les éléments suivants - ça n'est pas la seule méthode mais celle-ci a bien fonctionné chez moi sachant que je ne décris pas ici toutes les étapes de config de manière exhaustive. Faire les étapes suivantes avec l'interface VPN déconnectée dans "Syno > Réseau > Interfaces Réseau". 1 - Tu as bien un compte Synology (https://account.synology.com/fr-fr) et que ton produit est enregistré 2 - Tu as bien enregistré une ligne de config DDNS dans "Syno > Accès externe" avec "Synology" en Fournisseur de Services, le nom d'hôte que tu veux donner à ton syno, tes infos de login/mdp du compte synology (cf. étape 1), heartbeat activé, adresse IP public de ton NAS enregistrée. Une fois cette étape effectée, tu devrais voir le nom d'hôte DDNS en vert dans le tableau présent ici https://account.synology.com/fr-fr/overview. 3 - Tu accèdes bien aux services (apps) synology avec le nomdhote.synology.me ou l'ID QuickConnect (cf. etape 2 et visible depuis la page https://account.synology.com/fr-fr/overview) quand tu "Déconnectes" le VPN depuis l'interface "Syno > Réseau > Interfaces Réseau". 4 - La case "Activer les passerelles multiples" est bien cochée dans la page de config "Syno > Réseau > Général > Paramètres Avancés". Si toutes ces étapes sont vérifiées, tu actives l'interface VPN et tu devrais pouvoir accéder aux services Syno Je n'ai de mon côté pas eu à créer de règles de routage supplémentaires à celles que j'avais avant la mise en place du VPN. J'espère que ça pourra t'aider à régler ton problème. A+
  14. kcahna

    Pbl video station

    Hello, J'avais le même problème sauf que mon NAS est un 1010+ et ne supporte pas le DSM 6. J'ai contacté le support qui m'a proposé un fix du packet video statio disponible ici : http://gofile.me/6uOeZ/f03wvWykM Une mise à jour manuelle plus loin, les recherches en français refonctionnent !!! Ce fix devrait être intégré dans une prochaine release. A+
×
×
  • Créer...

Information importante

Nous avons placé des cookies sur votre appareil pour aider à améliorer ce site. Vous pouvez choisir d’ajuster vos paramètres de cookie, sinon nous supposerons que vous êtes d’accord pour continuer.