curl socks5h vastaan socks5: kuka selvittää isäntänimen
Lisäkirjain siirtää DNS-kyselyä, ei salausta. Vertaa molempia muotoja ja tarkista sitten, mikä isäntänimi tarvitsee yhä paikallisen selvittimen.
Ihmiset pitävät socks5h:ää socks5:nä, jolla on ystävällisempi kirjoitusasu, ja olettavat molempien lähettävän saman pyynnön samaan paikkaan. Lisäkirjain siirtää sen sijaan DNS-kyselyä. Koneessa, jonka selvittäjä ja välityspalvelin ovat eri verkoissa, tämä on ero toimivan ja epäonnistuvan pyynnön välillä.
Yksi kirjain, kaksi selvittäjää
Skeema päättää, missä kohteen nimi muuttuu osoitteeksi. Paikallinen selvitys käyttää koneellesi määritettyä selvittäjää. Etäselvitys laittaa isäntänimen SOCKS-pyynnön sisään, ja välityspalvelin etsii sen omalla selvittimellään ja omalla näkemyksellään verkosta. Molemmat muodot yhdistävät edelleen samaan välityspalvelimen osoitteeseen samassa portissa, joten ero on pyynnön rungossa, ei reitissä.
Mikään skeemassa ei muuta salausta tai todentamista; vain DNS-reitti siirtyy. Siksi kirjain on helppo jättää huomiotta ja kallista saada väärin.
Sama välityspalvelin, eri pyyntö
Kaksi kutsua eroavat yhden merkin verran. Kaikki muu niissä on samanlaista:
curl --proxy socks5://proxy.example:1080 https://service.example/
curl --proxy socks5h://proxy.example:1080 https://service.example/The curlin välityspalvelinviite dokumentoi nämä skeemat erikseen, ja se on valtuutettu syy olla kohtelematta niitä aliaksina. Aja molemmat vaaratonta päätepistettä vasten, jota sinulla on lupa käyttää, ja lue ero. Onnistunut etähaku ei kerro muista sovelluksista mitään, koska selaimet, paketinhallinnat ja kielten suoritusympäristöt valitsevat kukin itse.
Välityspalvelimen oma nimi selvitetään paikallisesti
Tuossa komennossa proxy.example on muututtava osoitteeksi ennen kuin mitään muuta tapahtuu, ja se haku on aina paikallinen. service.example:n selvityksen siirtäminen välityspalvelimelle ei tee mitään välityspalvelimen omalle nimelle, joka tarvitsee yhä selvittimen, johon koneesi pääsee. Tässä VPN muuttaa kuvaa.
Jos välityspalvelimen nimi selvitetään vain tunnelin sisällä, yhteys riippuu siitä, että tunneli on pystyssä ennen kuin curl alkaa. Kumpi skeema silloin voittaa, riippuu siitä, kumpi puoli pystyy vastaamaan. Kun koneesi ei pysty selvittämään kohdetta mutta välityspalvelin pystyy, socks5 epäonnistuu ja socks5h onnistuu. Kun koneesi selvittää sen tunnelin kautta eikä välityspalvelin pysty, socks5 toimii ja socks5h epäonnistuu.
Skeema ei sijoita yhteyttä välityspalvelimeen VPN:n sisälle tai ulkopuolelle; reititystaulu tekee sen, eikä skeema koskaan näe sitä. Siksi yksi tunneli voi korjata yhden skeeman ja rikkoa toisen samalla koneella. Kirjain päättää vain, kuka kysymyksen esittää.
Mitä kumpikin puoli voi selvittää
Julkinen välityspalvelin ei voi selvittää nimeä, joka on vain yrityksen sisällä, joten isäntänimen lähettäminen sinne epäonnistuu välityspalvelimella ja näkyy välityspalvelinvirheenä eikä paikallisena DNS-virheenä. Saman yksityisverkon sisällä oleva välityspalvelin pystyy yleensä selvittämään sellaiset nimet, ja siinä socks5h ansaitsee paikkansa. Valitse selvittimen sijainti sen käytännön mukaan, jota todella tarvitset, koska etä-DNS ei ole automaattisesti kyvykkäämpi ja se todella luovuttaa nimen kolmannelle osapuolelle. Julkiseen kohteeseen molemmat muodot toimivat, joten suosi sitä, jota muut työkalusi jo käyttävät.
Kirjoita valinta runbookiin kommentin sijaan ja pidä tunnistetiedot poissa jaetusta historiasta ja diagnostiikkatulosteesta. Muuta sitten yhtä muuttujaa kerrallaan: sama kohde, sama binaari, sama selvittäjä, yksi kirjain.
Mikä binaari vastasi
Kaksi curlin binaaria samalla koneella voivat erota versioltaan ja build-ominaisuuksiltaan. Unix-tyylisessä kuoressa type -a curl luettelee jokaisen polun osuman ja curl --version näyttää sen ominaisuudet, joka käynnistyisi. Polun alussa oleva kääreskripti tai alias on tavallinen syy siihen, etteivät tulokset vastaa binaaria, jota luulet testaavasi.
Tukematon skeema, välityspalvelin, joka ei pysty selvittämään nimeä, ja saavuttamaton kohde ovat kolme eri virhettä, joten lue viesti ennen kuin muutat kirjainta. Build ilman socks5h-syntaksia ilmoittaa välityspalvelinmerkkijonon tukemattomaksi, mikä ei ole sama kuin nimi, jota ei saatu selvitettyä. Älä tee yhdestä vanhasta järjestelmän curl -raportista pysyvää sääntöä kaikille alustoille.