Každý VPS má od nás IPv4 adresu, IPv6 adresu a celý IPv6 rozsah /64. Ukážeme, ako overiť, že IPv6 funguje, a ako do VPS trvalo pridať ďalšiu adresu, či už IPv6 z vášho rozsahu, alebo prikúpenú IPv4.
Čo budete potrebovať
- VPS u StormHostu s Ubuntu 24.04 alebo Debianom 13
- Pripojenie cez SSH ako root (návod)
- Otvorenú konzolu v prehliadači pre prípad, že sa pri úprave siete odrežete
- Približne 20 minút
Čo od nás dostávate#
Všetko nájdete v zákazníckom účte v záložke Sieť:
| Položka | Čo to je | Nastavená vo VPS? |
|---|---|---|
| IPv4 adresa | Hlavná verejná adresa VPS, napríklad 203.0.113.10. | Áno, automaticky pri založení. |
| IPv6 adresa | Hlavná IPv6 adresa VPS, napríklad 2001:db8::10. | Áno, automaticky pri založení. |
| IPv6 rozsah (/64) | Celý blok IPv6 adries, ktorý patrí iba vášmu VPS, napríklad 2001:db8::/64. Hlavná IPv6 adresa je jedna z nich. | Iba hlavná adresa. Ďalšie si pridáte sami. |
| Ďalšie IPv4 adresy | Prikúpené IPv4 adresy. | Nie. „Nastavte ich aj vo VPS.“ |
Rozsah /64 znamená, že prvé štyri skupiny adresy sú pevné a zvyšné štyri si volíte vy. Z rozsahu 2001:db8::/64 môžete použiť napríklad 2001:db8::11, 2001:db8::22 alebo 2001:db8::abcd:1. Adries je v rozsahu toľko, že vám nikdy nedôjdu.
Jedinú adresu z rozsahu nepoužívajte: adresu predvolenej brány, ak v rozsahu leží. Zistíte ju príkazom ip -6 route show default (adresa za slovom via). Brána začínajúca fe80: v rozsahu neleží a obmedzenie sa vás netýka.
Ochrana proti podvrhnutiu IP adries, ktorú na sieti prevádzkujeme, prepúšťa prevádzku z hlavnej IPv4, všetkých adries vášho rozsahu /64 aj prikúpených IPv4. Iné adresy VPS používať nemôže.
Overenie, že IPv6 funguje#
Vypíšte IPv6 adresy VPS:
bash ip -6 addr show scope globalip -6 addr– vypíše IPv6 adresy sieťových rozhraní.show scope global– iba verejné adresy (bez lokálnychfe80::).
Vo výstupe uvidíte riadok s vašou adresou, napríklad
inet6 2001:db8::10/64 scope global.Vyskúšajte spojenie do internetu cez IPv6:
bash ping -6 -c 4 2606:4700:4700::1111ping– posiela testovacie pakety a meria odozvu.-6– použiť IPv6.-c 4– poslať 4 pakety a skončiť.2606:4700:4700::1111– verejný DNS server Cloudflare, ktorý na ping odpovedá.
Keď uvidíte štyri riadky
64 bytes from 2606:4700:4700::1111a0% packet loss, IPv6 funguje.
Aký systém sieťovej konfigurácie VPS používa#
Postup pridania adresy sa líši podľa toho, čo sieť vo VPS nastavuje. Najprv zistite názov sieťového rozhrania:
ip -br addr-br– stručný výpis, jeden riadok na rozhranie.
Rozhranie s vašou verejnou adresou sa zvyčajne volá eth0. Riadok lo je miestna slučka, tú neriešte. V návode ďalej používame eth0; ak sa vaše rozhranie volá inak, dosaďte jeho názov.
Potom zistite, či VPS používa netplan:
ls /etc/netplan/- Ak vidíte súbor s príponou
.yaml(typicky50-cloud-init.yaml), VPS používa netplan. Na Ubuntu 24.04 je to vždy tak. - Ak je priečinok prázdny alebo neexistuje, VPS používa ifupdown a konfigurácia je v
/etc/network/interfacesa v priečinku/etc/.network/ interfaces. d/
Neupravujte 50-cloud-init.yaml
Súbor 50-cloud-init.yaml (pri ifupdown 50-cloud-init v interfaces.d) sa generuje automaticky a v hlavičke sám upozorňuje, že ručné zmeny v ňom nemusia prežiť reštart. Ďalšie adresy preto vždy dávajte do vlastného súboru. Netplan aj ifupdown obsah súborov spoja.
Pridanie ďalšej IPv6 adresy z rozsahu#
Ako príklad pridáme adresu 2001:db8::11. Vy použijete adresu zo svojho rozsahu zo záložky Sieť.
Vyskúšanie bez trvalej zmeny#
Najprv adresu pridajte iba dočasne. Do reštartu VPS bude fungovať, potom zmizne. Overíte tak, že je adresa správna, bez toho, aby ste siahali do konfigurácie.
ip -6 addr add 2001:db8::11/64 dev eth0ip -6 addr add– pridá IPv6 adresu.2001:db8::11/64– nová adresa a dĺžka prefixu vášho rozsahu (/64).dev eth0– rozhranie, na ktoré adresu pridávate.
Otestujte, že z novej adresy ide prevádzka von a odpovede sa vracajú:
ping -6 -c 4 -I 2001:db8::11 2606:4700:4700::1111-I 2001:db8::11– odoslať pakety z novej adresy (ako zdrojová adresa).
Keď ping prejde, adresa funguje a môžete ju uložiť natrvalo.
Trvalé nastavenie#
Netplan
Vytvorte vlastný konfiguračný súbor:
bash nano /etc/netplan/60-dalsi-adresy.yamlVložte doň tento obsah (odsadenie iba medzerami, nikdy tabulátorom):
/etc/ netplan/ YAML60-dalsi-adresy.yaml network: version: 2 ethernets: eth0: addresses: - 2001:db8::11/64Riadok Čo znamená network:aversion: 2Povinná hlavička každého súboru netplanu. ethernets:Nasledujú sieťové rozhrania typu ethernet. eth0:Identifikátor rozhrania. Musí byť rovnaký ako v 50-cloud-init.yaml, inak netplan vytvorí nové nastavenie namiesto doplnenia existujúceho.addresses:Zoznam adries, ktoré sa k rozhraniu pridajú. Adresy z 50-cloud-init.yamlzostanú.- 2001:db8::11/64Nová adresa. Ďalšie adresy pridajte ako ďalšie riadky s rovnakým odsadením. Identifikátor rozhrania zistíte príkazom
cat /etc/: je to prvý riadok podnetplan/ 50-cloud-init. yaml ethernets:(typickyeth0:). Predvolenú bránu ani DNS servery do svojho súboru nepíšte. Sú už v50-cloud-init.yamla platia aj pre novú adresu.Uložte súbor (Ctrl+O, Enter) a zatvorte editor (Ctrl+X).
Nastavte súboru práva, aby ho nemohli čítať ostatní používatelia (netplan inak vypisuje varovanie):
bash chmod 600 /etc/netplan/60-dalsi-adresy.yamlSkontrolujte, ako netplan oba súbory spojil:
bash netplan get ethernets.eth0.addressesnetplan get– vypíše výslednú konfiguráciu zloženú zo všetkých súborov.
Vo výpise musia byť pôvodné adresy aj nová
2001:db8::11/64.Použite konfiguráciu bezpečne:
bash netplan trynetplan try– použije novú konfiguráciu a čaká na potvrdenie. Keď do 120 sekúnd nestlačíte Enter, vráti pôvodné nastavenie. Ak by vás zmena odrezala, o dve minúty sa spojenie obnoví samo.
Ak SSH spojenie ďalej funguje, stlačte Enter a zmenu tým potvrďte.
ifupdown
Overte, že hlavná konfigurácia načítava súbory z priečinka
interfaces.d:bash grep -n source /etc/network/interfacesVo výpise musí byť riadok
source /etc/(alebonetwork/ interfaces. d/* source-directory). Ak chýba, pridajte ho na koniec súboru/etc/network/interfaces.Vytvorte vlastný súbor:
bash nano /etc/network/interfaces.d/60-dalsi-adresyVložte obsah:
/etc/ network/ textinterfaces.d/ 60-dalsi-adresy iface eth0 inet6 static address 2001:db8::11/64Riadok Čo znamená iface eth0 inet6 staticĎalšie nastavenie pre rozhranie eth0, IPv6, pevná adresa. Pre jedno rozhranie smie byť viac blokovifacea ifupdown použije všetky.address 2001:db8::11/64Nová adresa s dĺžkou prefixu. Bránu ( gateway) sem nepíšte, je už v hlavnej konfigurácii.Uložte a zatvorte editor. Adresu už máte pridanú dočasne príkazom
ip, takže nič reštartovať nemusíte. Súbor sa použije pri ďalšom štarte VPS.
Pridanie ďalšej IPv4 adresy#
Objednanie#
- Otvorte VPS a prejdite na záložku Zmena balíka.
- V riadku IPv4 adresy zvýšte počet adries. Každá stojí 32 Kč mesačne.
- Skontrolujte Novo mesačne a Doplatok teraz, kliknite na Objednať a zaplatiť a objednávku zaplaťte.
- Po zaplatení adresu pridelíme k vášmu VPS a pošleme vám e-mail. Adresa sa objaví v záložke Sieť v časti Ďalšie IPv4 adresy.
Nastavenie vo VPS#
Postup je rovnaký ako pri IPv6, iba s iným zápisom adresy. Ako príklad použijeme 203.0.113.11.
Vyskúšajte adresu dočasne:
bash ip addr add 203.0.113.11/32 dev eth0 ping -c 4 -I 203.0.113.11 1.1.1.1ip addr add 203.0.113.11/32 dev eth0– pridá IPv4 adresu na rozhranieeth0./32– adresa sa pridá samostatne, bez vlastnej podsiete. Prevádzka z nej pôjde cez existujúcu predvolenú bránu VPS, takže nemusíte poznať masku ani bránu novej adresy.ping -c 4 -I 203.0.113.11 1.1.1.1– pošle 4 pakety z novej adresy na verejný server1.1.1.1.
Ak ping prejde, uložte adresu natrvalo. Postup je rovnaký ako v časti Trvalé nastavenie pri IPv6, líši sa iba zapisovaná adresa:
Netplan
Otvorte vlastný súbor (ak ho ešte nemáte z IPv6, vytvorte ho s rovnakou hlavičkou ako vyššie):
bash nano /etc/netplan/60-dalsi-adresy.yamlDo zoznamu
addresses:pridajte riadok s novou adresou. Súbor potom vyzerá napríklad takto:/etc/ netplan/ YAML60-dalsi-adresy.yaml network: version: 2 ethernets: eth0: addresses: - 2001:db8::11/64 - 203.0.113.11/32Riadok s IPv6 adresou tam je iba vtedy, ak ste ju pridali podľa predchádzajúcej časti.
Uložte súbor (Ctrl+O, Enter), zatvorte editor (Ctrl+X) a nastavte práva:
chmod 600 /etc/.netplan/ 60-dalsi-adresy. yaml Spustite
netplan trya ak SSH spojenie ďalej funguje, potvrďte zmenu klávesom Enter.
ifupdown
Otvorte vlastný súbor:
bash nano /etc/network/interfaces.d/60-dalsi-adresyPridajte na koniec blok:
/etc/ network/ textinterfaces.d/ 60-dalsi-adresy iface eth0 inet static address 203.0.113.11/32iface eth0 inet static– ďalšie nastavenie pre rozhranieeth0, IPv4, pevná adresa.address 203.0.113.11/32– nová adresa. Bránu (gateway) nepíšte, je už v hlavnej konfigurácii.
Uložte a zatvorte editor. Adresu už máte pridanú dočasne príkazom
ip, súbor sa použije pri ďalšom štarte VPS.
Odkiaľ VPS posiela odchádzajúcu prevádzku
Odchádzajúce spojenia (aktualizácie, sťahovanie) idú ďalej z hlavnej IPv4 adresy. Ďalšiu adresu použije aplikácia, ktorá na nej počúva alebo sa na ňu výslovne naviaže. Napríklad druhý web alebo druhý herný server na rovnakom porte, každý na inej IP adrese.
Ak budete z novej adresy posielať e-maily, nastavte jej reverzné DNS v záložke Sieť (pozri Reverzné DNS).
Aplikácie a IPv6#
Pridaná adresa nestačí, aplikácia na nej musí tiež počúvať. Overte to príkazom:
ss -tlnpss– vypíše sieťové spojenia a otvorené porty.-t– iba TCP (pre UDP použite-u).-l– iba porty, na ktorých program počúva.-n– adresy a porty ako čísla, nie názvy.-p– ukázať názov programu.
Ako čítať stĺpec s miestnou adresou:
| Zápis | Význam |
|---|---|
0.0.0.0:80 | Program počúva na všetkých IPv4 adresách, ale nie na IPv6. |
[::]:80 alebo *:80 | Program počúva na IPv6 (a zvyčajne aj na IPv4). |
203.0.113.11:80 | Program počúva iba na tejto jednej adrese. |
127.0.0.1:3306 | Iba vnútri VPS, zvonku nedostupné. |
Ďalšie body, na ktoré nezabudnite:
- DNS: aby sa k vám návštevníci dostali cez IPv6, pridajte k doméne záznam AAAA s IPv6 adresou (pozri DNS záznamy).
- Firewall: pravidlá v záložke Firewall bez vyplnenej adresy platia pre IPv4 aj IPv6. Ping cez IPv6 však potrebuje vlastné pravidlo s protokolom ICMPv6. UFW má IPv6 zapnuté v predvolenom stave (pozri Firewall UFW).
- Nginx: pre IPv6 potrebuje v bloku
servervedľalisten 80;aj riadoklisten [::]:80;.
Overenie#
ip -br addrukazuje novú adresu pri rozhraníeth0.- Ping s prepínačom
-I <NOVA_ADRESA>prechádza. - Po reštarte VPS tlačidlom Reštartovať je adresa vo výpise
ip -br addrstále. Reštart si naplánujte, keď sa vám to hodí, a majte otvorenú konzolu.
Keď sa odrežete#
Keď po zmene siete nefunguje SSH, otvorte konzolu v prehliadači. Tá od siete VPS nezávisí.
- Zmažte alebo opravte svoj súbor (
/etc/alebonetplan/ 60-dalsi-adresy. yaml /etc/).network/ interfaces. d/ 60-dalsi-adresy - Pri netplane konfiguráciu použite znova príkazom
netplan apply. Pri ifupdown reštartujte VPS tlačidlom Reštartovať.
Keď niečo nefunguje#
Permissions for /etc/netplan/60-dalsi-adresy.yaml are too open #
Ide iba o varovanie, konfigurácia sa napriek tomu použije. Odstránite ho príkazom chmod 600 /etc/.
Invalid YAML alebo Error in network definition#
V súbore je chyba v odsadení. Používajte iba medzery (žiadne tabulátory) a dodržte odsadenie z ukážky: každá úroveň o dve medzery viac. Skontrolujte aj to, že názov rozhrania končí dvojbodkou (eth0:).
Nová IPv6 adresa neodpovedá#
- Skontrolujte, že adresa patrí do vášho rozsahu: prvé štyri skupiny musia byť rovnaké ako pri IPv6 rozsahu (/64) v záložke Sieť.
- Vo výpise
ip -6 addrhľadajte pri adrese slovodadfailed. Znamená, že rovnakú adresu už na sieti používa iné zariadenie. Zvoľte inú. - Skontrolujte firewall vo VPS aj v zákazníckom účte.
VPS nemá vôbec žiadnu verejnú IPv6 adresu#
Príkaz ip -6 addr show scope global nič nevypíše a v záložke Sieť máte IPv6 adresu uvedenú. Napíšte nám (podpora) a pošlite výpis príkazu ip -br addr.
Ďalšia IPv4 adresa nefunguje#
- Skontrolujte, že je adresa v záložke Sieť v časti Ďalšie IPv4 adresy. Ak ešte čaká na pridelenie, počkajte na e-mail.
- Overte, že je vo VPS nastavená (
ip -br addr). - Skontrolujte pravidlá firewallu.
Adresa po reštarte zmizla#
Buď ste ju pridali iba dočasne príkazom ip addr add, alebo ste upravili automaticky generovaný súbor 50-cloud-init. Uložte ju do vlastného súboru podľa postupu vyššie.
Zhrnutie
- V záložke Sieť máte IPv4, IPv6 adresu a celý IPv6 rozsah /64; ďalšie adresy z rozsahu si pridávate sami.
- Prikúpené IPv4 adresy musíte vo VPS nastaviť, samy sa nepridajú.
- Novú adresu najprv vyskúšajte dočasne príkazom
ip addr adda pingom s-I. - Natrvalo ju uložte do vlastného súboru (
60-dalsi-adresy), nikdy do50-cloud-init. - Pri netplane používajte
netplan try, ktorý sa pri chybe sám vráti. - Aplikácia musí na novej adrese počúvať a doména potrebuje záznam AAAA.