Zašto DHCP rezervacija nije statična IP adresa za vaš VPN server
Rezervacija se poklapa s identifikatorom klijenta, a ne s mašinom, i nikada ne čini vašu javnu IP adresu statičnom. Šta zapravo pomjera adresu kućnog VPN servera.
Premjestio sam kućni VPN uređaj s Wi-Fi na Ethernet i njegova „trajna“ adresa promijenila se iste večeri. Ništa na ruteru nije bilo pokvareno. Rezervacija se poklapala s bežičnim adapterom, a tog adaptera više nije bilo na putu.
Ista zabluda ima i drugu polovinu. Popravljanje LAN adrese ne čini ništa za adresu na koju se spajaju tvoji prijatelji, i nema nikakve veze s privatnim bazenom koji VPN daje klijentima. Tri adrese, tri odvojena načina kvara, a samo je jedan od njih posao rezervacije.
Rezervacija se poklapa s klijentom, a ne s uređajem
U DHCPv4 rezervacija je vezana za hardversku adresu klijenta; u DHCPv6 za DUID koji klijent treba da zadrži. Polje hostname je oznaka za ljude. Ono što ruter zapravo poredi jest identifikator koji stiže u zahtjevu.
Čitajte zapis kao uslov: kada ovaj identifikator pita, dajte mu ovu adresu. Obnove zadržavaju isti zakup dok se poklapanje drži, a ponovno pokretanje samo ponovo pita. Kada se identifikator promijeni, zahtjev promaši rezervaciju i klijent uzme šta god dinamički bazen ponudi. Bez greške, bez upozorenja, samo druga adresa.
OpenWrt jasno pokazuje oblik. Jedan config host blok u /etc/config/dhcp veže ime, MAC i adresu zajedno, a dokumentacija o statičnim zakupima objašnjava kako taj zapis sarađuje s bazenom. Drugi ruteri kriju ista tri polja iza različitih oznaka.
Gdje se poklapanje tiho prekida
Zamjena hardvera je uobičajen slučaj. Promijenite mrežnu karticu ili premjestite mašinu između Etherneta i Wi-Fi-ja, i adresa koju ruter vidi mijenja se s njom. Stara rezervacija ostaje na listi i dalje izgleda ispravno.
Ponovna instalacija je drugi slučaj i najjače grize na IPv6. Svježa instalacija može stvoriti novi DUID dok je stari IPv4 zakup još valjan, pa adresa v4 preživi neko vrijeme, a zapis v6 prestane da se primjenjuje bez ikakve vidljive izmjene.
Treći je prikovan identifikator klijenta. Nekoliko DHCP klijenata dopušta da postavite niz identifikatora umjesto da koristite MAC. Ako nadogradnja ili prepisivanje konfiguracije izbaci tu postavku, poklapanje nestaje iako se mašina nije pomjerila.
Četvrti je dupliciranje: zastario blok i novi blok za isti host. Server odgovara onim pravilom koje se poklopi, često adresom bazena koju ste htjeli izbjeći. Obrišite zastario zapis umjesto da dodajete drugi.
Konfiguracija na strani hosta i šta košta
Postavljanje adrese na hostu potpuno uklanja pitanje poklapanja. Interfejs se diže s tom adresom bez obzira odgovara li DHCP, i to je ono što želite od mašine koja mora biti dostupna nakon ponovnog pokretanja rutera.
Cijena je vlasništvo. Sada vi dajete prefiks, pristupnik i rezolvere, i sami morate držati adresu izvan dinamičkog bazena. Na Ubuntuu s netplanom to nosi /etc/netplan/01-vpn.yaml:
network:
version: 2
ethernets:
eth0:
dhcp4: false
addresses: [192.168.50.10/24]
routes:
- to: default
via: 192.168.50.1
nameservers:
addresses: [192.168.50.1]Korisnici NetworkManagera dolaze do istog stanja s nmcli con mod "Wired connection 1" ipv4.method manual ipv4.addresses 192.168.50.10/24 ipv4.gateway 192.168.50.1, zatim nmcli con up "Wired connection 1". Primijenite netplan s netplan try pri prvom pokušaju umjesto s netplan apply; pogrešno upisan pristupnik skida uređaj s mreže i ostavlja vas da tražite konzolu.
Ipak zadržite odgovarajuću rezervaciju. Nije suvišna. Zapis bilježi adresu na strani rutera i sprječava DHCP server da tu adresu dodijeli gostujućem uređaju ako neko kasnije proširi bazen.
Stabilna LAN adresa nije javna krajnja tačka
Usmjerite prosljeđivanje porta na 192.168.50.10 i pravilo preživi svaku promjenu na strani LAN-a. Ne daje vam stabilnu internetsku adresu. Vaša javna IP adresa pripada provajderu i može se pomjeriti pri ponovnom spajanju ili zamjeni modema, a za to služi dinamički DNS.
Iza NAT-a na razini operatera uopće nema javne IPv4 adrese za prosljeđivanje i nikakva rezervacija je ne stvara. Prvo provjerite WAN stranicu rutera: ako se adresa nalazi u dijeljenom rasponu, dolazno prosljeđivanje ne može raditi, koliko god rezervacija bila čista.
Treća adresa je tunelski bazen, često nešto poput 10.8.0.0/24. Te adrese postoje samo unutar tunela i nikada se ne pojavljuju na LAN-u. Miješanje s LAN adresom servera je način na koji port završi proslijeđen klijentu koji je na mreži samo dok je spojen.
Provjerite put onim redom kojim se kvari
Počnite na ruteru. Uporedite zapis u tablici zakupa s ciljem rezervacije; ako je server uzeo adresu bazena, identifikator je pogrešan, a ip link show na hostu daje vam vrijednost za poređenje.
Zatim host. ip -4 addr show eth0 treba da prikaže očekivanu adresu i prefiks. Druga adresa na istom interfejsu obično znači da DHCP još radi uz vašu statičku konfiguraciju.
Zatim prosljeđivanje. Potvrdite da odredište još uvijek odgovara adresi koju ste upravo provjerili i da nešto sluša s ss -lntp. Prosljeđivanje prema zatvorenom portu spolja izgleda isto kao pokvareno prosljeđivanje.
Završite spolja, na telefonu s isključenim Wi-Fi-jem. Taj jedan test razdvaja „lokalna adresa je pogrešna“ od „javna dostupnost je pokvarena“, dva problema koja ova postavka stalno miješa.
Zapišite tri adrese — LAN, javnu i tunelski bazen — i zabilježite koji sistem posjeduje svaku. Kada sljedećeg mjeseca veza padne, znat ćete koju provjeriti umjesto da mijenjate sve tri odjednom.