W ramach serii wpisów zbudujemy w pełni funkcjonalną wirtualną sieć w oparciu typowe rozwiązania stosowane w małych i średnich biurach. Użyte zostaną wirtualne zamienniki dla poszczególnych urządzeń sieciowych oraz darmowe rozwiązania. Realna sieć, którą zamierzam odtworzyć, oparta jest na następujących elementach. Dostawca internetu (+ drugi redundantny) –> brama sieciowa fortigate –> switche –> hosty. W sieci funkcjonuje zwirtualizowane środowisko serwerowe oparte na klastrze. Macierz, udziały sieciowe, backupy, dwa kontrolery domeny i DNSy, serwer DHCP, windows server, LDAP, logowanie do domeny, kerberos itd. Budynek 4 kondygnacyjny, switch na każdym piętrze.
Sieć zostanie zbudowana w GNS3, uruchamiane jako wirtualna maszyna KVM.
Sprawdzenie czy procesory obsługują zagnieżdżoną wirtualizację
lscpu | grep Virtualization
egrep -c '(vmx|svm)' /proc/cpuinfo
Instalacja KVM + Manager
sudo apt install qemu-kvm libvirt-daemon-system virt-manager
Dodanie użytkownika do grup
sudo usermod -aG libvirt $USER
sudo usermod -aG kvm $USER
GNS3 dla KVM można ściągnąć tu: https://github.com/GNS3/gns3-gui/releases
Abu uruchomić GNS3 trzeba stworzyć nową wirtualną maszyną na podstawie 2 plików qcow2, które trzeba zamontować jako storage w opcjach VM. Dla wirtualnego środowiska przydzielono 8 rdzeni oraz 16GB ram.
File
→ New Virtual Machine
Import existing disk image
GNS3 VM-disk001.qcow2
Po otwarciu konfiguracji:
Add Hardware
→ Storage
GNS3 VM-disk002.qcow2
Bus type: VirtIO
Sieć
NIC
→ VirtIO
→ NAT (default)
Potem trzeba uruchomić wirtualną maszynę, sprawdzić przydzielone ip, i można używać GUI GNS3 przez przeglądarkę.
Założenia projektu w części 1
Topologia składa się z:
- Cisco ASAv jako firewall i brama do Internetu (zamiast FortiGate)
- Zamiast fizycznych switchy, przełączniki wirtualne IOSvL2:
- Przełącznik centralny
- Cztery przełączniki dostępowe na każdym piętrze
- Ośmiu hostów VPCS (dla uproszczenia, realnie do 100 hostów)
- Serwera Debian 12.6 pełniącego rolę serwera DHCP (realnie DHCP w ramach windows server)
- Węzła NAT zapewniającego dostęp do Internetu jako ISP

Firewall i Switche dodawane są jako nody QEMU VM z plików qcow2
asav952-204.qcow2
vios_l2-adventerprisek9-m-15.2-2017032
Zasoby dla asav, 2 rdzenie 2048 MB ram
Zasoby dla IOSvL2, 1 rdzeń, 1024 MB ram.
Konfiguracja ASAv
Firewall został skonfigurowany z dwoma interfejsami:
- Outside – połączenie do NAT
- Inside – sieć lokalna 192.168.1.0/24
Dodatkowo skonfigurowano:
- trasę domyślną
- translację NAT
- inspect icmp umożliwiający poprawne działanie pingów z sieci lokalnej
Bez inspekcji ICMP hosty mogły komunikować się z bramą, ale nie otrzymywały odpowiedzi z Internetu.
Konfiguracja interfejsu LAN:
interface GigabitEthernet0/1
nameif inside
security-level 100
ip address 192.168.1.1 255.255.255.0
no shutdown
Konfiguracja interfejsu WAN:
interface GigabitEthernet0/0
nameif outside
security-level 0
ip address dhcp setroute
no shutdown
Konfiguracja NAT:
object network LAN
subnet 192.168.1.0 255.255.255.0
nat (inside,outside) dynamic interface
Domyślna trasa:
route outside 0.0.0.0 0.0.0.0 <gateway>
Inspekcja ICMP:
policy-map global_policy
class inspection_default
inspect icmp
Zapis konfiguracji:
write memory
Diagnostyka ASAv
Sprawdzenie interfejsów:
show interface ip brief
Wyświetlenie polityk ruchu
show run policy-map

WAŻNE!!! Port e0 to Managment port. NAT i Switch muszą być podłączone do pozostałych.
Diagnostyka IOSvL2
Sprawdzenie statusu portów:
show interfaces status
Sprawdzenie interfejsów:
show ip interface brief
Sprawdzenie sąsiadów CDP:
show cdp neighbors
Sprawdzenie tablicy MAC:
show mac address-table
Opcjonalnie włączenie portów jeżeli switch nie włączył przy boocie:
conf t
interface range gi0/0 - 3
no shutdown
interface range gi1/0 - 2
no shutdown
end
Zapis konfiguracji:
write memory
Polecenia uruchomione na głównym switchu.

Tablica MAC po pingach hostów.

Diagnostyka VPCS
Pobranie adresu z DHCP:
dhcp
Sprawdzenie konfiguracji:
show ip
Ping bramy:
ping 192.168.1.1
Ping Internetu:
ping 8.8.8.8
Ping innych hostów w sieci.

Instalacja Debian 12.6
Debian został zainstalowany jako node QEMU VM z pliku qcow2 który można ściągnąć bezpośrednio w GUI GNS3:
Zasoby:
- 2 vCPU
- 4 GB RAM
Można zmniejszyć do 1 CPU i 512 MB ram jeżeli maszyna będzie tylko serwerem DHCP.
Konfiguracja statycznego IP
Plik:
sudo nano /etc/network/interfaces
Konfiguracja:
auto ens4
iface ens4 inet static
address 192.168.1.100
netmask 255.255.255.0
gateway 192.168.1.1
dns-nameservers 1.1.1.1 8.8.8.8
Restart sieci:
sudo systemctl restart networking
Sprawdzenie adresacji:
ip a
Test połączenia:
ping 192.168.1.1
ping 8.8.8.8
Instalacja DHCP Server
Instalacja:
sudo apt update
sudo apt install isc-dhcp-server -y
Wskazanie interfejsu:
sudo nano /etc/default/isc-dhcp-server
INTERFACESv4="ens4"
Konfiguracja DHCP:
sudo nano /etc/dhcp/dhcpd.conf
Przykładowa konfiguracja:
authoritative;
subnet 192.168.1.0 netmask 255.255.255.0 {
range 192.168.1.10 192.168.1.90;
option routers 192.168.1.1;
option domain-name-servers 192.168.1.101;
option domain-name "lab.local";
default-lease-time 600;
max-lease-time 7200;
}
Test konfiguracji:
sudo dhcpd -t
Uruchomienie usługi:
sudo systemctl restart isc-dhcp-server
sudo systemctl enable isc-dhcp-server
Sprawdzenie statusu:
sudo systemctl status isc-dhcp-server
Dzięki temu nowe hosty będą otrzymywały automatycznie adresację ip po włączeniu DHCP.
Dalszy rozwój laboratorium
W kolejnych etapach planowana jest emulacja działania prawdziwej domeny. Między innymi dodanie:
- kontrolerów domeny DC1 i DC2 (Samba AD, LDAP, Kerberos)
- serwerów DNS
- serwera plików, udziałów sieciowych
- hostów z możliwością logowania do domeny.

Dodaj komentarz