For ein eksisterande Netty bootstrap/pipeline der SOCKS-tenaren skal løyse opp destinasjonen:

bootstrap.resolver(NoopAddressResolverGroup.INSTANCE);

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

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

Proxy-endepunktet er lokal port 1080; det uoppløyste tilkoplingsmålet er example.com:443. Ikkje bruk proxy-adressa for begge rollene, og ikkje løys opp namnet før handsamaren mottek det. For offentlege mål på ei tillaten offentleg proxy-rute leverer SOCKS5-proxylista kandidatar til proxy-endepunktet til handsamaren.

Plasser Socks5ProxyHandler før handsamarar som byter destinasjonstrafikk. Vent på proxy-tilkoplinga si future, ikkje berre ein kanal som når lyttaren. Ein avvist metode eller destinasjon høyrer til dette oppsettssteget.

For HTTPS brukar det neste TLS-laget vertsnamnet til destinasjonen, den påkravde verifiseringa og tillit—ikkje identiteten til SOCKS-endepunktet. Fyrst då byrjar HTTP-/applikasjonsutvekslinga.

Utdraget leverer ikkje event loops, kanaltypar, TLS/HTTP-handsamarar eller vanleg feilhandtering. Vel SOCKS-konstruktøren som passar autentiseringsbehova; ein HTTP Basic-handsamar er ein annan protokoll.

Bruk no-op-resolveren berre der denne nedstraums handsamaren eig vertsnamnsoppløysinga. Andre tilkoplingar kan trenge lokal oppslag. Hald resolver-utdata, proxy-future, TLS og applikasjonsresultat åtskilde når du diagnostiserer ein feil.

Relaterte artiklar