Initial import from bf-network-r6.opencode — opencode migration
This commit is contained in:
57
routeros/wan-macclone-test.rsc
Normal file
57
routeros/wan-macclone-test.rsc
Normal file
@@ -0,0 +1,57 @@
|
||||
# ===== 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)"
|
||||
Reference in New Issue
Block a user