Mit dem Befehl
arp -a
werden dir alle bekannten(!) IP Adressen und ihre Mac Adressen angezeigt. Wenn eine bestimmte IP Adresse fehlt und du weißt sie müsste da sein dann ping sie und der Eintrag sollte in der ARP Tabelle sein. Hier ist ein Script in Python, mit dem du die Mac Adresse monitoren kannst.
import os
import time
import re
def get_mac(ip_address):
# Führt 'arp -a' aus und sucht die MAC-Adresse für die angegebene IP
try:
result = os.popen(f"arp -a {ip_address}").read()
# Regex, um eine typische MAC-Adresse zu finden
mac_match = re.search(r"(([a-fA-F0-9]{2}[:-]){5}[a-fA-F0-9]{2})", result)
if mac_match:
return mac_match.group(0)
else:
return None
except Exception as e:
print(f"Fehler bei der Ermittlung der MAC-Adresse: {e}")
return None
def monitor_mac(ip_address, interval=60):
print(f"Überwachung der MAC-Adresse für {ip_address} gestartet...")
last_mac = get_mac(ip_address)
if not last_mac:
print(f"Keine MAC-Adresse für {ip_address} gefunden.")
return
print(f"Initiale MAC-Adresse: {last_mac}")
while True:
time.sleep(interval)
current_mac = get_mac(ip_address)
if current_mac != last_mac:
print(f"MAC-Adresse geändert! Neu: {current_mac}, Alt: {last_mac}")
last_mac = current_mac
else:
print(f"MAC-Adresse unverändert: {current_mac}")
# Beispiel: Überwache die IP 192.168.43.1 alle 60 Sekunden
monitor_mac("192.168.43.1")