# ===== ap1 — WAN MAC-Clone-Test (FB CM-MAC → ether1), scheduler-frei ===== # RouterOS 7.23.x, device-mode=home. Setzt wan-cutover-test.rsc voraus (nutzt wantest-probe). # # FB-WAN-MAC = CM-MAC 0C:72:74:36:90:99 (DOCSIS-SW 7.3.5.3.521, vom User aus FB-UI). # ⚠️ CM-MAC = Cable-Modem-/DOCSIS-Layer. Im echten Bridge-Modus nutzt die FB diese MAC # selbst → MAC-Konflikt-Risiko. Public-IP kam bereits mit ether1-eigener MAC → Clone ist # Verifikation, kein Muss. # # device-mode blockiert /system scheduler → Auto-Revert ist hier KEIN Scheduler, sondern fest # in den Clone-Lauf eingebaut (linearer Ablauf, ~90 s Clone-Fenster, dann garantierter Revert — # läuft im Hintergrund zu Ende, auch wenn die Console-Session abreißt). # # Ablauf (Console über altes WiFi auf 10.40.41.1): # 1) Baseline-Cutover mit ether1-eigener MAC (wantest-run) → Public-IP geloggt # 2) /system script run wanmac-clone → setzt CM-MAC, release/renew, 4 Proben, AUTO-REVERT # 3) Log prüfen: IP/Schichten mit FB-MAC vs. Baseline (/log print where message~"WANTEST") # Not-Revert jederzeit: /system script run wanmac-revert # --- idempotent --- /system scheduler remove [find name~"^wanmac-"] /system script remove [find name~"^wanmac-"] # --- Clone: orig sichern → CM-MAC → release/renew → 4 Proben → GARANTIERTER Auto-Revert --- /system script add name=wanmac-clone policy=read,write,test,policy source={ :global FBMAC :if (([:typeof $FBMAC] = "nothing") or ($FBMAC = "")) do={ :set FBMAC "0C:72:74:36:90:99" } :global E1ORIG :set E1ORIG [/interface ethernet get [find name=ether1] mac-address] :log info ("WANTEST macclone: orig=" . $E1ORIG . " -> fb=" . $FBMAC . " (Auto-Revert in ~90s)") /interface ethernet set [find name=ether1] mac-address=$FBMAC :do { /ip dhcp-client release [find interface=ether1] } on-error={} :delay 2s :do { /ip dhcp-client renew [find interface=ether1] } on-error={} :delay 25s :for i from=1 to=4 do={ /system script run wantest-probe ; :delay 15s } # --- garantierter Auto-Revert im selben Lauf (kein Scheduler nötig) --- /interface ethernet reset-mac-address [find name=ether1] :do { /ip dhcp-client release [find interface=ether1] } on-error={} :delay 2s :do { /ip dhcp-client renew [find interface=ether1] } on-error={} :delay 15s /system script run wantest-probe :log info ("WANTEST macclone done -> revert auf factory-MAC (orig war " . $E1ORIG . ")") } # --- Not-Revert: sofort Werks-MAC zurück (falls man früher raus will) --- /system script add name=wanmac-revert policy=read,write,test,policy source={ /interface ethernet reset-mac-address [find name=ether1] :do { /ip dhcp-client release [find interface=ether1] } on-error={} :delay 2s :do { /ip dhcp-client renew [find interface=ether1] } on-error={} :delay 10s /system script run wantest-probe :log info "WANTEST macclone manual-revert -> factory-MAC" } :log info "WANTEST macclone-test installiert (clone mit eingebautem Auto-Revert + manual-revert)"