Du vieši IP viename Azure VPN VM sukuria lūkestį, kuris retai išsipildo: adresas, prie kurio jungiasi klientai, bus ir adresas, kurį mato svetainės. Šį rezultatą sukuria trys nepriklausomi sprendimai, ir tik pirmasis susijęs su tunelio klausytuvu. Antrasis yra svečio šaltinis, naudojamas persiunčiamam kliento srautui, o trečiasis yra Azure išėjimo metodas, taikomas tam šaltiniui. Pakeiskite vieną ir kiti du lieka ten, kur buvo, todėl kiekvieną nuspręskite aiškiai.

Sprendimas 1: kur tunelis baigiasi

Viešas Azure IP yra susietas su privačia IP konfigūracija NIC kortelėje; tai ne adresas, kurį pridedate svečio operacinės sistemos viduje. Skaitykite susiejimą, o ne darykite prielaidą: az network nic show --ids /subscriptions/.../networkInterfaces/vpn-nic --query 'ipConfigurations[].{private:privateIPAddress,public:publicIPAddress.id}'. Kokį privatų adresą ši užklausa grąžins, būtent tą svečias ir turi iš tikrųjų turėti.

Viena NIC gali nešti kelias IP konfigūracijas, todėl du vieši adresai nereikalauja dviejų NIC. Jei dizainas vis dėlto naudoja dvi NIC, kiekviena atsineša savo svečio maršrutus ir kitus šuolius, ir jūs pridėjote maršrutizavimo sprendimą, o ne jį supaprastinote.

Paslaugai su aiškiu vietiniu susiejimu susiekite su tikruoju privačiu svečio adresu, niekada su viešuoju pakaitiniu. Klausytuvas, priimantis visus adresus, gauna srautą per kiekvieną IP konfigūraciją, kuri jį pasiekia, todėl apribokite įėjimą tinklo saugos grupe ir pagrindinio kompiuterio ugniasiene, o ne tikėkitės, kad nuspręs susiejimo tvarka.

Sprendimas 2: kokį šaltinį naudoja persiųstas klientas

Po to, kai šliuzas iššifruoja kliento užklausą, persiunčiamas paketas skiriasi nuo to, kuris atvyko į VPN klausytuvą. Svečiui reikia įjungto persiuntimo, srautą leidžiančios ugniasienės politikos ir šaltinio adreso, kurį leidžia debesijos dizainas. Jei verčiate vidinį kliento adresą, Azure vertins būtent tą išverstą šaltinį, o ne vidinį kliento adresą.

Siaura SNAT taisyklė gali pasirinkti privatų svečio šaltinį, bet negali pranokti vėlesnio Azure vertimo. Rinkitės SNAT, kai jums reikia atskaitomybės už kiekvieną klientą VM viduje; praleiskite jį, kai potinklio išėjimo dizainas jau suteikia stabilų viešą šaltinį ir antras vertimas tik pridėtų būsenos.

Sprendimas 3: kuris Azure išėjimo metodas laimi

Microsoft dokumentuojaišėjimo prioritetų tvarką: taikomas maršrutas į įrenginį ar šliuzą turi prioritetą, o potinklio NAT Gateway jungtis turi prioritetą prieš egzemplioriaus lygio viešą IP atitinkamame kelyje. Dėl šios tvarkos vertimas į 10.20.0.5 neįrodo, kad svetainė matys 198.51.100.20. Prieš priimdami išėjimo dizainą, skaitykite efektyvią maršrutų lentelę, NAT Gateway susiejimą ir NIC viešą IP kartu.

LaikykiteAzure NIC persiuntimo nuostatąatskirai nuo Linux persiuntimo. Debesijos vėliavėlė leidžia paketus, kurių šaltinis ar paskirtis nepriskirti NIC; ji neįjungia net.ipv4.ip_forward, o svečio nuostata nesuteikia debesijos leidimo.

Tunelio lizdas turi savo šaltinio sprendimą

WireGuard Address pagal wg-quick priskiria adresą WireGuard sąsajai; tai ne išorinio UDP susiejimo instrukcija. Užšifruoto lizdo šaltinis seka maršrutų lentelę, todėl politikos maršrutas ar antras numatytasis maršrutas gali jį perkelti neliesdamas sąsajos adreso.OpenVPN: parinktis local ir UDP multihome elgiasi taip pat: jos susijusios su klausytuvu ir jo atsakymais, o ne su kiekvieno persiųsto kliento interneto šaltiniu.

Išsaugokite pagrindinį maršrutą, kuris neša tunelį, ir patvirtinkite, kad klientas vis dar gauna autentifikuotus atsakymus iš numatytos įėjimo tvarkos. Nepasikliaukite adresų sąrašo tvarka kaip nuolatine šaltinio pasirinkimo politika, nes kitas prie NIC pridėtas adresas gali pakeisti, kuris laimės.

Ką priimti ir kokia tvarka

Priimkite tris rezultatus atskirai. Pirma, išorinis klientas pasiekia numatytą VPN įėjimą. Antra, nauja leidžiama to VPN kliento užklausa išeina per dokumentuotą interneto išėjimą. Trečia, nenumatyto klausytuvo ir persiuntimo keliai lieka atmesti. Užrašykite viešojo į privatų susiejimus ir kiekvieno sprendimo svečio bei debesijos atsakinguosius toje pačioje vietoje.

Sėkmingas tunelis įrodo tik pirmą dalį. Išbandykite išėjimą nauju srautu, nes talpykloje esantis ryšys gali ilgai naudoti seną šaltinį po maršruto pakeitimo.

Susiję straipsniai