Search Results for

    Show / Hide Table of Contents

    Interface IOriginalDestinationResolver

    Resolves the original (pre-NAT) destination of an inbound QUIC connection.

    When the proxy intercepts traffic via firewall/NAT redirection, the destination seen by the OS socket is the proxy's own UDP endpoint, not the origin server. This interface bridges the managed interception contract: the operator's firewall rules or packet-filter driver supply original-destination data, and this adapter exposes it to the proxy.

    SNI from the QUIC ClientHello (BeforeQuicAuthenticateEventArgs.SniHostName) and the :authority pseudo-header are validation inputs and context hints, but are not a reliable replacement for the actual original destination obtained from the OS routing table or packet-filter metadata, especially for pinned certificates, IP-literal URLs, or non-standard ports.

    Namespace: Titanium.Web.Proxy.Network.Quic
    Assembly: Titanium.Web.Proxy.dll
    Syntax
    public interface IOriginalDestinationResolver

    Methods

    | Edit this page View Source

    ResolveAsync(IPEndPoint, IPEndPoint, string?, CancellationToken)

    Resolves the original destination host name and port for the given inbound QUIC connection.

    Declaration
    ValueTask<(string hostName, int port)?> ResolveAsync(IPEndPoint localEndPoint, IPEndPoint remoteEndPoint, string? sniHostName, CancellationToken cancellationToken)
    Parameters
    Type Name Description
    IPEndPoint localEndPoint

    The local UDP endpoint the proxy is listening on.

    IPEndPoint remoteEndPoint

    The remote UDP endpoint of the connecting QUIC client.

    string sniHostName

    The SNI hostname from the QUIC ClientHello, or null if not present. May be used as a hint but should not be trusted as the authoritative destination.

    CancellationToken cancellationToken

    Cancellation token for the lookup.

    Returns
    Type Description
    ValueTask<(string hostName, int port)?>

    The resolved (hostName, port) tuple, where hostName is the original destination host name or IP address string and port is the original destination port. Returns null if resolution fails and the caller should fall back to TransparentQuicProxyEndPoint.ForwardHost / TransparentQuicProxyEndPoint.ForwardPort.

    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX