Impossible de faire fonctionner NMAP

Bonjour,

Je souhaite installer NMAP pour surveiller mon réseau domestique mais aucune solution (directement dans configuration.yaml en suivant le tuto ad hoc ou avec l’intégration NMAP TRACKER) ne renvoie quoi que ce soit.
Exemple avec ce dernier :

image

J’ai, bien sûr, utilisé d’autres données comme 192.168.1.0/24 ou 192.168.1.255 ou bien d’autres et je n’ai jamais eu le moindre retour. J’ai passé énormément de temps à bidouiller dans le fichier configuration.yaml ou à naviguer sur le Net mais rien n’en est sorti. Aucune entité ou aucun appareil n’a été créé.

Où faut-il regarder pour faire avancer le schmilblick ?

Merci d’avance pour votre aide.

Bonjour,
NMAP se configure par intégration directement du UI.

Y a rien a mettre dans le configuration.yaml ( c’était a l’époque ).

Rien de spécial a faire, juste l’ip et c’est bon.


Oui, après mes déboires avec configuration.yaml j’ai tout supprimé et installé l’intégration dont j’ai donné une image il y a un instant. Et ça ne donne rien, quelles que soient les données que je lui mets.

Salut, es-tu sûr que l’adresse de ton réseau est 192.168.1.0/24 ?

Dans l’exemple officiel ils donnent 192.168.1.1/24 ce qui ne devrait rien changer mais tu peux toujours essayer.

Quelle IP à ton instance home assistant? Tu peux le voir dans:
Paramètres > Système > Réseau > Carte réseau

EDIT: on voit sur le screenshot de @WarC0zes que le pop up donne bien l’exemple avec .0/24
Est-ce que t’as pas ton réseau en IPv6 ? :smiley:

1 « J'aime »

Bonnes questions Cloom mais je crois que ces pistes ne sont pas pertinentes.
HA tourne dans un conteneur docker avec l’IP 172.17.0.4. Mais il voit très bien tout ce qui tourne sur mon réseau natif 192.168.1.0 car j’ai des équipements qui remontent très bien leurs données dans HA. Et je ne crois pas que docker implémente des IPV6 et si c’était le cas, pourquoi cela gênerait NMAP alors que cela ne gêne pas les autres appareils et instances ? Car il n’y a que NMAP qui pose problème.

Je rajoute un extrait d’une copie-écran montrant des commandes réseau depuis la console docker :

2086099714fb:/config# ifconfig 
eth0      Link encap:Ethernet  HWaddr 02:42:AC:11:00:04  
          inet addr:172.17.0.4  Bcast:172.17.255.255  Mask:255.255.0.0
...............
2086099714fb:/config# ping 192.168.1.16
PING 192.168.1.16 (192.168.1.16): 56 data bytes
64 bytes from 192.168.1.16: seq=0 ttl=254 time=2.372 ms

Donc ton HA tourne dans un docker en Bridge mode et non pas en Host mode où ça fonctionnerait.

Si je ne me trompe pas et que mes souvenirs sont bons (attention il y a certainement des approximations voire même des erreurs :smiley: ):
NMAP tracker utilise les adresses MAC pour savoir si une machine est sur le réseau ou pas, il travaille donc dans la 2e couche du model OSI: data link.

Ton docker en bridge agit comme ta box internet chez toi, il fait du NAT/PAT pour parler à l’extérieur, il peut donc parler à tes objets connectés en layer 3 (IP) mais il connait pas la MAC adresse de tes appareils.

Je ne sais pas si ça te parle mais c’est donc normal. Tu peux faire un workaround pas très sexy comme dans ce post en anglais.

Après ton ping tu peux faire la commande arp pour confirmer que ton HA dans docker ne voit pas la MAC adresse de 192.168.1.16.

Ça me paraît bizarre que nmap ne fonctionne que sur les adresses MAC. Quand je l’utilise depuis ma machine sur un serveur situé sur l’internet, ça fonctionne bien alors qu’il travaille en couche 3, évidemment. Mais je veux bien faire un test avec HA en docker sur mon réseau en 192.168.1.0. Faut que je trouve comment faire (je ne suis pas un cador en docker :wink: ).

Je viens de passer mon HA en docker sur mon réseau local en mode host (grâce à Portainer) et NMAP TRACKER fonctionne ! Je ne comprends pas encore pourquoi mais j’ai bien avancé ainsi.
Merci Cloom !

Pour la partie utilisée par device tracker, il a besoin d’un identifiant unique pour chaque appareil et c’est la définition de l’adresse MAC.

NMAP lui peut ensuite scanner une IP mais pas obtenir la MAC de la machine si elle est dans un autre réseau (du moins je ne vois pas comment).

N’hésite pas à marquer le post en solution que le post soit marqué comme résolu.

J’ai pas regardé la vidéo mais je pense qu’ils expliquent et démontrent que la MAC adresse utilisée dans les trames réseaux change quand on passe par un routeur:

J’ai été responsable réseau donc je connais un peu la question.

Quand on est sur un réseau différent, l’adresse MAC est celle du routeur (on travaille sur la couche 3), l’adresse MAC de la destination est inconnue. Mais d’ordinaire, cela n’empêche pas nmap de faire son boulot. Je ne vois pas bien ce qui bloque ici.

NMAP travaille sur plusieurs couches:

  • La couche 2 pour récupérer la MAC adresse d’une machine
  • Couche 4, transport, pour scanner les ports ouverts et savoir quels services tournent.
  • etc

J’ai bien dit que NMAP tracker travaille avec la partie en couche 2, pas tout l’outil NMAP.

J’espère que ça aide et si j’ai fait une erreur ou approximation, qu’on hésite pas à me corriger.

Voici des détails en anglais