Kako registrirati velik broj IP adresa na Debianu/Ubuntuu | INTROSERV
EUR
european

EUR

usa

USD

Croatia Hr
Ex. VAT Ex. VAT 0%

Kako registrirati velik broj IP adresa na Debianu/Ubuntuu

Jednom poslužitelju često je potrebno više od jedne IP adrese. Ovaj vodič objašnjava dva načina dodjele više IPv4 adresa jednom mrežnom sučelju na Debianu i Ubuntuu:

  • automatski, pomoću shell skripte i systemd usluge — preporučuje se za velike raspone;
  • izravno u netplanu — preporučuje se kada adrese moraju preživjeti i rekonfiguraciju mreže i ponovno pokretanje.

Obje metode čine konfiguraciju trajnom nakon ponovnog pokretanja. Pročitajte napomenu na kraju svake metode kako biste odabrali onu koja odgovara vašem slučaju.

Kada su vam potrebne višestruke IP adrese

Nekoliko uobičajenih radnih opterećenja na jednom poslužitelju zahtijeva više od jedne javne adrese:

  • Poštanski poslužitelji koji koriste zasebne adrese i PTR zapise za izolaciju reputacije slanja različitih domena.
  • Web poslužitelji koji zahtijevaju namjenske adrese za zastarjele aplikacije, izolaciju klijenata ili specifične politike vatrozida.
  • Proxy i VPN infrastruktura, gdje je svaka instanca proxyja ili VPN krajnja točka vezana za vlastitu javnu adresu.
  • Kontejneri ili virtualni strojevi koji koriste usmjerene IP adrese.

VPS planovi INTROSERV-a prema zadanim postavkama uključuju dvije IPv4 adrese i /112 IPv6 podmrežu. Dodatne IPv4 adrese dostupne su na mnogim lokacijama. Provjerite dostupnost za odabranu regiju u konfiguratoru narudžbe.

Prije nego počnete

Trebate root pristup i naziv sučelja koje će nositi dodatne adrese. Moderna izdanja Debiana i Ubuntua više ne koriste stari naziv eth0, stoga to nemojte pretpostavljati. Ispišite popis sučelja zajedno s njihovim trenutnim adresama i identificirajte ono koje već sadrži vašu primarnu adresu:

ip -br addr show

Izlaz prikazuje unose poput ens3, enp1s0 ili eth0 uz adrese koje su već na njima konfigurirane. Sučelje koje već nosi vašu glavnu IP adresu ono je koje treba koristiti u sljedećim koracima. Primjeri ovdje koriste ens3.

Warning

Ovi koraci mijenjaju mrežnu konfiguraciju na poslužitelju kojem najvjerojatnije pristupate putem SSH-a. Pogreška može prekinuti vaš vlastiti pristup. Imajte pri ruci drugi način pristupa ako ga imate, poput konzole pružatelja usluge ili IP-KVM-a, i dajte prednost sigurnim opcijama primjene prikazanima u nastavku.

Izrada skripte za adrese

Kratka skripta dodaje raspon adresa u jednom prolazu. Izradite je u /usr/local/sbin:

nano /usr/local/sbin/extra-ips.sh

Zalijepite sljedeću skriptu. Zamijenite naziv sučelja, prefiks i raspon blokom koji vam je dodijeljen. Adrese u nastavku koriste dokumentacijski raspon iz RFC 5737 i služe samo kao rezervirani znakovi:

#!/bin/bash set -euo pipefail # Interface that will carry the additional addresses. IFACE="ens3" # Common prefix and the first and last value of the host octet. # Replace these with the block assigned to you. PREFIX="203.0.113" FIRST=10 LAST=60 # Stop early with a clear message if the interface name is wrong. if ! ip link show "$IFACE" >/dev/null 2>&1; then echo "Interface $IFACE not found. Check the name with: ip -br addr show" >&2 exit 1 fi for HOST in $(seq "$FIRST" "$LAST"); do ip addr replace "${PREFIX}.${HOST}/32" dev "$IFACE" done

Info

Adrese namjerno koriste prefiks /32. Primarno sučelje već posjeduje rutu za svoju podmrežu, pa je svakoj sekundarnoj adresi potrebna samo lokalna ruta hosta. Prefiks /32 sprječava jezgru da doda dupliciranu rutu podmreže i održava tablicu usmjeravanja urednom. Skripta koristi ip addr replace umjesto ip addr add kako bi se mogla sigurno ponovno pokrenuti bez pogreške na adresama koje već postoje.

Omogućite izvršavanje skripte. Obratite pozornost na potpunu putanju, što je bio dio koji je nedostajao u prethodnoj verziji ovog vodiča:

chmod +x /usr/local/sbin/extra-ips.sh

Postizanje trajnosti adresa pomoću systemd usluge

Ručno pokretanje skripte dodaje adrese samo do sljedećeg ponovnog pokretanja. Da biste ih automatski primijenili prilikom pokretanja sustava, izradite systemd uslugu koja pokreće skriptu tijekom podizanja sustava. Ova metoda funkcionira jednako bez obzira koristi li sustav netplan, systemd-networkd ili stariji ifupdown skup alata.

Izradite datoteku jedinice:

nano /etc/systemd/system/extra-ips.service

Dodajte sljedeće:

[Unit] Description=Assign additional IP addresses After=network-online.target Wants=network-online.target [Service] Type=oneshot ExecStart=/usr/local/sbin/extra-ips.sh RemainAfterExit=yes [Install] WantedBy=multi-user.target

Ponovno učitajte systemd i omogućite uslugu kako bi se pokrenula sada i pri svakom pokretanju sustava:

systemctl daemon-reload systemctl enable --now extra-ips.service

Potvrdite da se usluga ispravno pokrenula:

systemctl status --no-pager extra-ips.service

Warning

Adrese koje je dodala ova skripta nisu dio konfiguracije netplana ili systemd-networkda. Kasniji netplan apply, networkctl reconfigure ili bilo koje ponovno pokretanje mreže mogu ih ukloniti. Vraćaju se pri sljedećem ponovnom pokretanju, ili odmah ako pokrenete systemctl restart extra-ips.service. Ako adrese moraju ostati na mjestu i tijekom rekonfiguracije mreže, umjesto toga koristite metodu s netplanom u nastavku.

Alternativa: definiranje adresa u netplanu

Na Ubuntuu, gdje je netplan zadan sustav, adrese se mogu deklarirati izravno u netplanu. Mrežni skup alata tada ih tretira kao upravljane adrese, pa preživljavaju rekonfiguraciju. To odgovara malom, fiksnom popisu. Za veliki raspon gore opisana systemd usluga bolje se skalira, jer netplan zahtijeva jedan redak po adresi.

Kada više netplan datoteka definira isto sučelje, njihove se postavke mogu neočekivano nadjačati ili spojiti, što može ukloniti vašu primarnu adresu i prekinuti pristup. Uređivanje postojeće konfiguracijske datoteke obično je sigurnije nego izrada druge datoteke za isto sučelje. Otvorite datoteku koja već konfigurira vaše sučelje, obično /etc/netplan/50-cloud-init.yaml ili /etc/netplan/00-installer-config.yaml:

ls /etc/netplan/ nano /etc/netplan/50-cloud-init.yaml

Zadržite sve postojeće postavke sučelja, poput dhcp4, primarne adrese, pristupnika i DNS poslužitelja. Dodajte dodatne adrese unutar popisa addresses na istom sučelju. Primjer u nastavku zadržava DHCP za primarnu adresu i dodaje tri sekundarne adrese:

network: version: 2 ethernets: ens3: dhcp4: true addresses: - 203.0.113.10/32 - 203.0.113.11/32 - 203.0.113.12/32

Novije verzije netplana upozoravaju ako datoteku mogu čitati drugi korisnici. Ograničite dozvole kako biste uklonili to upozorenje:

chmod 600 /etc/netplan/50-cloud-init.yaml

Testirajte promjenu pomoću netplan try. Ova naredba primjenjuje konfiguraciju i automatski je vraća na prethodno stanje nakon 120 sekundi ako je ne potvrdite, što vas štiti od gubitka udaljenog pristupa:

netplan try

Ako veza ostane aktivna i sve izgleda ispravno, potvrdite kada budete upitani, a zatim trajno primijenite konfiguraciju:

netplan apply

Provjera rezultata

Ispišite popis adresa trenutno vezanih uz sučelje i potvrdite da su nove adrese prisutne:

ip -br addr show ens3

Dodatne adrese sada bi se trebale pojaviti u izlazu i automatski će se vraćati nakon svakog ponovnog pokretanja.

Uklanjanje adresa

Za uklanjanje jedne adrese, izbrišite je sa sučelja:

ip addr del 203.0.113.10/32 dev ens3

Ako ste koristili skriptu i uslugu, zaustavite dodjelu cijelog raspona pri podizanju sustava onemogućavanjem i uklanjanjem usluge:

systemctl disable --now extra-ips.service rm /etc/systemd/system/extra-ips.service systemctl daemon-reload

Ako ste koristili netplan, uklonite dodatne retke s popisa addresses u datoteci netplana, a zatim pokrenite netplan apply.

Rješavanje problema

Ako se usluga ne pokreće, provjerite njezino stanje i zapisnike:

systemctl status --no-pager extra-ips.service journalctl -u extra-ips.service

Provjerite sljedeće:

  • naziv sučelja u skripti podudara se sa stvarnim nazivom iz ip -br addr show;
  • adrese pripadaju bloku koji vam je dodijeljen;
  • skripta je izvršna.

Ako ste pogreškom koristili prefiks /24 umjesto /32, u tablici usmjeravanja to se očituje kao nekoliko dupliciranih ruta podmreže. Provjerite to naredbom:

ip route

Ovaj vodič usredotočen je na IPv4. Kao i kod IPv4, sekundarne IPv6 adrese obično se dodaju kao adrese hosta s prefiksom /128, koristeći istu naredbu ip addr replace, na primjer ip addr replace 2001:db8::10/128 dev ens3.

VAT

  • Other

    Ex. VAT

    0%
  • austria

    Austria

    20%
  • Belgium

    Belgium

    21%
  • Bulgaria

    Bulgaria

    20%
  • Croatia

    Croatia

    25%
  • Cyprus

    Cyprus

    19%
  • Czech Republic

    Czech Republic

    21%
  • Denmark

    Denmark

    25%
  • Estonia

    Estonia

    22%
  • France

    France

    20%
  • Finland

    Finland

    24%
  • Germany

    Germany

    19%
  • Greece

    Greece

    24%
  • Hungary

    Hungary

    27%
  • Ireland

    Ireland

    23%
  • Italy

    Italy

    22%
  • Latvia

    Latvia

    21%
  • Lithuania

    Lithuania

    21%
  • Luxembourg

    Luxembourg

    17%
  • Malta

    Malta

    18%
  • Netherlands

    Netherlands

    21%
  • Poland

    Poland

    23%
  • Portugal

    Portugal

    23%
  • Romania

    Romania

    19%
  • Slovakia

    Slovakia

    20%
  • Slovenia

    Slovenia

    22%
  • Spain

    Spain

    21%
  • Sweden

    Sweden

    25%
  • USA

    USA

    0%
european
states
  • germany
  • Español
  • Italiano
  • Poland
  • Русский
  • Slovenski
  • Türkçe
  • ukraine
  • kingdom
  • French
  • Hrvatska
  • Other
  • Austria
  • Belgium
  • Bulgaria
  • Croatia
  • Cyprus
  • Czech Republic
  • Denmark
  • Estonia
  • Finland
  • France
  • Germany
  • Greece
  • Hungary
  • Ireland
  • Italy
  • Latvia
  • Lithuania
  • Luxembourg
  • Malta
  • Netherlands
  • Poland
  • Portugal
  • Romania
  • Slovakia
  • Slovenia
  • Spain
  • Sweden
  • USA