web-dev-qa-db-fra.com

Pas de connexion internet via VPN

Après avoir configuré une connexion à un réseau VPN, je ne peux pas établir de connexion Internet via le VPN. Je ne reçois aucune réponse des commandes réseau telles que, par exemple, tracepath ubuntu.com.
Le protocole est PPTP. Mon système est lubuntu 17.10, 32 bits (relancer un vieux PC).
Veuillez fournir des instructions pour une installation correcte ou des conseils de débogage.

1
oscar1919

Enfin, je suis au courant et je souhaite partager mes découvertes sur ce forum. Les informations dont j'avais besoin semblent être éparpillées sur différents sites.

  • Configure VPN ... dans VPN Connections est grisé.
    Inconvénient, et je ne sais pas comment le résoudre, mais il existe une solution de contournement.
    Traverser Edit Connections... et appuyez sur +. Cependant, dans le type de connexion, aucun VPN n'est répertorié.
  • J'ai (ré) installé les modules nécessaires à la connexion VPN, avec
    Sudo apt-get install --reinstall network-manager network-manager-gnome openvpn network-manager-openvpn network-manager-openvpn-gnome network-manager-pptp network-manager-pptp-gnome pptp-linux
  • Maintenant, il est possible d’ajouter une connexion PPTP comme décrit dans la première puce. Configurez-le avec les informations d'identification et les paramètres fournis par le fournisseur de réseau privé virtuel.
  • Pour éviter les problèmes de pare-feu, essayez d’abord avec UncomplicatedFirewall off. Sudo ufw disable et redémarrez.
  • Après ça : VPN Connections -> new_vpn établit la connexion VPN. Cependant, dans mon cas, il n’était pas possible d’accéder à Internet. On a l'impression que la connexion est interrompue après le premier site ou que le chargement d'un site prend une éternité.
  • Le remède à ce problème j'ai trouvé ici . Apparemment, le mtu, unité de transmission maximale, pour le port VPN est trop élevé. Dans mon cas, je dois le baisser manuellement en exécutant
    ifconfig ppp0 mtu 1388
  • Le maximum de MTU qui convient peut être trouvé en se connectant au vpn puis en envoyant une requête ping à un site (par exemple, ubuntu.com) en exécutant ping -M do -s <number> -c 1 ubuntu.com. Augmentez <number> de 10 jusqu'à ce que la connexion soit perdue (une fois qu'elle est perdue, elle échoue également lors de la nouvelle descente). Je devais alors réactiver la connexion de Sudo service network-manager restart et me reconnecter au vpn. Une fois que vous avez trouvé le <number> le plus utilisable, ajoutez 28 et c’est le mtu à utiliser avec le port vpn. Voir aussi ici .
  • Il reste encore deux problèmes, comment automatiser le paramétrage de la valeur mtu lors de la connexion au VPN, et le DNS semble avoir disparu après la déconnexion du VPN. Ce dernier peut être résolu par Sudo service network-manager restart. Les deux tâches peuvent être automatisées comme suggéré dans le script /etc/NetworkManager/dispatcher.d/01-ifupdown. Les scripts du dossier dispatcher.d sont appelés avec le port et l'événement en tant qu'argument. Donc, je crée un script exécutable dans ce dossier, comme ci-dessous
    #!/bin/sh

    #info : pre-up and pre-down are not implemented in network-manager
    
    if [ "$2" = "vpn-up" ]; then  
        /sbin/ifconfig "$1" mtu 1388  
    fi  
    
    if [ "$2" = "vpn-down" ]; then  
        /usr/sbin/service network-manager restart  
    fi
    
  • Enfin, je veux activer à nouveau ufw. Pour cela, je dois ajouter -A ufw-before-input -p 47 -j ACCEPT dans le fichier /etc/ufw/before.rules, juste avant # drop invalid packets et faire Sudo ufw enable, puis redémarrer. Maintenant, tout fonctionne bien, dans mon cas.

  • Plus tard, j’ai trouvé qu’un autre moyen (et probablement meilleur) de récupérer le DNS était de stocker le paquet resolvconf.
    Sudo apt install resolvconf
    Sudo dpkg-reconfigure resolvconf
    Ensuite, la partie vpn-down du script peut être supprimée.

2
oscar1919