Vous avez probablement installé inetutils 1.9.3 avec un gestionnaire de paquets comme brew ou MacPorts.
En plus des versions GNU de divers outils (telnet, rsh etc.), il installe également une version GNU de ifconfig.
Pour distinguer les outils GNU des outils MacOS portant le même nom, ils sont généralement liés depuis le répertoire d'installation (installé avec brew, c'est : /usr/local/opt/inetutils/gnubin) à un répertoire dans le PATH standard préfixé par un g (par exemple, ifconfig > gifconfig ou ftp > gftp).
Si vous ajoutez ce répertoire d'installation à votre variable PATH de manière à donner la préférence aux chemins standard, les outils GNU seront exécutés à la place des outils originaux.
Vérifiez votre variable PATH : echo $PATH
. Vous verrez probablement quelque chose comme :
/usr/local/opt/inetutils/gnubin:/usr/local/bin:/usr/bin:/bin:...
Maintenant, éditez le fichier qui détermine votre variable PATH (probablement soit ~/.bashrc ou ~/.bash_profile) et supprimez le chemin de gnubin.
Exemple : nano ./bash_profile
...
export PATH="/usr/local/opt/inetutils/gnubin:/usr/local/mysql/bin:$PATH"
...
Changez cela en :
...
export PATH="/usr/local/mysql/bin:$PATH"
...
Fermez ensuite la fenêtre du Terminal ou relancez Terminal.app. Cela permettra de "réactiver" les versions standard des commandes. Les outils GNU sont toujours disponibles en entrant une commande précédée d'un préfixe g (par exemple gifconfig
o gftp
).
0 votes
Utilisez-vous un Mac ? Le
ifconfig
est basée sur BSD, et non sur GNU.0 votes
@Allan C'est une formule de brew installée probablement (inetutils ?)...
1 votes
Il suffit d'utiliser
/sbin/ifconfig en0 | grep ether
temporairement jusqu'à ce que le problème soit résolu...0 votes
En fait, je ne peux pas utiliser la fonction ARP() de Scapy pour envoyer des requêtes ARP parce que, par défaut, elle utilise l'ifconfig /usr/local/bin et que, par conséquent, la fonction échoue.
0 votes
@AMISHASHREYA Votre composant PATH ".../opt/local/bin:/opt/local/sbin :..." indique que MacPorts est installé. Je l'ai installé temporairement dans une VM Catalina et après avoir installé une version plus récente d'inetutils avec
ports
Je reçois tous ses outils préfixés par un g par défaut. Pouvez-vous vérifier que MacPorts est installé dans votre environnement ? Vérifiez également si inetutils a été installé par MacPorts.0 votes
@klanomath - j'ai retiré mon vote serré.
0 votes
Si vous n'avez pas besoin de la version GNU de ifconfig (de inettools), faites
brew uninstall inetutils
. Cela ne se produit généralement pas par accident - vous devez prendre des mesures pour faire passer les commandes de Brew avant celles de votre système. Il est normalement acceptable que les commandes de Brew fassent de l'ombre (en premier dans le chemin) aux commandes de MacOS, mais à cause de ce qui s'est passé ici, vous voudrez peut-être ne le faire que pour chaque commande, en utilisant 'GNUBINS', ou même des alias traditionnels. Avec quelque chose d'aussi essentiel que ifconfig, il n'est pas évident de vérifier s'il a été masqué.