Search Results for

    Show / Hide Table of Contents

    Class TransparentBaseProxyEndPoint

    Inheritance
    object
    ProxyEndPoint
    TransparentBaseProxyEndPoint
    SocksProxyEndPoint
    TransparentProxyEndPoint
    TransparentQuicProxyEndPoint
    Inherited Members
    ProxyEndPoint.IpAddress
    ProxyEndPoint.Port
    ProxyEndPoint.ToString()
    ProxyEndPoint.DecryptSsl
    ProxyEndPoint.AcceptConnectTcp
    ProxyEndPoint.AcceptWebTransport
    ProxyEndPoint.AcceptConnectUdp
    ProxyEndPoint.ConnectUdpOptions
    ProxyEndPoint.GenericCertificate
    ProxyEndPoint.SniCertificates
    ProxyEndPoint.ClientCertificateMode
    ProxyEndPoint.ClientCertificateTrustedRoots
    ProxyEndPoint.AcceptProxyProtocol
    ProxyEndPoint.ReusePort
    ProxyEndPoint.TrustedProxyProtocolSources
    ProxyEndPoint.MaxCachedConnections
    ProxyEndPoint.MaxConcurrentClients
    ProxyEndPoint.EnableHttpInterception
    ProxyEndPoint.AdmittedClientCount
    object.Equals(object)
    object.Equals(object, object)
    object.GetHashCode()
    object.GetType()
    object.MemberwiseClone()
    object.ReferenceEquals(object, object)
    Namespace: Titanium.Web.Proxy.Models
    Assembly: Titanium.Web.Proxy.dll
    Syntax
    public abstract class TransparentBaseProxyEndPoint : ProxyEndPoint

    Constructors

    | Edit this page View Source

    TransparentBaseProxyEndPoint(IPAddress, int, bool)

    Declaration
    protected TransparentBaseProxyEndPoint(IPAddress ipAddress, int port, bool decryptSsl)
    Parameters
    Type Name Description
    IPAddress ipAddress
    int port
    bool decryptSsl

    Properties

    | Edit this page View Source

    ForwardCleartext

    When true together with DecryptSsl, the proxy terminates client TLS and opens a cleartext upstream TCP connection to ForwardHost/ForwardPort (classic TLS-terminating reverse proxy). Defaults to false (re-encrypt to the origin when the client spoke HTTPS).

    Declaration
    public bool ForwardCleartext { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    ForwardHost

    Optional fixed upstream server to forward all traffic on this endpoint to. TCP connects to this host. For re-encrypt (ForwardCleartext false), TLS SNI and HTTP Host stay on the client authority. For TLS terminate (ForwardCleartext true), Host is rewritten to this host and ForwardPort so HTTP origins see their own bind identity.

    Declaration
    public string? ForwardHost { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    ForwardPort

    Optional fixed upstream port. When null the original request port is used.

    Declaration
    public int? ForwardPort { get; set; }
    Property Value
    Type Description
    int?
    | Edit this page View Source

    GenericCertificateName

    The hostname of the generic certificate to negotiate SSL. This will be only used when Sever Name Indication (SNI) is not supported by client, or when it does not indicate any host name.

    Declaration
    public abstract string GenericCertificateName { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    MaxConcurrentTlsHandshakes

    Max concurrent inbound TLS handshakes for TerminateTls listeners.

    Declaration
    public int MaxConcurrentTlsHandshakes { get; set; }
    Property Value
    Type Description
    int
    | Edit this page View Source

    Passthrough

    When true, accepted sockets are copied to ForwardHost without HTTP parsing.

    Declaration
    public bool Passthrough { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    PassthroughDefaultClusterId

    TCP passthrough only. Cluster used when no SNI route matches, or the client sends no server name.

    Declaration
    public string? PassthroughDefaultClusterId { get; set; }
    Property Value
    Type Description
    string
    | Edit this page View Source

    PassthroughIdleTimeout

    TCP passthrough only. Closes a connection with no bytes in either direction for this long. Zero disables.

    Declaration
    public TimeSpan PassthroughIdleTimeout { get; set; }
    Property Value
    Type Description
    TimeSpan
    | Edit this page View Source

    PassthroughProxyProtocol

    TCP passthrough only. Header written to the upstream before the client's bytes.

    Declaration
    public PassthroughProxyProtocolMode PassthroughProxyProtocol { get; set; }
    Property Value
    Type Description
    PassthroughProxyProtocolMode
    | Edit this page View Source

    PassthroughRoutes

    TCP passthrough only. Routes chosen by the TLS server name in the client's first record. Each names a cluster whose destinations are balanced. With no match the connection goes to PassthroughDefaultClusterId, then ForwardHost.

    Declaration
    public IReadOnlyList<PassthroughSniRoute>? PassthroughRoutes { get; set; }
    Property Value
    Type Description
    IReadOnlyList<PassthroughSniRoute>
    | Edit this page View Source

    PassthroughSniReadTimeout

    TCP passthrough only. How long to wait for the first TLS record when PassthroughRoutes is set. A client that stays silent (a server-speaks-first protocol) is then sent to the default route. Zero or negative uses 5 seconds.

    Declaration
    public TimeSpan PassthroughSniReadTimeout { get; set; }
    Property Value
    Type Description
    TimeSpan
    | Edit this page View Source

    StreamFilters

    TCP passthrough only. L4 script filters, run in order. Null (the default) or empty keeps the plain relay: the accept loop picks the filtered relay only when this holds at least one filter.

    Declaration
    public IReadOnlyList<IStreamScriptFilter>? StreamFilters { get; set; }
    Property Value
    Type Description
    IReadOnlyList<IStreamScriptFilter>
    | Edit this page View Source

    TerminateTls

    When true with Passthrough, inbound TLS is terminated before relaying bytes.

    Declaration
    public bool TerminateTls { get; set; }
    Property Value
    Type Description
    bool
    | Edit this page View Source

    TerminateTlsAlpn

    ALPN names offered on TerminateTls listeners. Null or empty skips ALPN.

    Declaration
    public IReadOnlyList<string>? TerminateTlsAlpn { get; set; }
    Property Value
    Type Description
    IReadOnlyList<string>
    | Edit this page View Source

    TlsHandshakeTimeout

    Inbound TLS handshake timeout for TerminateTls listeners.

    Declaration
    public TimeSpan TlsHandshakeTimeout { get; set; }
    Property Value
    Type Description
    TimeSpan
    • Edit this page
    • View Source
    In this article
    Back to top Generated by DocFX