fix(migration): the runbook pointed at addresses that die with the USG
The access table led with 192.168.8.143/.144 and offered the LoT addresses as a
fallback ("if unreachable, try"). That is backwards and would have stranded the
operator at the worst moment: the workstation sits on LoT, and reaching
192.168.8.x routes *through the USG*, so those addresses are guaranteed dead the
instant it is unplugged. Measured:
ip route get 192.168.8.143 -> via 10.0.0.1 (the USG)
ip route get 10.0.1.252 -> dev lanbr0 (same L2, no gateway)
10.0.1.252 and .253 are on the LoT VLAN, same broadcast domain as the
workstation, and both answer SSH. They are now the only addresses the runbook
gives, with the k8s ones struck through.
Also recorded: the switch cannot be run before unplugging the USG (two devices
on every gateway address; the guard refuses), so the order is forced. And
during the gap between unplugging and completing the switch there is no
inter-VLAN routing at all -- which means the JetKVMs (Management and kvm) and
Tailscale are NOT fallbacks in that window. LoT SSH is the only remote path;
below it is physical console. Added a step 0: open both SSH sessions and leave
them open before touching anything.
Both boxes are now installed and pass the pre-flight gate: mode unifi,
unifi.boot 231 lines including the reload action, delta at the right priority
(200/100), wan-secrets 0600, script executable, no config drift, VRRP still
MASTER/BACKUP. `vyos-unifi-switch vyos` refuses on both -- all six gateway
addresses detected answering ARP -- and neither box has gained dhcp-server, dns
or nat, so nothing about their behaviour has changed.
Co-Authored-By: Claude Opus 5 (1M context) <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01DMVzWZgiKW2wquf5z8S1yH
This commit is contained in:
@@ -4,18 +4,45 @@
|
||||
assistant and no web search. Everything you need is on this page and on the
|
||||
boxes themselves.
|
||||
|
||||
## Use these addresses. Not the other ones.
|
||||
|
||||
| | use this | do NOT use |
|
||||
|---|---|---|
|
||||
| vyos001 (MASTER) | **`10.0.1.252`** | ~~192.168.8.143~~ |
|
||||
| vyos002 (BACKUP) | **`10.0.1.253`** | ~~192.168.8.144~~ |
|
||||
|
||||
`ssh vyos@10.0.1.252` — by IP, not by name.
|
||||
|
||||
**The `192.168.8.x` addresses stop working the instant the USG is unplugged.**
|
||||
That is not a maybe. Your workstation is on LoT (`10.0.0.210/23`) and reaching
|
||||
`192.168.8.x` requires routing *through the USG*:
|
||||
|
||||
```
|
||||
ip route get 192.168.8.143 -> via 10.0.0.1 <- the USG. Gone.
|
||||
ip route get 10.0.1.252 -> dev lanbr0 <- same L2. Survives.
|
||||
```
|
||||
|
||||
`10.0.1.252` and `.253` are on the LoT VLAN, the same broadcast domain as your
|
||||
workstation, so they need no gateway at all. They are the only remote path that
|
||||
survives the cutover.
|
||||
|
||||
**Between unplugging the USG and finishing the switch there is no inter-VLAN
|
||||
routing.** In that window:
|
||||
|
||||
- the **JetKVMs are unreachable** from your workstation (they are on Management
|
||||
and kvm) — they are *not* a fallback during the gap
|
||||
- **Tailscale is down** with the internet
|
||||
- your workstation keeps `10.0.0.210` (86400s lease) and can still resolve via
|
||||
`10.0.0.194`, which is also link-scope
|
||||
|
||||
If LoT SSH fails, the next step is physical console, not the network.
|
||||
|
||||
| | |
|
||||
|---|---|
|
||||
| vyos001 (MASTER) | `192.168.8.143` — also `10.0.1.252` on LoT |
|
||||
| vyos002 (BACKUP) | `192.168.8.144` — also `10.0.1.253` on LoT |
|
||||
| JetKVMs | `192.168.1.28`, `192.168.1.29`, `192.168.3.6` |
|
||||
| JetKVMs (after routing is restored) | `192.168.1.28`, `192.168.1.29`, `192.168.3.6` |
|
||||
| Switch script | `/config/vyos-unifi-switch` on each box |
|
||||
| Login | user `vyos` |
|
||||
|
||||
Both boxes have **two** reachable addresses on different interfaces. If `eth2`
|
||||
(`192.168.8.x`) is unreachable, try the LoT address (`10.0.1.x`), and only then
|
||||
the JetKVM.
|
||||
|
||||
---
|
||||
|
||||
## If something is wrong, do this
|
||||
@@ -84,10 +111,19 @@ reference, and `translation port` rejects a port list.
|
||||
|
||||
## The cutover
|
||||
|
||||
0. **Open both SSH sessions BEFORE you unplug anything**, and leave them open:
|
||||
```
|
||||
ssh vyos@10.0.1.253 # vyos002, BACKUP
|
||||
ssh vyos@10.0.1.252 # vyos001, MASTER
|
||||
```
|
||||
If either will not connect, stop. Do not unplug the USG.
|
||||
|
||||
1. **Physically disconnect the USG.** Not just powered off — disconnected. The
|
||||
switch script refuses to run while anything still answers on a gateway
|
||||
address, because two devices on `.1` is the worst available outcome.
|
||||
2. On **vyos002 (BACKUP) first**:
|
||||
You cannot switch first and unplug after, for exactly that reason.
|
||||
|
||||
2. In the **vyos002 (BACKUP)** session, first:
|
||||
```
|
||||
sudo /config/vyos-unifi-switch vyos
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user