Konfiguracja Ubuntu 26.04 jako router zapasowy (gw02)
Cel
Po wykonaniu kroków maszyna gw02 (Ubuntu 26.04 LTS) jest skonfigurowana jako router zapasowy w trybie standby. W normalnych warunkach pozostaje bezczynna; po awarii gw01 możliwe jest ręczne przełączenie sieci na gw02 bez zmiany adresacji (patrz A-15).
Wymagania wstępne
- Zainstalowany VirtualBox 7.x
- ISO Ubuntu 26.04 Server (pobrane z ubuntu.com)
- Działający router główny
gw01(A-01) - VM
gw02utworzona z dwoma adapterami:- Adapter 1 = NAT (WAN – dostęp do internetu)
- Adapter 2 = Internal Network:
biuro-lan(LAN)
Parametry maszyny
| Parametr | Wartość |
|---|---|
| Hostname | gw02 |
| IP (LAN) | 192.168.50.2/24 (statyczne) |
| Interface LAN | enp0s8 (Adapter 2) |
| Interface WAN | enp0s3 (Adapter 1 – NAT) |
| Login | cyfra |
| Hasło | Cyfra@GW2026 |
| OS | Ubuntu 26.04 LTS Server |
Kroki
1. Instalacja Ubuntu 26.04 Server
Zainstaluj Ubuntu 26.04 Server z opcją Minimized install. Podczas instalacji:
- hostname:
gw02 - konto:
cyfra, hasło:Cyfra@GW2026 - nie instaluj żadnych dodatkowych snaps (odznacz wszystko)
2. Konfiguracja statycznego IP (netplan)
sudo nano /etc/netplan/01-lan.yaml
network:
version: 2
ethernets:
enp0s3:
dhcp4: true
enp0s8:
addresses:
- 192.168.50.2/24
nameservers:
addresses: [192.168.50.1, 8.8.8.8]
sudo netplan apply
Weryfikacja:
ip addr show enp0s8
# powinno wyświetlić: inet 192.168.50.2/24
3. Włączenie przekazywania pakietów IPv4
sudo nano /etc/sysctl.conf
Odkomentuj lub dodaj:
net.ipv4.ip_forward = 1
Zastosuj bez restartu:
sudo sysctl -p
# Wynik: net.ipv4.ip_forward = 1
4. Instalacja pakietów
sudo apt update && sudo apt install -y nftables chrony net-tools
5. Konfiguracja NAT masquerade (nftables)
sudo nft add table ip nat
sudo nft add chain ip nat postrouting '{ type nat hook postrouting priority 100 ; }'
sudo nft add rule ip nat postrouting oifname "enp0s3" masquerade
Zapisz konfigurację trwale i włącz usługę:
sudo nft list ruleset | sudo tee /etc/nftables.conf
sudo systemctl enable --now nftables
Weryfikacja reguł:
sudo nft list ruleset
# Oczekiwane wyjście:
# table ip nat {
# chain postrouting {
# type nat hook postrouting priority srcnat; policy accept;
# oifname "enp0s3" masquerade
# }
# }
6. Konfiguracja chrony (NTP)
sudo nano /etc/chrony/chrony.conf
Dodaj na początku:
server 0.pl.pool.ntp.org iburst
server 1.pl.pool.ntp.org iburst
sudo systemctl restart chrony
7. Snapshot
W VirtualBox utwórz snapshot: „GW02-ZAPASOWY-BAZOWY"
Weryfikacja
# Ping z gw02 do internetu
ping -c 3 8.8.8.8
# Ping do gw01
ping -c 3 192.168.50.1
# Sprawdzenie reguł NAT
sudo nft list ruleset
# Sprawdzenie ip_forward
sysctl net.ipv4.ip_forward
# Wynik: net.ipv4.ip_forward = 1
# Status NTP
chronyc tracking
W trybie standby: stacje robocze korzystają nadal z gw01. Maszyna gw02 jest dostępna pod adresem 192.168.50.2.
Typowe błędy i rozwiązania
| Objaw | Przyczyna | Rozwiązanie |
|---|---|---|
Brak internetu na gw02 | Brak trasy domyślnej lub reguły NAT | ip route show (trasa przez enp0s3); sudo nft list ruleset (reguła masquerade) |
ip_forward nie działa po restarcie | Wpis w sysctl.conf zakomentowany | Odkomentuj net.ipv4.ip_forward = 1 w /etc/sysctl.conf i uruchom sudo sysctl -p |
Konflikt DHCP z gw01 | gw02 uruchomił serwer DHCP w trybie standby | gw02 nie uruchamia DHCP w trybie standby; uruchom go dopiero po przełączeniu failover |
Adres .2 niedostępny z sieci | Błędna konfiguracja netplan lub interfejsu | Sprawdź ip addr i plik /etc/netplan/01-lan.yaml; uruchom sudo netplan apply |