Vir 'n bestaande Netty bootstrap/pyplyn waar die SOCKS-bediener die bestemming moet oplos:

bootstrap.resolver(NoopAddressResolverGroup.INSTANCE);

pipeline.addFirst(
    new Socks5ProxyHandler(new InetSocketAddress("127.0.0.1", 1080))
);

bootstrap.connect(
    InetSocketAddress.createUnresolved("example.com", 443)
);

Die proxy-eindpunt is plaaslike poort 1080; die onopgeloste verbindingsteiken is example.com:443. Moenie die proxy-adres vir albei rolle gebruik nie en moenie die naam oplos voordat die handler dit ontvang nie. Vir publieke teikens op 'n toegelate publieke-proxy-roete verskaf die SOCKS5-proxylis kandidate vir die handler se proxy-eindpunt.

Plaas Socks5ProxyHandler voor handlers wat bestemmingsverkeer uitruil. Wag op sy proxy-verbindingstoekoms, nie bloot op 'n kanaal wat die luisteraar bereik nie. 'n Verwerpte metode of bestemming hoort by hierdie opstelstadium.

Vir HTTPS gebruik die volgende TLS-laag die bestemming se gasheernaam, vereiste verifikasie en vertroue—nie die SOCKS-eindpunt se identiteit nie. Eers dan begin die HTTP/toepassing-uitruiling.

Die fragment verskaf nie gebeurtenislusse, kanaaltipes, TLS/HTTP-handlers of normale foutafhandeling nie. Kies die SOCKS-konstruktor wat by die verifikasiebehoeftes pas; 'n HTTP Basic-handler is 'n ander protokol.

Gebruik die no-op-oplosser slegs waar hierdie stroomaf-handler gasheernaamoplossing besit. Ander verbindings mag plaaslike opsoeking nodig hê. Hou oplosser-uitset, proxy-toekoms, TLS en toepassingsresultaat apart wanneer jy 'n fout diagnoseer.

Verwante artikels