Narzędzia użytkownika

Narzędzia witryny


projekty:proj_sieci_domowej

To jest stara wersja strony!


Projekt mojej Sieci domowej

Wymagania i specyfikacja

Moja sieć domowa to cały czas zmieniająca się struktura zależna od tego co akurat robię dla danego klienta lub co akurat mnie zainteresowało i postanowiłem to przetestować na żywym organizmie. Co do moich wymagań to nie są wielkie, użytkowników sieć będzie miała no najwyżej kilka, z czego jeden to ja ;-). Sieć musi być bardzo możliwie konfigurowalna niektóre usługi udostępnione przez tunele natomiast inne przez przekierowanie portów i reverse proxy. Niektóre usługi muszą być dostępne z zewnątrz, dla mnie ale również dla klientów i dla osób dla których prowadzę szkolenia. Innym aspektem który jest dla mnie ważny to optymalizacja kosztów, urządzenia muszą być w miarę możliwości tanie tak żeby można było je łatwo wymienić. Sporo z komponentów tej sieci którą wam tutaj przedstawie to sprzęt klasy domowej lub został przeze mnie odkupiony (za grosze) od niegdyś moich klientów.

Schemat lokalizacji sieci

projekty:diagram1.png

Wymagania

Wymagania co do mojej sieci:

  • publiczny adres IPv4 (może być dynamiczny)
  • brak blokad na tunele i IPsec od ISP
  • łatwa i szybka konfigurowalność
  • możliwość zestawienia tunelu VPN pomiędzy dwoma lokalizacjami (tylko do monitoringu)
  • hostowanie usług na różnych domenach
  • urządzenia i systemy z dobrą dokumentacją
  • małe koszty

Specyfikacja

ISP

Jeżeli chodzi o mojego dostawcę internetu jest to PLAY (niegdyś UPC). Każdy abonent sieci UPC dostaje dynamiczny adres IPv4, z czasem dzierżawy około miesiąca, więc wyczerpuje to moje wymagania co do adresu IP. Modem dostarczony przez UPC to pudełeczko o nazwie „Horizon”, jest to zwykły modem w standardzie DOCSIS 3.0 (Bardzo fajny materiał który pokazuje jak działa DOCSIS 1.0/1.1).

Routery, Switche i inne urządzenia sieciowe

Zdjęcie:
Opis Mój router: MikroTik hAP AX lite Mój switch: TPlink TL-SG105E Mój accesspoint: Mikrotik mAP lite Router w drugiej lokalizacji: Mikrotik RB941
Nazwa LAB-ROUTER TP-LINK LAB-AP MikrotikDzialka

Tak jak wspomniałem we wstępie nie są to urządzenia klasy Enterprise, natomiast na moje potrzeby wystarczają i pozwalają na wysoką konfigurowalność.

Schemat sieci

projekty:diagram2.png

Opis schematu

Jak widać powyżej sieć nie jest bardzo skomplikowana ale ma klika głównych komponentów takich jak serwery i routery w obywdu lokalizacjach. W następnych sekcjach omówimy sobie poszczególne elementy całego schematu.

LAB-ROUTER

To jest główny router na którym są wszystkie przekierowania portów na odpowiednie serwery. Kiedyś był on równiez serwerem VPN, teraz już tylko dostał tunel PPTP do monitorowania urządzeń w drugiej lokalizacji. Przekierowania portów są do usług na serwerach minecraft-server i ardugeek-server. Wykorzystuję na nim funckję DDNS dostępną od mikrotika gdyż nie wszystkie usługi chce mieć na tunelach cloudflare.

Mikrotik Dzialka

To jest tylko prosty klient dla sieci 4G/LTE jako klient DHCP z bramą. Skonfogurowany jest jako klient tunely PPTP. Tunel ten na dzień dzisiejszy wykorztuję tylko do monitorowania urządzeń. Całą resztę robi tailscale.

konfiguracja routera poniżej (hasła i inne dane poufne zostały ukryte):

PROXMOX-REMOTE

20250508-112336.jpeg

Fizycznie jest to stary serwer Fujitsu Primergy RX300 S8, który dawno temu odkupiłem od jednego z moich klientów. Mam na nim zainstalowanego hyper-visora Proxmox VE. Nie jest to serwer z wygórowaną specyfikacją ale wystarcza na różne eskperymenty. Ma procesor Intel Xeon, 32GB pamięci ram, Dwie macierze jedną RAID1 (256GB SSD) i drugą RAID5 (3.5TB HDD). Na nim jest uruchomiona usługa tailscale.

MAINFRAME

Jest to maszyna wirtualna z systemem xubuntu 22.04. Na niej mam uruchomione usługi takie jak:

Wszystkie z tych usług są hostowane za pomocą tunelu cloudflare. Nie mam dostępnego adresu publicznego w tej lokalizacji na karcie sim, więc niestety pozostaje tylko tunel cloudflare. Nie są to usługi dla mnie krytyczne więc jak tunel się rozłączy (a ma tendencję raz na jakichś czas ;-)) to nie ma to wpływu na działanie mojej sieci. Connector tailscale nie działa na tej maszynie wirtualnej tylko działa na samym hypervisorze.

ARDUGEEK-SERVER

Jest to fizyczny komputer który pewien czas temu złożyłem z zamówionych komponentów, ma on jak na dzisiejsze czasy już trochę przestarzałą specyfikację ale na moje potrzeby wystarcza w 100%. System na nim zainstalowany to Windows Server 2019. Specyfikacja tego serwera to: Intel i3 3 generacji, 16GB pamięci ram, i wiele różnego rodzaju dysków zewnętrznych i wewnętrznych podłączonych do niego. Wiele z nich jest backupowanych w różne miejsca (inne dyski lub onedrive) za pomocą narzędzia Duplicati z retencją i różnicowe. Jest to centralny punkt całej mojej sieci, jest to serwer od którego wszystko się zaczęło (oczywiście nie ten konkretny, było wiele jego poprzedników o tej samej nazwie), to do niego się łączę zdalnie jak jestem gdzieś poza domem a coś się zepsuło i muszę coś naprawić zdalnie, to na nim testuję różne rozwiązania, to na nim jest uruchomiona ta Wiki. Wszystko co jest w mojej sieci jest w jakichś sposób powiązane z tym serwerem.

Poniżej zestawienie usług działających na tym serwerze.

Usługi wewnętrzne nie dostępne publicznie:

Usługi dostępne publicznie:

ARDU-STATION

To jest moja główna stacja robocza i komputer na którym zdarza mi się ogrywać gry wideo. Specyfikacja to Ryzen 5 5800U, 32GB ram i 1TB SSD, 1TB HDD, 2TB HDD. To jest główne stanowisko z całym środowiskiem do wirtualizowania i testowania nowych rozwiązań to tutaj wykorztuję środowisko Hyper-V i CHR od MikroTika do szkoleń. To tutaj powstał i jest wykorzystywany skrypt do mapowania topologii Hyper-V. Tutaj również mam zainstalowany konnector tailscale ponieważ stąd również się łączę do moich serwerów i testuję różne rozwiązania a w wolnym czasie lubie pograć w klasyki gatunku.

Tutaj usług jako takich nie ma mogę w sumie wymienić tylko jedną mianowicie mam tutaj WSL2 skonfigurowany tak żebym mógł na nim uruchomić program GNU-RADIO do symulacji przetwarzania sygnałów.

minecraft-server

To jest bardzo stary przemysłowy mini pc od firmy giada. Ma tylko 8GB pamięci ram i intela i3 3gen. Tutaj mam zainstalowany pakiet Application Managment Panel od CubeCoders, hostuję tutaj serwery do grania ze znajomymi i rodziną. Głównie na ten moment działa tutaj wieloplatformowy serwer Minecraft. Mam tutaj uruchomione zadanie w Cron'ie które co dwa dni pakuje cały serwer Minecraft w ZIP i wysyła na ardugeek-server. Konfigurację mojego serwer możesz zobaczyć tutaj.

Jedyne co jest dodatkowe tutaj poza standardową konfiguracją serwer Minecraft jest to że tunel cloudflare udostępnia poniższe witryny:

Plugin Bluemap

BlueMap is a program that reads your Minecraft world files and generates not only a map, but also 3D-models of the whole surface. With the web-app you then can look at those in your browser and basically view the world as if you were ingame! Or just look at it from far away to get an overview.

Z https://bluemap.bluecolored.de/

Jest to moje niedawne odrycie i uważam że ten plugin powinien mieć każdy kto ma swój własny serwer Minecraft. Plugin ten pozwala w formie 3D przeglądać świat gry tak jakbyśmy byli w grze. Plugin na szczęscie jest napisany w JavaScript'cie więc nie obciąża serwera. Wygląda to spektakularnie. Instalacja jest prosta, a port na jakim mapa jest widoczna to 8100.

Zasada działania Tailscale
Zasada działania tuneli Cloudflare
projekty/proj_sieci_domowej.1746701704.txt.gz · ostatnio zmienione: 2025/05/08 12:55 przez administrator