MAC Adresse änderbar?

Nur so aus Interesse: Wird mein gepostetes Skript bei euch nicht angezeigt? Das funktioniert doch einwandfrei, ohne Installation von zusätzlicher Software, unter Yosemite usw. usf. Kopiert es einfach in den Skripteditor, tragt die gewünschte MAC-Adresse an der entsprechenden Stelle ein, speichert es z.B. als ausführbares Programm ab. Fertig. Noch einfacher gehts wirklich nicht. :rolleyes:
 
hi..
dieses Script lässt sich leider mit dem Scripteditor nicht öfnen..
 
hi..
ne ne, der Scripteditor erkennt dies File als nicht Scriptfile..
 
hi..
hab das File jetzt mit Textwrangler bearbeitet, ändert aber leider die MAC Adr nicht, in meinem MacMini ist das Wlan allerdings en1 ...
 
Wir reden evt. aneinander vorbei. Du öffnest den Skripteditor. Wenn er dir kein leeres Fenster anzeigt, öffnest du eines ("Neu"). Dann kopierst du den Code/Text aus meinem Post oben in das neue Fenster & trägst an der entsprechenden Stelle deine gewünschte MAC-Adresse ein. Beim Speichern mit ⌘S wählst du unter Dateiformat die Option "Programm". Wenn du dann auf das erstellte Programm doppelklickst, sollte das Skript durchlaufen.
 
oh entschuldige, hab deinen Post nicht gelesen..
 
hi..
hab folgende Fehlermeldung bekommen, error "ifconfig: ioctl (SIOCAIFADDR): Invalid argument" number 1
 
Hast du deine gewünschte MAC-Adresse auch an der richtigen Stelle im richtigen Format in das Skript eingetragen? Zur Fehlersuche das erstellte Programm nochmals im Skripteditor öffnen, ganz unten das rechte der drei Symbole (Protokoll einblenden) drücken und dann noch darüber auf "Antworten" klicken. Dann das Skript im Skripteditor laufen lassen (oben auf "Ausführen" klicken) und du solltest sehen, wo und warum es hakt. Im Zweifelsfall das Protokoll aus der unteren Hälfte hier posten.
 
hi..
tut mir leid es kommt nur ein Button mit der aktuellen Mac Adr., aber das Script ändert die MAC Adr. nicht..
 
Ich hab das Skript nochmals leicht abgeändert, um den Unterschied zwischen der nicht änderbaren Hardware MAC und der gespooften MAC deutlicher zu machen:

Code:
set wifi_interface to do shell script "networksetup -listallhardwareports | awk '/^Hardware Port: (Wi-Fi|AirPort)$/{getline;print $2}'"
set hardware_wifi_mac to do shell script "networksetup -getmacaddress " & wifi_interface & " | awk '{print $3}'"
set wifi_status to do shell script ("networksetup -getairportpower " & wifi_interface & " | awk '{print $4}'")
if wifi_status is not "On" then
	display dialog "Bitte WLAN-Schnittstelle aktivieren und 
Skript neu starten." with title "WLAN-Schnittstelle ist nicht aktiviert!" buttons {"OK"} default button 1 with icon 0
else
	set neue_wifi_mac to "1a:2b:3c:4d:5e:6f"
	do shell script "sudo ifconfig " & wifi_interface & " lladdr " & neue_wifi_mac with administrator privileges
	set aktuelle_wifi_mac to do shell script "ifconfig " & wifi_interface & " | grep ether"
	set aktuelle_wifi_mac to do shell script "echo " & quoted form of aktuelle_wifi_mac & " | sed -e 's/[ 	ether]//g'"
	display dialog "Hardware MAC-Adresse:		" & hardware_wifi_mac & "
Aktuelle MAC-Adresse:		" & aktuelle_wifi_mac
end if

Musst nur noch "1a:2b:3c:4d:5e:6f" durch deine gewünschte MAC-Adresse ersetzen. Sollte auch bei dir funktionieren, sofern Apple bei den neuen Macs in dieser Hinsicht nichts Grundlegendes geändert/eingeschränkt hat. Ist mir i.M. nicht bekannt.
 
Zuletzt bearbeitet:
hi..
nur zur Info, hab nen MacMini early2009 mit Yosemite in Betrieb..
 
hi..
tut mir leid, das selbe Ergebnis, keine Änderung der MAC Adr..
 
Sehr seltsam. Ich hab auch einen 2009er mit 10.10.3. Poste doch mal die Antworten aus dem Protokoll (wie oben beschrieben), wenn du das Skript im Skripteditor laufen lässt.
 
hi..
es kommt nur die Meldung, Button Ok, sonst keine Meldung..
 
Ja, das ist das Ergebnis. Lies nochmal das hier und poste dann das Protokoll/die Antworten.
 
hi..
so jetzt hab ich die Meldungen im Skripteditor gefunden,
tell current application
do shell script "networksetup -listallhardwareports | awk '/^Hardware Port: (Wi-Fi|AirPort)$/{getline;print $2}'"
--> "en1"
do shell script "networksetup -getmacaddress en1 | awk '{print $3}'"
--> "00:25:00:f6:b7:19"
do shell script "networksetup -getairportpower en1 | awk '{print $4}'"
--> "On"
do shell script "sudo ifconfig en1 lladdr 00:25:00:f6:b7:25" with administrator privileges
--> ""
do shell script "ifconfig en1 | grep ether"
--> " ether 00:25:00:f6:b7:19 "
do shell script "echo ' ether 00:25:00:f6:b7:19 ' | sed -e 's/[ ether]//g'"
--> "00:25:00:f6:b7:19"
end tell
tell application "Script Editor"
display dialog "Hardware MAC-Adresse: 00:25:00:f6:b7:19
Aktuelle MAC-Adresse: 00:25:00:f6:b7:19"
--> {button returned:"OK"}
end tell
Ergebnis:
{button returned:"OK"}
 
do shell script "sudo ifconfig en1 lladdr 00:25:00:f6:b7:25" with administrator privileges
Das kann ja auch nicht funktionieren. Du befiehlst dem Skript ja, deine alte MAC-Adresse durch dieselbe zu ersetzen. Kein Wunder, dass sich nichts ändert. Ich dachte, du hättest einen neuen Mac (z.B. mit einer MAC-Adresse "5a:2d:3c:4d:5b:6a"), wolltest aber eine MAC-Adresse deines alten Macs vortäuschen (z.B. "1a:2b:3c:4d:5e:6f"). Diese alte MAC-Adresse musst du dann an der entsprechenden Stelle im Skript einsetzen.

Code:
set neue_wifi_mac to "1a:2b:3c:4d:5e:6f"

Und wenn du das Skript dann auf deinem neuen Mac ausführst, sollte es funktionieren.
 
ne ne, ich will die alte MAC Adr, am gleichen Rechner ändern..
 
Ich hab einen neuen Mac, dem würde ich gern die MAC-Adresse von meinem alten Mac wieder geben
:confused:

Egal, das Skript setzt die MAC-Adresse, die du unter neue_wifi_mac angibst.
 
Zurück
Oben Unten