En complément de l’article sur le partage de connexion internet intégré à Mac OS 10.2, la possibilité de partage par Airport peut être optimisée pour le mac client de la connexion en réglant le MTU.
Dans certains cas de partage de connexion avec l’outils intégré ou avec des sharewares comme IPnetShare X il peut être difficile d’accéder à certains sites depuis le mac client.
C’est un problème de réglage du MTU (Maximum Transmission Unit) qui par défaut à une valeur trop importante (1500, soit la valeur pour un liaison ethernet). Les MTU c’est donc tout simplement la taille des paquets qui transitent par une liaison.
Un modem en PPPOE utilise 8 octets. Restent donc 1492 octets dispo pour l’utilisateur (d’où la MTU à 1492). Mac OS X sait basculer automatiquement le MTU à 1492 dans le cas d’une connexion directe en ppoE or dans notre cas la connexion ppoE est redistribuée mais envoyée avec sa valeur par défaut : 1500. Il s’agit donc d’éduquer les macs clients !
Donc dans le cas d’un modem routeur les macs clients arrivent tous à basculer convenablement leur MTU.
% sudo ifconfig en1 mtu 1492
Le "en1" faisant référence à Airport, en0 étant le port ethernet. Pour ensuite conserver ces réglages à chque reboot, la solution est de modifier les paramètres réseau qui se lancent au démarrage (StartUpItems).
Il faudra alors utiliser un éditeur de texte sous un compte root et ajouter la ligne :
ifconfig en1 mtu 1492
Dans ce fichier :
/System/Library/StartupItems/Network/Network
C’est par là. Il faut aussi utiliser le Terminal.
Pour cette deuxième méthode on se base sur un utilitaire bien pratique du nom de BroadBand Optimizer 1
1. Ouvrir le .dmg et copier le contenu sur le disque dur.
2. Ouvrir TextEdit pour modifier le fichier "BroadBand" :
3. Ajouter deux lignes :
(on modifie ici aussi le MTU de l’ethernet.)
#!/bin/sh
##
# Broadband Optimizer
# optimize networking for broadband connection
#
#
##
. /etc/rc.common
if config en0 mtu 1492 <-ligne à ajouter !
if config en1 mtu 1492 <-ligne à ajouter !
CheckForNetwork
if [ "${NETWORKUP:=-NO-}" = "-YES-" ]; then
sysctl -w net.inet.tcp.sendspace=65536
sysctl -w net.inet.tcp.recvspace=65536
sysctl -w kern.ipc.maxsockbuf=524288
sysctl -w net.inet.tcp.delayed_ack=0
sysctl -w net.inet.udp.recvspace=73728
fi
4. Placer le dossier BBO dans StartUpItem (/System/Library/StartupItems).
5. Redémarrer et à chaque lancement du système le MTU adoptera ce réglage.
Je remercie PipoCanaja contributeur des forums de macadsl de m’avoir donné une explication claire et précise de l’attribution de la valeur du MTU.