Prenosni računalnik je v pisarniškem Wi-Fi, omrežni kabel je priključen in vmesnik VPN je še vedno prisoten. Vaša datoteka PAC sprašuje myIpAddress(), v katerem omrežju je. To se sliši smiselno, dokler ne prejme naslova, ki pripada napačnemu vmesniku.

Manjkajoča podrobnost je, da funkcija vrne en naslov. Ni popis vseh vmesnikov in ne vzpostavi stika s spletnim mestom, da bi odkrila vaš javni IP. Zasebni naslov ali celo rezervni loopback vam ne pove, kateri izhodni naslov bo uporabila zahteva prek posrednika.

En odgovor za stroj z več naslovi

Izbira omrežnega vmesnika spada k izvedbi PAC. Stari nasvet, da preuredite vmesnike Windows, lahko opisuje določeno različico brskalnika in operacijskega sistema, vendar je slaba univerzalna rešitev. Chromium dokumentira svoj algoritem izbire in omejitve pri več omrežjih; drug odjemalec mu ni treba slediti pri enaki izbiri.

Začnite z ugotavljanjem vrednosti, ki jo je prizadeti brskalnik dejansko posredoval, nato jo primerjajte s preverjanji podomrežja v vaši skripti. To storite ločeno v Wi-Fi, Ethernetu in odobreni povezavi VPN. Naslov, ki se zdi presenetljiv, lahko še vedno ustreza pravilom izvedbe.

Naj bo odločitev odvisna od manj ugibanj

Kjer je mogoče, izberite posrednika glede na ime ciljnega gostitelja, ne pa glede na domnevni odjemalski vmesnik. Če je potrebno odkrivanje omrežja, uporabite nameren, dokumentiran signal, ki ga nadzira vaša organizacija. Tudi odkrivanje na podlagi DNS ima načine odpovedi, zato določite, kaj se zgodi, ko ta signal ni na voljo.

Nekatere izvedbe ponujajo myIpAddressEx(). Pred sprejetjem preverite njegovo podporo in obliko vračanja; ni neposredna zamenjava za en niz IPv4. Na koncu neodvisno preverite nastalo pot zahteve. Pravilno prepoznavanje pisarniškega podomrežja in doseganje predvidenega posrednika sta dva ločena izida.

Sorodni članki