Kaksi kannettavaa samassa kotireitittimessä voivat päästä internetiin eri VPN-ulosmenojen kautta, eikä jaetulla Wi-Fi-verkolla ole siihen mitään sanottavaa. Tuloksen ratkaisee se, missä tunneli kulkee ja mikä käytäntö valitsee reitin kullekin pyynnölle. Vastakkainen uskomus on yhtä yleinen ja yhtä väärä: kaksi laitetta erillisillä profiileilla ei automaattisesti tuota kahta julkista osoitetta. Molemmat virheet syntyvät siitä, että yhtä osoitetta kohdellaan kuin niitä olisi kolme.

Kolme osoitetta, ja vain yksi niistä lähtee

Kannettavalla on koti-LAN-osoite, joka tunnistaa sen paikallisessa segmentissä, ja sillä voi olla myös VPN:n sisällä annettu tunneliosoite. Kumpikaan niistä ei näy etäpalvelulle. Se, mitä palvelu kirjaa, on sen laitteen julkinen ulostulo-osoite, joka lopulta lähettää paketin, matkalla tapahtuneen mahdollisen käännöksen jälkeen.

RFC 3022 piirtää eron, joka selittää suurimman osan tämänhetkisestä sekaannuksesta. Perinteinen NAT kartoittaa sisäiset osoitteet julkisiksi, kun taas portinkäännös sallii monen sisäisen osoitteen jakaa yhden julkisen osoitteen samanaikaisesti. Kotitalous, jossa on yksi julkinen osoite ja useita laitteita, on toinen tapaus, ja se on oletus lähes kaikkialla.

Laske julkiset osoitteet, älä profiileja. Kaksi asiakasta, joilla on eri tunneliosoitteet ja sama ulostulokäytäntö, tuottavat yhden havaitun osoitteen, ja yksi asiakas, jonka ulostulo on reititetty eri tavalla, voi tuottaa toisen. Se yksi vertailu on koko testi. Kaikki muu on oletus kaukaisesta päästä.

Mikä tekee kahdesta ulostulosta todella erilaiset

Ulosmeno on erilainen, kun viimeinen laite ennen internetiä käyttää kyseiselle liikenteelle eri julkista osoitetta. Näin voi käydä siksi, että VPN päättyy eri sijaintiin, siksi että ulostulopooli jakaa eri osoitteen, tai siksi että palveluntarjoaja reitittää pyynnön eri ulostulon kautta. Kaikki kolme ovat kaukaisessa päässä tehtyjä käytäntöpäätöksiä, eikä mikään niistä näy kotireitittimestä.

Kaksi laitetta, jotka kumpikin ajavat omaa asiakastaan samalla profiililla, päätyvät yleensä samaan pooliin ja saavat usein saman ulostulon tietylle istunnolle. Se ei ole vika, se on jaetun poolin normaali käyttäytyminen. Erillisten ulostulojen saaminen tarkoittaa yleensä sitä, että palvelulta pyydetään erillisiä määrityksiä sen sijaan, että asiakas konfiguroitaisiin kahdesti.

Lue palvelun ehdot samanaikaisista yhteyksistä ennen kuin suunnittelet takuun varaan. Toinen kirjautuminen on lupa yhdistää, ei lupaus yksinomaisesta osoitteesta. Jos ehdot vaikenevat, kysy palveluntarjoajalta sen sijaan että olettaisit. Vastaus muuttaa suunnittelua enemmän kuin mikään asiakasasetus.

Miksi erilliset profiilit eivät ole erillisiä ulostuloja

Profiili kuvaa, miten VPN:ään päästään ja miten todentaminen tehdään, eikä se kerro juuri mitään siitä, mitä tapahtuu sen jälkeen. Ulostulon valitsee kaukainen pää, jossa reititys, osoitepoolit ja käännöskäytäntö asuvat. Profiilin kopioiminen toiselle koneelle kopioi asiakasohjelman kokoonpanon, ei palvelimen päätöstä.

Päinvastainenkin pitää paikkansa. Yksi VPN-palvelin voi esittää useampaa kuin yhtä julkista ulostuloa, kun sen reititys ja käännöskäytäntö on rakennettu niin, kun taas erilliset palvelimet voivat ruokkia yhtä alavirran ulostuloa. Niinpä palvelimien nimien määrä kokoonpanossasi ei kerro mitään osoitteiden määrästä. Siksi kokoonpano on väärä paikka etsiä tätä vastausta.

Ainoa luotettava vastaus tulee pyynnöstä, joka tehdään sen järjestelyn kautta, jota aiot käyttää. Kaikki muu on päättelyä.

Mihin erottelu sijoitetaan

Reitittimen tunneli kattaa koko kotitalouden, mikä on kätevää ja tuottaa täsmälleen yhden jaetun ulostulon jokaiselle sen takana olevalle laitteelle. Asiakas jokaisessa laitteessa antaa laitekohtaisen hallinnan, mutta vaatii, että jokainen laite valmistellaan ja pysyy valmisteltuna. Käytäntöjä tukeva reititin istuu välissä ja valitsee reitin laitekohtaisesti, ja se toimii vain, jos se tunnistaa laitteet luotettavasti uudelleenyhdistysten ja DHCP-muutosten yli.

Toisen yksityisen DHCP-vuokrauksen luominen reitittimelle ei ole sama kuin toisen julkisen osoitteen luominen. Se muuttaa paikallista näkymää ja jättää ulostulon koskemattomaksi. Erottelu elää ulostulokäytännössä, olipa se käytäntö reitittimessä tai VPN-palvelussa.

Minkä muodon valitsetkin, kirjoita omistajuus ylös: kuka valmistelee laitteen, kuka vaihtaa sen tunnistetiedot ja kuka huomaa, kun se lakkaa käyttämästä aiottua reittiä.

Tarkista ulostulo, jonka todella sait

Tee tarkistus sovelluksesta, jolla on merkitystä, ja vertaa samaa osoiteperhettä molemmilla laitteilla. IPv4-tulos toisesta ja IPv6-tulos toisesta ei todista kummastakaan mitään. Toista sitten tarkistus uudelleenyhdistämisen jälkeen, koska poolin määritys voi muuttua istuntojen välillä.

Suorita se tunnelikäytännön sisällä olevasta päätteestä, älä laitteesta, joka kiertää sen. Väärä isäntä antaa itsevarman väärän vastauksen.

curl -4 -sS https://api.ipify.org; echo
curl -6 -sS https://api64.ipify.org; echo
ip route get 1.1.1.1

Jos molemmat laitteet tulostavat saman IPv4-osoitteen, ne jakavat ulostulon riippumatta siitä, kuinka monta tunnelia on pystyssä. Päätä sitten, mitä tapahtuu, kun tunneli pettää: asiakas, joka putoaa takaisin suoralle reitille, palauttaa molemmat laitteet koti osoitteeseen, ja erottelu katoaa ilman virhettä. Vahvista tuo paluukäyttäytyminen ennen kuin kuvailet järjestelyä kahdeksi ulostuloksi, ja muista, että eri osoitteet ovat verkon tulos, eivät kaksi anonyymiä identiteettiä.

Aiheeseen liittyvät artikkelit