Wykonaj procedurę po testach NAT. Usuń tabelę tylko wtedy, gdy zapis stanu potwierdza, że nie istniała przed Lab 04 i została utworzona przez to ćwiczenie. Nie używaj nft flush ruleset.
STATE="$HOME/lab04-state"
if grep -qx absent "$STATE/nft-table.marker"; then
# UWAGA: delete usuwa całą tabelę lab04_nat wraz z jej łańcuchami i regułami.
sudo nft delete table ip lab04_nat
else
echo "Tabela istniała wcześniej — nie jest usuwana"
fi
sudo nft list table ip lab04_nat 2>/dev/null || echo "Tabela Lab 04 usunięta"
sudo nft list ruleset
Na routerze przywróć dokładną wartość forwardingu sprzed Lab 04. Nie ustawiaj bezwarunkowo zera, ponieważ stanem początkowym mógł być działający router z Lab 03.
STATE="$HOME/lab04-state"
sudo sysctl -w net.ipv4.ip_forward="$(cat "$STATE/ip-forward.before")"
sysctl net.ipv4.ip_forward
Jeżeli kończysz Lab 04, wyłącz VM, przywróć zapisany stan trzeciej karty WAN oraz pozostałych adapterów. Na każdej VM odtwórz jej własny plik interfaces.before i przeładuj sieć z lokalnej konsoli, ponieważ restart może przerwać SSH.
STATE="$HOME/lab04-state"
if grep -qx present "$STATE/interfaces.marker"; then
sudo cp -a "$STATE/interfaces.before" /etc/network/interfaces
else
# UWAGA: usuń plik tylko wtedy, gdy marker potwierdza jego wcześniejszy brak.
sudo rm -- /etc/network/interfaces
fi
sudo systemctl restart networking
ip -br address
ip route show table all
Porównaj wyniki z address.before iroutes.before. Oczekiwanym stanem jest dokładnie konfiguracja z początku Lab 04, zwykle działający routing Lab 03 bez tabeli MASQUERADE i bez dodatkowego WAN. Procedura nie usuwa innych tabel nftables ani konfiguracji trwałej spoza tego labu.
Kontynuuję Lab 05: usuń elementy NAT i WAN; Lab 05 jest niezależne, więc nie wymaga pozostawienia translacji. Kończę ćwiczenia: po odtworzeniu stanu Lab 03 możesz dodatkowo wykonać jego własny rollback, jeśli chcesz wrócić do konfiguracji sprzed całej sekwencji.