Proxmox konfiguracja i podział sieci

Podział środowiska Proxmox na wiele sieci

Podział środowiska Proxmox na wiele sieci może przynieść kilka korzyści, w tym:

Większe bezpieczeństwo: Dzięki segregacji różnych rodzajów usług lub systemów w osobne sieci można skuteczniej izolować i kontrolować ruch sieciowy. Pomaga to ograniczyć ryzyko nieautoryzowanego dostępu lub potencjalnych ataków. Można na przykład oddzielić ruch związany z zarządzaniem od ruchu produkcyjnego lub utworzyć oddzielne sieci dla różnych środowisk klientów w środowisku hostingowym.

Optymalizacja wydajności: Podział na wiele sieci umożliwia wydajniejszą alokację zasobów sieciowych. Dedykując określone segmenty sieci do różnych celów, możesz ustalać priorytety i optymalizować ruch sieciowy w oparciu o specyficzne potrzeby każdego segmentu. Może to skutkować lepszą wydajnością krytycznych usług lub aplikacji.

Izolacja ruchu: Rozdzielenie sieci pomaga odizolować ruch sieciowy, zmniejszając prawdopodobieństwo przeciążenia lub zakłóceń między różnymi usługami lub systemami. Może to być szczególnie przydatne w przypadku aplikacji lub usług wymagających dużej przepustowości, które wymagają niezawodnej i stałej wydajności sieci.

Zgodność i wymagania prawne: W niektórych branżach lub środowiskach mogą obowiązywać określone wymagania dotyczące zgodności lub przepisów, które nakazują segregację sieci. Dzieląc swoje środowisko Proxmox na wiele sieci, możesz spełnić te wymagania i zapewnić integralność danych i prywatność.

Łatwość zarządzania: Zarządzanie dużą siecią może być złożone i trudne. Podział na wiele sieci umożliwia podzielenie sieci na mniejsze, łatwiejsze w zarządzaniu segmenty, co ułatwia monitorowanie i rozwiązywanie problemów związanych z siecią.

Skalowalność: dzieląc sieć na oddzielne segmenty, możesz niezależnie skalować każdy segment w oparciu o jego specyficzne potrzeby. Zapewnia to elastyczność w dostosowywaniu się do przyszłego wzrostu lub zmian wymagań sieciowych bez wpływu na całą infrastrukturę.

Ważne jest, aby dokładnie zaplanować segmentację sieci, biorąc pod uwagę takie czynniki, jak bezpieczeństwo, wydajność i łatwość zarządzania, aby upewnić się, że jest ona zgodna z wymaganiami i celami organizacji.

Adresy prywatne sieci

W ramach każdej klasy sieci istnieją wyznaczone adresy IP, które są zarezerwowane wyłącznie do użytku prywatnego/wewnętrznego. Ten adres IP nie może być używany na urządzeniach z dostępem do Internetu, ponieważ nie są one rutowalne. Na przykład serwery WWW i serwery FTP muszą używać nieprywatnych adresów IP. Jednak w ramach sieci domowej lub firmowej do urządzeń (takich jak stacje robocze, drukarki i serwery plików) są przypisywane prywatne adresy IP.

  • Zakres prywatny klasy A: od 10.0.0.0 do 10.255.255.255 – 126 możliwych sieci – 16 777 214 możliwych hostów na  sieć
  • Zakres prywatny klasy B: od 172.16.0.0 do 172.31.255.255 – 16 382  możliwych sieci – 65 534 możliwych hostów na  sieć
  • Zakres prywatny klasy C: od 192.168.0.0 do 192.168.255.255 – 2 097 150  możliwych sieci – 254 możliwych hostów na  sieć

Przydatne adresy

https://www.meridianoutpost.com/resources/articles/IP-classes.php
https://www.site24x7.com/tools/ipv4-subnetcalculator.html
https://www.davidc.net/sites/default/subnets/subnets.html?network=10.10.10.0&mask=24&division=1.0

Konfiguracja sieci w Proxmox

Sieć w moim serwerze Proxmox podzielona jest na segmenty:

  • 192.168.8.0/24 to sieć domowa a 192.168.8.20 to adres mostka vmbr0 z podpiętym fizycznym interfejsem  sieciowym w postaci  karty sieciowej USB 1 Gbit/s służącym do zarządzania serwerem Proxmox przez konsolę SSH i konsolę GUI
  • 192.168.100.0/24 to sieć maszyn wirtualnych podpiętych przez mostek vmbr1 do fizycznej karty sieciowej eno1 1 Gbit/s
  • 192.168.200.0/24 to sieć dla kontenetów LXC podpięta do mostka vmbr2
  • 10.10.10.1/24 to sieć dla klastra K8sm, OKD oraz CRC podpięta do mostka vmbr3
  • 172.16.1.1/24 to sieć dla maszyn wirtualnych związanych ze środowiskiem Windows AD podpięta do mostka vmbr4

 

nano /etc/network/interfaces
source /etc/network/interfaces.d/*
auto lo
iface lo inet loopback
iface eno1 inet manual
iface enxc4411efecf2b inet manual

auto vmbr0
iface vmbr0 inet static
        address 192.168.8.20/24
        gateway 192.168.8.1
        bridge-ports enxc4411efecf2b
        bridge-stp off
        bridge-fd 0
#Management network

auto vmbr1
iface vmbr1 inet static
        address 192.168.100.1/24
        bridge-ports eno1
        bridge-stp off
        bridge-fd 0
        post-up echo 1 > /proc/sys/net/ipv4/ip_forward
        post-up   iptables -t nat -A POSTROUTING -s '192.168.100.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.100.0/24' -o vmbr0 -j MASQUERADE
#Virtual machine network id 1xx

auto vmbr2
iface vmbr2 inet static
        address 192.168.200.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up   iptables -t nat -A POSTROUTING -s '192.168.200.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '192.168.200.0/24' -o vmbr0 -j MASQUERADE
#LXC container network id 2xx

auto vmbr3
iface vmbr3 inet static
        address 10.10.10.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up   iptables -t nat -A POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '10.10.10.0/24' -o vmbr0 -j MASQUERADE
#k8s crc OKD network id 3xx

auto vmbr4
iface vmbr4 inet static
        address 172.16.1.1/24
        bridge-ports none
        bridge-stp off
        bridge-fd 0
        post-up   iptables -t nat -A POSTROUTING -s '172.16.1.0/24' -o vmbr0 -j MASQUERADE
        post-down iptables -t nat -D POSTROUTING -s '172.16.1.0/24' -o vmbr0 -j MASQUERADE
#Windows AD network id 4xx
service networking restart

Przygotowanie routera do obsługi nowych sieci

Aby można było dowolnie komunikować się pomiędzy sieciami Proxmox oraz siecią domową 192.168.8.0/24 należy na routerze brzegowym podać odpowiednie trasy routingu i dodać translację adresów NAT.

Mikrotik ustawienie tras routingu

192.168.8.20 to adres interfejsu vmbr0 zarządzania Proxmox z podaną bramą domyślną 192.168.8.1

/ip route
add distance=1 dst-address=10.10.10.0/24 gateway=192.168.8.20
add distance=1 dst-address=172.16.1.0/24 gateway=192.168.8.20
add distance=1 dst-address=192.168.100.0/24 gateway=192.168.8.20
add distance=1 dst-address=192.168.200.0/24 gateway=192.168.8.20

Mikrotik ustawienie translacji NAT

/ip firewall nat>
add action=masquerade chain=srcnat out-interface=bridge src-address=192.168.8.0/24 src-address-list=10.10.10.0/24
add action=masquerade chain=srcnat out-interface=bridge src-address=192.168.8.0/24 src-address-list=172.16.1.0/24
add action=masquerade chain=srcnat out-interface=bridge src-address=192.168.8.0/24 src-address-list=192.168.100.0/24
add action=masquerade chain=srcnat out-interface=bridge src-address=192.168.8.0/24 src-address-list=192.168.200.0/24

Przygotowanie serwera DHCP w oparciu o dnsmasq na potrzeby nowej sieci

Tworzymy na szybko kontener LXC 1 vCPU / 256 MB RAM / 2 GB HDD  np. w oparciu o  szablon debian-11-standard_11.6-1 z następującymi ustawieniami sieciowymi

 

  • Bridge to mostek vmbr2 Proxmox dla sieci 192.168.200.0/24
  • IPv4 (static) 192.168.200.2/24
  • Gateway 192.168.200.1

Instalacja i konfiguracja dnsmasq

Po uruchomieniu kontenera instalujemy i konfigurujemy dnsmasq, który posłuży nam za serwer DHCP dla wybranej sieci

apt-get install dnsmasq
systemctl stop systemd-resolved
systemctl disable systemd-resolved

nano /etc/dnsmasq.d/vnet

domain-needed
bogus-priv
domain=netapps.local
dhcp-range=192.168.200.15,192.168.200.254,48h
dhcp-option=option:dns-server,192.168.8.1
# static ip
dhcp-host=6a:b8:70:47:23:62,lab-01,192.168.200.50

sudo systemctl start dnsmasq
sudo systemctl enable dnsmasq