SOCKS sunucusunun hedefi çözmesi gereken mevcut bir Netty bootstrap/pipeline için:

bootstrap.resolver(NoopAddressResolverGroup.INSTANCE);

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

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

Proxy uç noktası yerel 1080 numaralı bağlantı noktasıdır; çözülmemiş bağlantı hedefi example.com:443'dir. Proxy adresini iki rol için de kullanmayın ve işleyici almadan önce adı çözmeyin. İzin verilen genel proxy rotasındaki genel hedefler için SOCKS5 proxy listesi işleyicinin proxy uç noktası için adaylar sağlar.

Socks5ProxyHandler'ı hedef trafiğini değiştiren işleyicilerden önce yerleştirin. Yalnızca dinleyiciye ulaşan bir kanalı değil, proxy bağlantısının future'ını bekleyin. Reddedilen yöntem veya hedef bu kurulum aşamasına aittir.

HTTPS için bir sonraki TLS katmanı hedefin ana bilgisayar adını, gerekli doğrulamayı ve güveni kullanır—SOCKS uç noktasının kimliğini değil. Ancak o zaman HTTP/uygulama alışverişi başlar.

Parça olay döngüleri, kanal türleri, TLS/HTTP işleyicileri veya normal hata işleme sağlamaz. Kimlik doğrulama ihtiyaçlarına uyan SOCKS oluşturucusunu seçin; HTTP Basic işleyicisi başka bir protokoldür.

no-op çözümleyiciyi yalnızca bu alt akış işleyicisinin ana bilgisayar adı çözümlemesine sahip olduğu yerde kullanın. Diğer bağlantılar yerel arama gerektirebilir. Bir arızayı teşhis ederken çözümleyici çıktısını, proxy future'ını, TLS'yi ve uygulama sonucunu ayrı tutun.

İlgili makaleler