1 votes

Différence entre un service réseau désactivé, inactif et une interface hors service.

Il existe (au moins) quatre façons différentes de désactiver le Wi-Fi sur mon Mac :

  1. Cliquez sur l'icône Wi-Fi dans la barre de menu et sélectionnez "Désactiver le Wi-Fi".
  2. Préférences système->Réseau, sélectionnez Wi-Fi, cliquez sur Cog, sélectionnez Rendre le service inactif.
  3. sudo ifconfig en0 down
  4. networksetup -setnetworkserviceenabled Wi-Fi off

Les deux premiers sont équivalents, c'est-à-dire qu'ils modifient le même réglage.

Ce que j'aimerais comprendre, c'est qu'à un faible niveau, quelles sont les différences fondamentales entre 1, 3 et 4 ?

2voto

Tom Grane Points 1

Désactiver le wifi par la barre de menu est équivalent à :

networksetup -setairportpower en0 off

... et donc, la même chose que de le désactiver dans les paramètres du réseau.

Je ne peux pas parler des niveaux inférieurs, mais networksetup est un ajout d'Apple, alors que ifconfig est un standard non seulement pour BSD, mais aussi pour Linux. (Bien que les deux utilitaires soient finalement distincts, non seulement dans leur implémentation mais aussi dans leur API).

Si je devais deviner, et je vais deviner puisque les internes d'Apple ne sont pas exactement transparents (s'il vous plaît, que quelqu'un me corrige si vous en êtes capable), networksetup est destiné à contrôler le matériel réel, le dispositif Wi-Fi, alors que ifconfig est un utilitaire purement au niveau du système d'exploitation. Tout comme vous pouvez quitter votre application de chat vidéo, ou mettre un morceau de ruban adhésif sur la caméra.

Je peux vérifier certaines choses :

  1. Pour fonctionner, les deux interfaces, disons, en0 doit être UP (donc, ifconfig en0 up ), ainsi que airportpower étant ON (donc, networksetup -setairportpower en0 on ).
  2. Les deux sites down l'ingestion d'un iface et de transformer la puissance de l'aéroport off rendra le symbole de la barre de menu sous la forme d'un contour creux.
  3. MAIS, si les deux DOWN/off, si vous apportez la puissance de l'aéroport on si ifconfig ... up n'a pas été exécuté après avoir exécuté ifconfig ... down Le symbole ne sera pas creux, et MacOS recherchera frénétiquement des réseaux, mais n'y parviendra pas : (1) se connecter à un réseau (2) faire apparaître le symbole iface0 (3) changer la table de routage

Ainsi, ce symbole wifi semble être le résultat d'un changement d'état, et non l'état réel. En effet, l'état réel, à savoir si le Wi-Fi est affiché comme pouvant se connecter ou non, n'est pas lié à l'indicateur visuel. Mais l'interface, même lorsqu'elle est DOWN, semble d'une certaine manière balayer, en ce sens que si vous revenez en arrière on le site airportpower le "statut :" donné par ifconfig va passer rapidement d'un état à l'autre entre active y inactive même si l'interface actuelle n'est pas UP.

Il y a donc une incohérence. Mais c'est ainsi parce qu'il n'y aurait aucune raison de désactiver le second après l'avoir fait pour le premier. Et parce que les désirs et l'API idéale d'Apple diffèrent de ceux de BSD.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X