Probleme FortiClient sur M1 MacBookPro : Solution
J'ai trouve une solution rapide pour le probleme de connectivite du client VPN FortiClient avec Apple M1 MacBookPro. Ce n'est pas bien complique...

J'ai besoin de me connecter au VPN via FortiClient pour faire mon travail et acceder a certaines ressources en toute securite. Quand j'ai commence a travailler pour mon entreprise en mars 2021, ils m'ont donne un M1 MacBookPro. Le M1 MacBookPro est different des autres car il est equipe d'une nouvelle architecture CPU. Auparavant, Apple utilisait un CPU base sur Intel mais maintenant, ils ont decide d'executer macOS avec un CPU base sur ARM et Apple l'a appele M1 pour l'instant.
De nombreux logiciels ne sont pas compatibles avec ARM. Parfois, j'ai des problemes du type "Ce composant n'est pas compatible avec votre CPU".
Quand je me suis connecte au VPN via FortiClient v6.4.3.1325, il semble connecte mais ma vitesse Internet devient trop lente. Normalement, j'ai 100 Mo/sec de vitesse Internet. J'ai demande a mes collegues "avez-vous des problemes avec le VPN et/ou la vitesse du VPN ?" et ils ont repondu "NON !" Ils utilisent un MacBookPro un peu plus ancien que le mien avec un CPU base sur Intel et j'ai pense que c'etait une situation normale car les versions basees sur Intel sont stables.
J'ai commence a deboguer pour trouver la cause racine et j'ai verifie la table de routage avant de me connecter au VPN.
~ netstat -rn
Routing tables
Internet:
Destination Gateway Flags Netif Expire
default 192.168.31.1 UGScg en0
127 127.0.0.1 UCS lo0
…
Ma table de routage semble correcte. 192.168.31.1 est mon routeur sans fil et la route par defaut pointe vers mon routeur sans fil. C'est normal.
Apres cela, je me suis connecte au VPN via FortiClient et j'ai reverifie ma table de routage. 10.212.134.152 est mon adresse IP locale attribuee par FortiClient.
Notre service VPN n'utilise pas le split-tunneling et link#19 OU 10.212.134.152 devrait etre le prochain saut pour la route par defaut avec mon routeur sans fil en meme temps.
Je supprime ma route par defaut !
Oui, j'ai decide de manipuler ma table de routage manuellement.
~ sudo route delete default
Password:
delete net defaultMaintenant, le prochain saut devrait etre mon adresse IP locale FortiClient. C'est 10.212.134.152 dans mon cas. Cette adresse IP locale est dynamique et change a chaque connexion car le DHCP attribue cette adresse IP.
Maintenant, a quoi ressemble ma table de routage ? La route par defaut ne devrait pas etre la...
link#19 a disparu de la route par defaut. Super ! Et maintenant, je ne peux plus acceder a Internet. Comme route par defaut, mon routeur sans fil est toujours dans la table de routage mais FortiClient l'utilise pour rester connecte au VPN. Oui, je suis toujours connecte a Internet mais je n'ai pas de prochain saut.
~ ping -c 4 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
ping: sendto: No route to host
...
--- 8.8.8.8 ping statistics ---
4 packets transmitted, 0 packets received, 100.0% packet lossAjoutons une nouvelle route par defaut...
~ sudo route add default 10.212.134.152
add net default: gateway 10.212.134.152Maintenant, je peux pinger 8.8.8.8 apres avoir ajoute une nouvelle route par defaut.
~ ping -c 4 8.8.8.8
PING 8.8.8.8 (8.8.8.8): 56 data bytes
64 bytes from 8.8.8.8: icmp_seq=0 ttl=114 time=99.007 ms
64 bytes from 8.8.8.8: icmp_seq=1 ttl=114 time=98.277 ms
64 bytes from 8.8.8.8: icmp_seq=2 ttl=114 time=103.634 ms
64 bytes from 8.8.8.8: icmp_seq=3 ttl=114 time=104.365 ms
— 8.8.8.8 ping statistics —
4 packets transmitted, 4 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 98.277/101.321/104.365/2.704 ms
Verification croisee
J'ai verifie la table de routage une derniere fois pour voir la difference apres avoir supprime et ajoute la route par defaut.
Maintenant, tout fonctionne parfaitement. Ma connexion VPN est stable et rapide !
Bonus
J'ai besoin de supprimer et d'ajouter une nouvelle route par defaut quand je dois me connecter au VPN et chaque jour j'ai besoin de me connecter. Je ne veux pas supprimer et ajouter une nouvelle route manuellement et j'ai ecrit un petit script bash pour cette routine.
Vous pouvez sauvegarder le script dans votre chemin /usr/local/bin/ avec sudo vim. Apres cela, n'oubliez pas d'ajouter les permissions chmod pour le script.
#!/bin/bash
FortiIP=$(netstat -rn | grep “10.212.134” | awk ‘{print $2}’)
sudo route delete default
sudo route add default $FortiIP
Si vous avez lu depuis le debut, je dois dire merci ! : )
Plus d'Ercan
Deux autres sites, même auteur, terrain différent.
IA, LLMs, agents, ML appliquée.
Notes de terrain sur les charges IA. Analyse des coûts Bedrock, patterns d'agents, compromis de stockage vectoriel, modes de défaillance en production.
Visiter ercan.ai →Le hub. À propos, conseil, contact.
Hub personnel pour les deux pistes d'écriture. Qui je suis, comment fonctionne le conseil, comment me joindre.
Visiter ercanermis.com →