curl socks5h a socks5 ellen: ki oldja fel a gépnevet
A plusz betű a DNS-kérést mozgatja, nem a titkosítást. Hasonlítsa össze a két formát, majd ellenőrizze, melyik gépnévnek van még szüksége helyi feloldóra.
Az emberek a socks5h-t a socks5 barátságosabb írásmódjának tartják, és azt várják, hogy mindkettő ugyanazt a kérést küldi ugyanarra a helyre. A plusz betű viszont a DNS-kérést mozgatja. Egy olyan gépen, amelynek feloldója és proxyja különböző hálózatokban van, ez a különbség a működő és a meghiúsuló kérés között.
Egy betű, két feloldó
A séma dönti el, hol válik a cél neve címmé. A helyi feloldás a gépén beállított feloldót használja. A távoli feloldás a gépnevet a SOCKS-kérés belsejébe teszi, és a proxy a saját feloldójával és a hálózatról alkotott saját képével keresi. Mindkét forma továbbra is ugyanahhoz a proxycímhez csatlakozik ugyanazon a porton, tehát a különbség a kérés törzsében van, nem az útvonalban.
A sémában semmi nem változtatja meg a titkosítást vagy a hitelesítést; csak a DNS-útvonal mozdul el. Ezért a betűt könnyű figyelmen kívül hagyni és drága elrontani.
Ugyanaz a proxy, más kérés
A két hívás egyetlen karakterben tér el. Minden más azonos bennük:
curl --proxy socks5://proxy.example:1080 https://service.example/
curl --proxy socks5h://proxy.example:1080 https://service.example/The curl proxy-referencia külön dokumentálja ezeket a sémákat, és ez a mérvadó ok arra, hogy ne tekintsük őket álneveknek. Futtassa mindkettőt egy ártalmatlan végpont ellen, amelyet engedélyezetten használhat, és olvassa el a különbséget. A sikeres távoli keresés semmit nem mond más alkalmazásokról, mert a böngészők, csomagkezelők és nyelvi futtatókörnyezetek mindegyike maga dönt.
A proxy saját nevét helyben oldja fel
Ebben a parancsban a proxy.example-nek címmé kell válnia, mielőtt bármi más történik, és ez a keresés mindig helyi. A service.example feloldásának a proxyra mozgatása semmit nem tesz a proxy saját nevéért, amelynek továbbra is olyan feloldó kell, amelyet a gépe el tud érni. Itt változtatja meg a VPN a képet.
Ha a proxy neve csak az alagúton belül oldódik fel, a kapcsolat attól függ, hogy az alagút áll-e, mielőtt a curl elindul. Hogy melyik séma nyer, az attól függ, melyik oldal tud válaszolni. Amikor a gépe nem tudja feloldani a célt, de a proxy igen, a socks5 meghiúsul és a socks5h sikerül. Amikor a gépe az alagúton keresztül oldja fel, és a proxy nem tudja, a socks5 működik és a socks5h meghiúsul.
A séma nem helyezi a proxyhoz való kapcsolatot a VPN belsejébe vagy külsejébe; azt az útválasztási tábla teszi, és a séma soha nem látja. Ezért egy alagút kijavíthat egy sémát, és elronthatja a másikat ugyanazon a gépen. A betű csak azt dönti el, ki teszi fel a kérdést.
Mit tud feloldani mindkét oldal
Egy nyilvános proxy nem tud feloldani egy csak a vállalaton belül létező nevet, ezért a gépnév elküldése oda a proxynál meghiúsul, és proxyhibaként jelenik meg, nem helyi DNS-hibaként. Az ugyanazon a magánhálózaton belüli proxy általában fel tudja oldani ezeket a neveket, és itt érvényesül a socks5h. A feloldó helyét a valóban szükséges szabályzat szerint válassza meg, mert a távoli DNS nem automatikusan alkalmasabb, és valóban átadja a nevet egy harmadik félnek. Nyilvános cél esetén mindkét forma működik, ezért azt részesítse előnyben, amelyet a többi eszköze már használ.
Írja ezt a választást a runbookba, ne megjegyzésbe, és tartsa a hitelesítő adatokat a megosztott előzményeken és a diagnosztikai kimeneten kívül. Utána egyszerre egy változót módosítson: ugyanaz a cél, ugyanaz a bináris, ugyanaz a feloldó, egy betű.
Melyik bináris válaszolt
Két curl bináris ugyanazon a gépen eltérhet verzióban és build-szolgáltatásokban. Unix-szerű héjban a type -a curl felsorolja a zónában található összes egyezést, és a curl --version megmutatja a futó bináris jellemzőit. Az útvonalon korábban lévő burkolószkript vagy alias gyakori oka annak, hogy az eredmények nem egyeznek azzal a binárissal, amelyet tesztelni vél.
A nem támogatott séma, a nevet feloldani képtelen proxy és az elérhetetlen cél három különböző hiba, ezért olvassa el az üzenetet, mielőtt megváltoztatja a betűt. A socks5h szintaxis nélküli build nem támogatottként jelenti a proxy karakterláncot, ami nem ugyanaz, mint egy feloldhatatlan név. Ne tegyen egyetlen régi rendszer-curlről szóló jelentést minden platformra érvényes állandó szabállyá.