====== Réduire le trafic réseau sous Linux ====== Cette page est encore récente et sans doute incomplète. Si votre ordinateur sous Linux utilise une connexion avec trafic limité (par exemple 3G/4G/tethering), voici quelques pistes pour réduire la quantité de données réseau. * Même si cela n'est généralement pas un souci sous Linux (peu d'applications malveillantes/adwares), **utilisez un [[dns-blocklist|fichier hosts]]** pour bloquer les domaines liés au tracking et à la publicité. * Contrairement à ce qui est proposé dans ma page, évitez la mise à jour automatique de ce fichier hosts. Faites-le de temps en temps (une fois par mois devrait être suffisant). Relancez juste ''sudo ./hosts-update'' * **Désactivez les mises à jour automatiques**. * Sous Linux Mint : Menu > Gestionnaire de mises à jour > menu Édition > Préférences > onglet Option > décocher "//Actualiser la liste des mises à jour automatiquement//" * ⚠️ Mais du coup, pensez à les faire manuellement régulièrement dès que vous êtes sur un accès Wifi illimité ! * **Dans Firefox**: * **[[https://addons.mozilla.org/fr/firefox/addon/ublock-origin/|uBlock-Origin]]** est évidemment indispensable: * Activez tous les filtres proposés, sauf ceux marqués "experimental". * Pensez à déplier les petits "**>**" pour voir tous les filtres. * Ajoutez: https://sebsauvage.net/hosts/hosts-adguard (Dans les réglage d'uBlock-Origin : Onglet "Liste de filtres", allez tout en bas et cliquez sur "Importer", collez l'URL puis cliquez sur le bouton "Appliquer" tout en haut de la page.) * Dans les réglages de uBlock-Origin, vous pouvez aussi cocher "//Bloquer les polices d'écriture distantes//" si cela ne vous perturbe pas sur vos sites habituels. (Les polices peuvent être parfois volumineuses.) * Installez l'extension **[[https://addons.mozilla.org/fr/firefox/addon/cache-longer/|Cache-longer]]** : Cela va rallonger la date d'expiration des images/js/css/fonts pour la porter à 6 mois. * Couplez cela à l'augmentation de la taille du cache disque: Ouvrez ''about:config'' et changez les paramètres suivants: * ''browser.cache.disk.enable = true'' pour être sûr que le cache disque est actif. * ''browser.cache.disk.smart_size.enabled = false'' (Pas de taille automatique du cache disque, on va la fixer nous-mêmes) * ''browser.cache.disk.capacity = 4000000'' (Capacité du cache disque : 4 Go, ce qui devrait largement être suffisant) * ''browser.cache.disk.max_entry_size = 1000000'' (Taille max d'un objet dans le cache: 100 Mo (par défaut: 50 ko) (Cela permet de garder en cache les grosses images de certains sites.) * Vérifier que //Cache-longer// fonctionne: * Ouvez l'inspecteur (F12), cliquez sur "Réseau" et ré-ouvrez une page que vous avez déjà ouverte. Dans la liste des requêtes HTTP sortantes, regardez dans la colonne "Transfert": Si vous voyez "//mis en cache//" c'est que l'objet est venu du cache et a économisé une requête HTTP sortante. * Regardez aussi tout en bas à gauche: Il vous indique la taille complète de la page et ce qui a dû être téléchargé. Exemple ''1,29 Mo / 51,63 ko transférés'' veut dire que la page fait en tout 1,29 Mo, mais que seulement 51,63 ko de données viennent de requêtes HTTP, le reste vient du cache. * Vous pouvez aussi regarder dans ''about:cache?storage=disk'' pour voir les objets stocké dans le cache disque de Firefox et vérifier dans la colonne "//Expires//" est bien à +6 mois pour certains objets (images, etc.) * Désactivez toutes les options de **préfetch**: * ''network.prefetch-next = false'' : Désactiver le téléchargement en avance des pages web. * ''network.dns.disablePrefetch = true'' et ''network.dns.disablePrefetchFromHTTPS = true'' : Désactiver la résolution DNS en avance. * **Empêcher une application d'utiliser le réseau** : Vous pouvez lancer une application et l'empêcher d'accéder au réseau. Installez le paquet ''firejail'' et lancez l'application en faisant:firejail --noprofile --net=none PROGRAMME * **Dans la configuration réseau** vous pouvez spécifier qu'il s'agit d'une connexion limitée. Certaines applications le prennent en compte et réduisent leur trafic réseau. * Exemple: Dans //NetworkManager// > //Modifier les connexions// > cliquez sur votre connexion > icône "engrenage" (propriétés) > onglet //Général// > Connexion limitées : choisissez "Oui". **À explorer**: * Utiliser un serveur DNS local (comme [[blocky|Blocky]] ou [[unbound|Unbound]]) pour faire office de cache DNS, avec un TTL forcé. * Un TTL forcé à 24 heures permet de réduire fortement les requêtes DNS sortantes de l'ordinateur (Dans mon expérience, 80% des requêtes DNS finissent par tomber dans le cache). * Cela ne pose généralement pas de problème, sauf cas spécifiques (par exemple les serveurs de login de Minecraft qui utilisent CloudFront, donc des machines qui changent très souvent d'adresse IP). * Désactiver la mise à jour automatique de l'horloge (NTP) FIXME (de mémoire, Ubuntu faisait beaucoup trop de requêtes sortantes) * Pour YouTube : Utiliser l'application FreeTube (ou une extensions Firefox pour YouTube) et configurer pour ouvrir par défaut les vidéos en 360p ou 480p. * Utiliser https://github.com/yt-dlp/yt-dlp pour télécharger à l'avance les vidéos que vous voulez visionner. * Pour emporter une copie de Wikipedia consultable hors-ligne : https://kiwix.org/fr/ * Utiliser XSuspender pour mettre en sommeil les applications qui ne sont pas en avant-plan (On peut par exemple endormir Pidgin (ou d'autres applications de messagerie), et ne le réveiller qu'une seconde toutes les 5 secondes. On réduit ainsi son trafic réseau sans réduire son utilité.) * Si vous avez des répertoires à synchroniser, plutôt que d'utiliser une application qui synchronise en temps réel (NextCloud, etc.) faites-vous un script avec rsync ou RClone afin de le lancer uniquement quand nécessaire. * Si ce sont de gros fichiers (VM, bases de données, etc.) modifiés partiellement, rsync sera plus efficace. (Il ne transfère que les parties modifiées des fichiers.) * S'il y a plein de petits fichiers, RClone est efficace avec ses transfers en parallèle.