Files
bf-infra/switch/cli/02-vlan-names.exp
Christoph Emsenhuber a73db06354 Phase A complete: VLAN DB + names + handover
- HANDOVER.md: full delegation doc (Status, Architektur, Phasen, Gotchas)
- switch/cli/backup.exp: show running-config mit --More-- handling
- switch/cli/02-vlan-names.cli/exp: set VLAN names (MAIN/INFRA/IOT/UNTRUSTED/GUEST/MGMT/WAN)
- switch/cli/running-PRE.txt: pre-changes config backup (networkmask-Syntax bestaetigt)
- switch/cli/02-vlan-names.log: verifikations-Output (show vlan)

VLAN-DB jetzt: 1, 10, 20, 30, 40, 90, 99, 100 (alle benannt, alle Static)
Alle Ports weiterhin in VLAN 1 (non-disruptiv).
save: Success

Switch-Recovery: Telnet-VTY-Lockout (stale Session) erforderte User-Reboot
  des Switches. Credentials OK, WebUI ebenfalls blockiert (Session-Drop).
  Nach Reboot funktioniert Telnet ueber plain pipe UND expect.
2026-06-09 18:55:43 +02:00

108 lines
1.7 KiB
Plaintext

#!/usr/bin/expect -f
# VLAN-Namen setzen — korrigiert: `end` aus config-vlan geht zu sw1#,
# also nicht nutzen. Stattdessen `exit` aus config-vlan → config,
# und einmal `end` zum Speichern am Ende.
set timeout 30
log_user 1
spawn telnet $env(SW_HOST)
expect "Username:"
send "$env(SW_USER)\r"
expect "Password:"
sleep 1
send "$env(SW_PASS)\r"
expect "sw1#"
send "configure\r"
expect "(config)"
# 90 GUEST
send "vlan 90\r"
expect "(config-vlan)"
send "name GUEST\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# 99 MGMT
send "vlan 99\r"
expect "(config-vlan)"
send "name MGMT\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# 10 MAIN
send "vlan 10\r"
expect "(config-vlan)"
send "name MAIN\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# 20 INFRA
send "vlan 20\r"
expect "(config-vlan)"
send "name INFRA\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# 30 IOT
send "vlan 30\r"
expect "(config-vlan)"
send "name IOT\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# 40 UNTRUSTED
send "vlan 40\r"
expect "(config-vlan)"
send "name UNTRUSTED\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# 100 WAN
send "vlan 100\r"
expect "(config-vlan)"
send "name WAN\r"
expect "(config-vlan)"
send "exit\r"
expect "(config)"
# Save!
send "end\r"
expect "sw1#"
send "save\r"
expect {
"Success" { send "\r" }
timeout { }
}
# Verifizieren mit show vlan (paged)
send "show vlan\r"
# --More-- handling
for {set i 0} {$i < 20} {incr i} {
expect {
-ex "--More--" {
sleep 0.3
send " "
}
-ex "sw1#" {
break
}
timeout { break }
}
}
send "exit\r"
expect eof