Jak łatwo zauważyć patrząc choćby na baner na dole strony (troszkę nad stopką) strona działa na serwerze VPS uruchomionym w DigitalOcean, stąd to informacje na ten temat pojawiają się częściej, niż na temat „konkurencji” (choć bywają wyjątki).
Dziś będzie o kolejnej nowości – dosłownie z przed dwóch dni, a konkretnie pływających adresach IP…
Spis treści w artykule
- 1 DigitalOcean udostępnia pływające IP
- 2 Zagnij 10$ i przetestuj usługi DigitalOcean
DigitalOcean udostępnia pływające IP
No dobra – skoro czytacie dalej, to albo wiecie o co chodzi, i interesuje Was jak do tego podeszła ekipa z DigitalOcean, lub zastanawiacie się o co chodzi z tym, że jakieś adresy IP pływają, i czy to ma związek z oceanem w nazwie firmy… ;-)
Zacznę od tego, że określenie/nazwa „pływające IP” (floating IP) nie wzięła się od oceanu w nazwie DigitalOcean, a jest to określenie – w pewnym uproszczeniu – usługi pozwalającej dynamicznie przenosić adres IP między urządzeniami.
Prywatny, publiczny, stały, dynamiczny, a teraz jeszcze pływający
Zazwyczaj spotykamy 2 rodzaje adresów:
- Prywatny adres IP – adres pod którym jesteśmy widoczni/dostępni w ramach sieci LAN, bez możliwości połączenia się z naszym komputerem „z zewnątrz” (przynajmniej bez NATa i dodatkowego publicznego adresu IP)
- Publiczny adres IP – jest to adres pod którym nasze urządzenie (zazwyczaj będzie to komputer, serwer lub router) jest dostępne z zewnątrz, czyli z internetu (często spotyka się określenie sieć WAN)
Jeszcze może być stały bądź dynamiczny – czyli albo mamy adres IP przypisany do urządzenia na stałe, i zawsze to urządzenie jest pod nim dostępne (oczywiście jeśli jest włączone), albo jest nam przydzielany dynamicznie, bez gwarancji, że następnym razem będzie taki sam (usługa często realizowana przez serwery DHCP, dynamiczny i publiczny adres występuje też np. w Neostradzie).
I to chyba tyle, jeśli chodzi o „użytkowników domowych” i niezbędną teorię…
Highly Available Web Servers
W przypadku serwerów czasami jest to za mało – często potrzebujemy móc pod dany adres IP, na który np. wskazuje nasza domena (rekord A) szybko podstawić inny serwer, bez konieczności zmiany samego adresu IP. Czy to na potrzeby podstawienia innej, np. mocniejszej maszyny, czy musimy szybko podstawić zapasową maszynę, bo główna uległa awarii, a czas to pieniądz (zwłaszcza w przypadku sklepów internetowych).
Gdy mamy własną serwerownię i/lub korzystamy z własnego serwera DHCP nie jest to większym problemem – wystarczy zmienić odpowiedni zapis w tablicy NAT.
W przypadku gdy korzystamy z serwerów VPS – czy „w chmurze” (cloud) jak to się teraz nazywa – zazwyczaj każdy taki serwer ma swój publiczny adres IP, pod którym dostępne są uruchomione na nim usługi (np. serwer WWW), i na który wskazują DNSy naszych domen (stron WWW).
I nawet jeśli korzystamy z usług typu Cloudflare do zarządzania wpisami DNS dla domen, gdzie właściwie każda zmiana odbywa się w czasie rzeczywistym (dlatego Cloudflare nadaje się również na serwer DDNS), to zostają jeszcze inne usługi, które działają nie po nazwie domeny, ale bezpośrednio po adresie IP serwera (np. jakiś monitor pracy serwera).
Load Balancer
Oczywiście możemy skorzystać z tzw. Load Balancera, który automatycznie i dynamicznie dzieli nam ruch na poszczególne serwery, np. w zależności od obciążenia poszczególnych serwerów, czy ich dostępności.
Ale i taki Load Balancer może ulec awarii, lub może potrzebować prac serwisowych w trybie „offline”.
A nie będziemy chyba stawiać Load Balancera przed Load Balancerem tylko na potrzeby takiej sytuacji, zwłaszcza że ten pierwszy Load Balancer też może kiedyś potrzebować kolejnego Load Balancera przed sobą ;-)
Floating IP
I tu dochodzimy do pływających adresów IP – przydatne, niezależnie od tego czy korzystamy z rozbudowanej sieci serwerów połączonej Load Balancerem, czy mamy tylko jeden serwer VPS, który czasem przyjdzie podmienić nam na inny…
Pływający adres IP (floating IP address) to publiczny adres IP, który mamy do naszej dyspozycji, a który w sposób dynamiczny (i jeśli zajdzie taka potrzeba automatyczny) może być przydzielany rożnym serwerom, zależnie od potrzeb.
Wykorzystanie pływającego IP na przykładzie DigitalOcean
Załóżmy, że mamy (np. w DigitalOcean, gdzie dostępna jest ta usługa) tylko jeden serwer VPS, który nazywa się „VPS01” i jego publiczny adres IP to 192.0.0.1, na który kieruje m.in. rekord A naszej domeny internetowej (ale nie tylko).
Oczywiście mamy kopię zapasową za którą w DigitalOcean płacimy dodatkowo 10% kosztów serwera (lub korzystamy z bezpłatnych snapshotów).
I teraz – niezależnie, czy nasz główny serwer ulegnie awarii, czy potrzebujemy zwiększyć jego moc, ale zależy nam na ciągłej, nieprzerwanej dostępności uruchomionych na nim usług przygotowujemy sobie drugi serwer, bazując na kopii zapasowej działającego serwera – tak by wszystkie usługi/strony były jak najaktualniejsze.
Nazywamy nasz serwer VPS02, i ma on publiczny adres 192.0.0.2, na który teraz należałoby skierować wszystkie usługi, tak by spokojnie móc wyłączyć/przełączyć w tryb offline serwer VPS01.
I tak jak pisałem wcześniej – jeśli korzystamy np. z Cloudflare do obsługi naszej domeny, taka zmiana przebiegnie właściwie natychmiast.
Problem z usługami, gdzie zamiast domeny (może się wydawać głupie, ale czasem jest to niezbędne) użytkownicy korzystają z połączenia bezpośrednio na adres IP naszego serwera.
I w tym miejscu sprawdzi się pływający adres IP, choć oczywiście trzeba go skonfigurować z odpowiednim wyprzedzeniem tak by wszystkie usługi korzystały z niego, a nie adresu IP serwera (w naszym przykładzie chodzi o VPS01).
Konfiguracja pływającego adresu
Pływający adres IP w DigitalOcean przypisany jest do danego regionu, czyli możemy go dynamicznie przydzielać do dowolnego serwera (kropelki), w ramach tego samego rejonu (serwerowni).
Zaczynamy od uzyskania pływającego adresu IP – w tym celu po zalogowaniu się do panelu zarządzania przechodźmy do sekcji:
- Networking > Floating IPs
Na początku nie mamy żadnego adresu tego typu:
Więc wybieramy serwer do którego chcemy przypisać pływający adres IP, lub – jeśli na razie nie chcemy go przypisywać do żadnego serwera – sam region i klikamy na przycisk:
Assign Floating IP
Po tej operacji dodatkowy adres pojawi się na liście – w naszym przypadku od razu przypisany do serwera VPS01 w lokalizacji AMS2:
Gdy dodamy adres, ale go nie przydzielimy od razu do żadnego serwera będzie to wyglądać tak:
Zmiana przypisanego serwera
By zmienić serwer dostępny pod tym adresem IP wystarczy kliknąć na niebieską ikonę z symbolem ołówka i wybrać serwer, na który ma wskazywać adres:
Sama zmiana trwa dosłownie chwile, po której wszystkie usługi powiązane z naszym pływającym IP automatycznie będą korzystać z wybranego serwera (np. VPS02).
Ten pierwszy raz
Co istotne – jeśli Wasz serwer został utworzony przed 20 października, to przed skorzystanie z usługi musicie jeszcze dokonać małej modyfikacji ustawień sieciowych w systemie.
W tym celu przejdziemy do edycji pliku „etc/network/interfaces”:
sudo nano /etc/network/interfaces
I w sekcji dotyczącej „eth0” dodajemy linijkę:
up ip addr add 10.14.0.5/16 dev eth0
Czyli całość będzie wyglądać np. tak:
iface eth0 inet static
address 95.*.*.* # <- Tu znajduje się adres IP Waszego serwera (zamaskowałem)
netmask 255.255.255.0
gateway 95.*.*.* # <- Tu znajduje się adres IP bramy Waszego serwera (zamaskowałem)
up ip addr add 10.14.0.5/16 dev eth0
dns-nameservers 8.8.8.8 8.8.4.4
Po tej operacji musicie jeszcze uruchomić ponownie serwer, lub skorzystać z polecenia:
sudo /etc/init.d/networking restart
Podany przykład dotyczy serwerów opartych na dystrybucji Debian (i Ubuntu), jeśli korzystacie z innej dystrybucji zerknijcie do tego poradnika.
Garść dodatkowych informacji
Skoro sprawy techniczne za nami, to jeszcze garść dodatkowych informacji (i opłaty, o których za chwilę) związanych z usługą:
- Na obecnym etapie pływające adresy IP dostępne są tylko dla adresów IP4/IPv4
- Domyślnie obowiązuje limit 3 pływających adresów na konto (można zgłosić zapotrzebowanie an więcej)
- Ze względów na ryzyko wykorzystywania usługi do wysyłania SPAMu na pływających adresach IP nie można korzystać z serwera SMTP (serwer SMTP postawiony na VPSie, z zewnętrznych można jak najbardziej)
- Pływający IP jest niezależny od głównego adresu samego serwera – oznacza to, że serwer cały czas dostępny jest też pod swoim głównym adresem IP, i możemy korzystać wedle potrzeb z obu
Opłaty, czyli nie korzystasz – płacisz
Na świecie ogólnie mamy spory deficyt adresów IP (IPv4), więc nie powinno dziwić, że dostawcy usług starają się walczyć z „niepotrzebnym blokowaniem adresów”, choćby poprzez monetyzację niewykorzystywanych zasobów.
Tak też jest w DigitalOcean – za usługę pływających IP (floating IP) nie zapocimy nic, tak samo jak za każdy wykorzystywany adres IP przyznany w jej ramach. Wykorzystywany, czyli taki, który wskazuje na jakiś serwer.
Na powyższym przykładzie nie zapłacimy niż za adres zaczynający się od „188” (AMS2), gdyż jest on przypisany do jednego z serwerów (VPS01).
Zapłacimy natomiast za adres zaczynający się od „46” (LON1), gdyż nie jest on przypisany do żadnego serwera (Unassigned).
Kosz takiego zarezerwowanego, ale nieprzypisanego adresu to 0,006$ za każdą godzinę, czyli jakieś 4,3$ miesięcznie. Z tym, że „dla zachowania prostoty w rozliczeniach” dodatkowa opłata nie będzie pobierana, jeśli w danym miesiącu kwota z tego tytułu nie przekroczy 1$, czyli jakieś 166 godzin miesięcznie możecie blokować dodatkowy adres IP bez dodatkowych konsekwencji (do czego oczywiście nie zachęcam, a wręcz przeciwnie).
Zagnij 10$ i przetestuj usługi DigitalOcean
Na koniec mała promocja dla tych z Was, którzy chcieliby przetestować usługi DigitalOcean – czy to pływające adresy IP, czy ogólnie serwery VPS – mam 10$ na dobry start.
Wystarczy, że założycie konto z tego linka. Więcej informacji na ten temat (10$ dla nowych użytkowników) znajdziecie na tej stronie…
- Home Assistant 2024.10, czyli nowa karta „nagłówek” i niedziałający TTS w ramach usługi Google Cloud - 1970-01-01
- Zero Trust od Cloudflare, czyli prosty i bezpieczny sposób na dostęp do lokalnych zasobów z zewnątrz, bez publicznego adresu IP i otwierania portów na routerze - 1970-01-01
- Home Assistant i integracja z IMGW-PIB, czyli tworzymy automatyzację z powiadomieniami bazując na sensorach zagrożenie i alarm powodziowy - 1970-01-01