VIEW THIS AS

Auto mode follows the Route Engine until you choose a viewpoint.

YOU ARE HERE

ROUTE CHECK

CONNECTED TO

WHAT NEXT

Use the canonical route for this room, or HELP if you are unsure.

How Superintelligence Works | Agent HTTP 421 Misdirected Requests — Origin Authority, Connection Coalescing and Safe Retries

An agent receives HTTP 421 Misdirected Request when a server will not give an authoritative answer for the requested origin on the connection used. The immediate repair is not to change the URL, disable certificate checking, or retry the same multiplexed connection indefinitely. The client should identify the target origin, discard that connection as a route for that origin, and, when appropriate, retry through a separate connection that is valid for that origin. A 421 is about routing authority, not proof that the resource is missing or that the caller lacks permission.

This matters in present-day automation because a web research or publishing agent may reuse HTTP/2 or HTTP/3 connections across related hostnames behind one certificate or content delivery network. An apparently valid encrypted session can still lead to the wrong virtual host. Correct handling preserves tenant boundaries, limits redundant traffic and avoids misclassifying an infrastructure problem as a failed user task. The mechanisms here concern existing network software and agents; no claim that artificial superintelligence exists is involved.

Contents: Fast answer and the reader map · What HTTP 421 actually means · The first principle is origin authority, not an IP address · How HTTP/2 connection coalescing creates the problem · A complete hypothetical incident with verified arithmetic · Trace the actual request path before changing production · What an agent should do when it receives 421 · Non-idempotent requests: what the standard permits and what safety requires · HTTP/3 and why the concept still transfers · The ORIGIN frame is an aid, not a security bypass · Distinguish 421 from look-alike HTTP errors · Security boundaries that a retry must not weaken · Testing plan: force the specific failure, then prove recovery · How to roll out the fix without shifting the incident · Changed-context transfer problem, with worked answer · Frequently asked questions · Limits and primary reading · Related reader pathways

Fast answer and the reader map

A correct diagnosis asks five questions in order. What full scheme, host and port did the agent intend? Which peer received the bytes? What certificate and connection authority were established? Did a reusable connection originally serve another origin? Did the server reject the request with 421 rather than an application-level error? Answering these separately prevents a dangerous shortcut: treating any successful TLS handshake as universal permission to route any hostname over that connection.

Readers who operate clients can begin with connection pooling, retry policy and logging. Readers who operate gateways can begin with SNI, certificate identity, upstream routing and authoritative virtual-host configuration. Security reviewers should concentrate on misdirected cross-tenant traffic and non-idempotent retries. The worked numbers below are deliberately hypothetical so they can be recalculated for another deployment without pretending to be measurements of a real provider.

What HTTP 421 actually means

HTTP 421 has a narrow meaning. RFC 9110 section 15.5.20 describes a server that cannot or will not produce an authoritative response for the target URI, either because that origin is not configured on it or because the connection context is inappropriate. The response is different from 404, where a server able to handle the origin says a resource is not found, and different from 403, where the server refuses to fulfill an otherwise routed request. Diagnosing this distinction at the edge saves many fruitless application-level retries.

The RFC also gives an important recovery permission: a client receiving 421 may retry the request, even when its HTTP method is not idempotent, over a different connection. That allowance follows from the meaning of the rejection, but a robust application still needs to consider what it genuinely knows about intermediary behavior, request-body replayability and side effects. A policy may be more conservative than the protocol permits when a request crossed custom gateways or its outcome is uncertain.

A proxy must not generate 421 under RFC 9110. A gateway acting for an origin server can send 421 when the target is not within the origin authority that gateway serves. This precise terminology matters: logs may label several front-end devices a “proxy,” but the protocol roles differ. Before blaming an intermediate network hop, identify which component is acting as an origin-facing gateway and which is acting as a generic forward proxy.

The first principle is origin authority, not an IP address

An origin is normally identified by a scheme, a host and a port. For example, https://reports.example.test and https://payments.example.test:443 have different hosts, even if a DNS lookup currently returns the same address. An IP address can host many logically independent services, and a wildcard or multi-name certificate can authenticate more than one hostname. Neither shared infrastructure nor one certificate means that the same back-end process is configured, permitted or ready to answer requests for every origin.

An HTTP/2 request supplies a target authority, typically through the :authority pseudo-header. A TLS connection also has information from its setup, including the server name used in the handshake when SNI is present. Those two values can be related without being identical. A gateway might choose a back-end based on the name presented at handshake time while later requests on the connection carry another request authority. The request can then be encrypted and syntactically valid yet arrive at a server that cannot safely answer for the target origin.

The server must also meet HTTPS certificate requirements for the requested origin; a valid certificate for a different name is not an acceptable substitute. RFC 9110 section 7.4 describes rejecting requests that do not meet scheme-specific requirements, while its section 4.3 explains authoritative access. The operational lesson is to record the intended origin and verified peer identity rather than equating reachability, certificate coverage, virtual-host configuration and authorization.

How HTTP/2 connection coalescing creates the problem

Connection coalescing means using one existing HTTP/2 connection for requests to more than one origin when the applicable authority rules allow it. This can reduce TCP and TLS handshakes, congestion startup and client resource use. Consider a browser-like agent that first requests https://catalog.example.test. Moments later it wants https://billing.example.test. If the environment, certificate and protocol conditions satisfy the applicable rules, an HTTP/2 implementation may choose its existing connection instead of opening another one.

That choice is an optimization, not a promise that every infrastructure tier routes both names identically. One TLS endpoint may have certificates covering both catalog and billing while its origin-side routing decision was fixed when the session began. If the subsequent request carries billing in :authority but arrives at the catalog-only upstream, the safe answer is 421. It tells the client that this particular connection is not a suitable path to the billing origin.

RFC 9113 section 9.1.1 describes HTTP/2 connection reuse and authority. Section 9.1.2 describes the misdirected-request case. The specification explicitly recognizes deployments where TLS termination or an intermediary uses server-name information to select an origin. Operators should therefore treat a sudden cluster of 421 responses after certificate rotation, CDN reconfiguration or proxy consolidation as possible evidence of a mismatch between connection reuse and actual virtual-host routing.

Why a certificate with two names is not enough

A certificate establishes a cryptographic claim about names after suitable validation; it does not certify a routing table, a tenant permission rule or a release rollout. Suppose a certificate contains DNS names for alpha.example.test and beta.example.test. That makes the certificate potentially usable for authenticating either name, subject to the normal checks. Yet a TLS listener may dispatch connections to different application pools based on the SNI name received during the handshake. A reused connection carrying a beta request on an alpha-selected pool can therefore legitimately fail.

This difference can be subtle during green-blue deployments. A frontend may deploy a newly expanded certificate at 10:00 but update the route map for beta only at 10:15. Clients that are aggressive about reuse discover the mismatch before clients that open a fresh connection per origin. The right repair is to align routing authority with the advertised certificate and actual protocol rules, not to silence 421 or teach clients to ignore hostname boundaries.

A complete hypothetical incident with verified arithmetic

Imagine a research agent processing 12,000 HTTP requests during one 30-minute interval. These counts are invented for explanation, not published metrics. Suppose exactly 300 requests receive 421 on a pooled connection. The observed-in-the-example fraction is 300 requests divided by 12,000 total requests = 0.025, or 2.5% of requests. Its denominator is every request, not merely the subset using HTTP/2 and not merely requests to the affected hostname.

Suppose a fresh-origin connection succeeds for 288 of those 300 rejected requests and 12 remain unsuccessful. The fresh-connection recovery rate is 288 / 300 = 96% of the 421 subset. The unrecovered count is 300 – 288 = 12 requests. If each of the 300 original failures causes one additional request, the agent sends 12,300 network requests total, an added 300 / 12,000 = 2.5% network request overhead relative to its original attempt count. Do not report 96% as an overall service success rate; it uses a different denominator.

Now suppose each fresh connection setup adds a hypothetical 85 milliseconds before the retried response can proceed. The extra connection-setup time summed across the 300 retried requests is 300 × 85 ms = 25,500 ms, or 25.5 seconds of aggregate setup time. This is not necessarily 25.5 seconds of wall-clock delay: concurrent retries can overlap. At the level of one affected request the additional setup latency is about 85 ms, with processing and network variance excluded. Capacity planning should keep cumulative work and end-user latency separate.

Finally imagine a dashboard that groups every HTTP 4xx response as a bad API key. It would report 300 authentication failures despite the responses containing no evidence of invalid credentials. The corrected dashboard should give 421 its own routing-authority category, measure first-attempt frequency and fresh-connection recovery separately, and record affected origin pairs. That repair changes the next engineering action from unnecessary token rotation to targeted investigation of connection affinity and virtual-host routing.

Trace the actual request path before changing production

A good incident record begins at the caller with method, full target origin, HTTP version and a correlation identifier. At the client transport layer, record whether a pooled connection was reused, the origin with which that connection was established, its protocol, TLS peer name and the peer certificate validation result. At a reverse proxy, record the selected virtual host, request authority, TLS SNI, upstream identifier, and the component that emitted 421. Never insert raw credentials, private authorization headers or sensitive response bodies into diagnostic logs.

Investigate at the first boundary where two facts diverge. If the client asks for billing.example.test but a reused connection was opened with catalog.example.test, ask whether the connection is actually authoritative for billing under the rules the client applies. If it is, examine whether the frontend honors the target request authority or misroutes based only on the original SNI. If it is not, correct the client’s pooling logic. Distinguishing client misuse from server misconfiguration avoids circular blame.

Connection IDs, process IDs and request IDs serve different purposes. One connection may carry many streams and many requests, so a connection-only log can hide the identity of the failing stream. A request correlation ID should survive the application gateways that are authorized to process it; a separately recorded transport session identifier helps reconstruct the coalescing decision. If an untrusted third party could supply either identifier, sanitize it before placing it in a trusted log or metrics dimension.

What an agent should do when it receives 421

First preserve the original target URL and classify the response as a connection-authority rejection. Next mark the specific connection as unsuitable for that target origin according to the transport library’s capabilities; a sophisticated pool may maintain an origin-specific exclusion rather than destroying all unrelated streams. Then choose a fresh connection that is validated for the intended origin. Retry at most within a bounded policy, and classify a repeated 421 as an unresolved routing problem rather than repeating forever.

Do not rewrite the request to the hostname originally used for the pooled session. That changes the requested resource and may cross a tenant or data boundary. Do not disable TLS validation to make a new path appear successful. Do not quietly replace the Host or :authority field with a convenient virtual host while retaining the user’s original URL. Those shortcuts may turn a visible routing failure into a hidden cross-origin disclosure or an incorrect response accepted as evidence.

A robust client library may already implement 421 recovery. Check the actual version and its semantics before adding a second application-level retry layer. Double retries can turn one expected correction into several multiplied requests, and some SDKs automatically stream bodies that cannot be sent twice. Integration tests should therefore exercise the complete real client stack, including its connection pooling, redirect policy, authentication middleware and body serialization, not just a hand-built HTTP request.

A finite recovery state machine

An understandable state machine is INITIAL_ATTEMPT, MISDIRECTED, FRESH_ORIGIN_ATTEMPT, then either SUCCESS or FAIL_WITH_DIAGNOSTICS. From INITIAL_ATTEMPT, ordinary successful responses end normally. On 421, the agent records the observed authority mismatch and requests a distinct connection. If that new attempt also returns 421, the task stops with a typed routing error. The application may explicitly authorize additional infrastructure retries for a documented reason, but a default unbounded loop is not acceptable.

Retry budgets should be counted per logical operation, not reset on every middleware boundary. For example, if a single task has a maximum of one fresh-route retry after 421, an outer queue consumer must not requeue the same operation without recording that recovery was already attempted. Persist an operation identifier separately from the transport attempt number. This distinction makes it possible to reconcile work accurately after a timeout without pretending every HTTP exchange is a separate user instruction.

Non-idempotent requests: what the standard permits and what safety requires

HTTP methods matter, but the 421 rule has a special exception: RFC 9110 section 15.5.20 allows a client to retry even a non-idempotent request over a different connection. Why? A genuine authoritative rejection means the receiving origin did not process the target operation. Nevertheless, distributed systems are messy. An agent may see a custom gateway, a buffered intermediary, a lost response or a vendor component that does not fully follow the specification. Protocol permission is not the same as knowledge of application outcome.

For a write such as POST /orders, obtain an application-level idempotency key or other stable operation ID when the API supports one. Keep the same key during a transport retry rather than creating a second logical order. If the server does not support deduplication and the agent cannot establish whether a write happened, use a status or reconciliation endpoint when available before retrying. Distinguish a confirmed 421 response from a socket timeout: 421 is a specific rejection, whereas a timeout alone cannot tell you whether the server applied the write.

An example illustrates the risk. Imagine a tool requests 40 document exports and receives 421 for three of them. If the server confirms that it rejected those three requests as misdirected and the transport safely restarts on a valid connection, one fresh retry for each is reasonable. If instead those three attempts merely timed out after uploading files, resending without deduplication might create duplicate exports. The same operation counter can represent both situations, but their evidence states and permitted recovery branches must remain different.

HTTP/3 and why the concept still transfers

HTTP/3 uses QUIC rather than TCP as its transport. It changes stream and connection behavior, but the central question of which origins a connection is authoritative for remains. RFC 9114 discusses connection reuse and routing authority for HTTP/3. An engineer should not assume that replacing HTTP/2 with HTTP/3 eliminates origin misdirection. Certificate identities, target origins, alternative services and gateway configuration still interact, although the exact setup and connection identification differ.

Operationally, record the negotiated protocol rather than inferring it from a URL’s https scheme. Browser-like clients can switch between transport protocols through discovery or server advertisement while an application-level API still reports only the final status code. A 421 investigation without protocol details may misleadingly mix distinct connection reuse paths. Conversely, the agent’s semantic handling can stay stable: classify the response, avoid the same unsuitable route, establish an appropriate new connection, and keep retry limits.

A deployment should test each supported protocol path independently when there is a credible connection coalescing risk. One healthy HTTP/1.1 request is not sufficient evidence that HTTP/2 multiplexing or HTTP/3 routing will be correct. Nor does an HTTP/3-specific issue automatically justify disabling that protocol for the entire application. Isolate the configuration, measure impacted origins, and roll out the minimum change that restores truthful authority decisions.

The ORIGIN frame is an aid, not a security bypass

RFC 8336 defines the ORIGIN frame for HTTP/2, allowing a server to advertise origins for which a connection is usable. This can help a client decide whether to coalesce without first discovering incompatibility through 421. But the frame is a signal about connection authority, not an instruction to skip certificate checks. A matching certificate and the other required validation steps remain necessary. A server asserting an extra origin does not magically possess the TLS credentials or application routing to serve it.

The RFC says an ORIGIN frame belongs on stream 0 and is not to be forwarded by an intermediary; it is hop-by-hop. A client configured to use a proxy must ignore ORIGIN frames received from that proxy. When a client supports the frame, its origin set can be narrowed by a 421 response, removing the rejected origin from that connection’s set. This makes the failure informative for later routing decisions and helps avoid repeatedly sending the same origin through an unsuitable path.

Consider two origins on a hypothetical multi-tenant platform. The frontend advertises both in an ORIGIN frame but an internal route only handles the first. The wrong frame increases the likelihood of failed coalescing and sends avoidable traffic to the wrong origin. The fix belongs in the configuration that generated the advertisement and the route map it promises. Editing a client’s origin set to accept arbitrary extra names or ignoring the required certificate validation would make the system less safe, not more reliable.

Distinguish 421 from look-alike HTTP errors

A 400 Bad Request concerns malformed request syntax or another client request defect; correcting the connection alone may not help. A 401 Unauthorized involves authentication challenge semantics; a 403 Forbidden refuses to fulfill an understood request. A 404 Not Found is about the target resource. A 409 Conflict points to state conflict at the origin. None of these means that the current connection is necessarily unsuitable for the request’s origin.

A 425 Too Early is about a request that a server is unwilling to risk processing in early data conditions. It is not the same as 421’s routing authority concern, even though both can involve replay and retry decisions. A 429 Too Many Requests points toward rate limiting and often a delay strategy. A 503 Service Unavailable points toward temporary service unavailability. Robots must not flatten all these into “try again with a new connection,” because that confuses server state, user permission, transport identity and resource availability.

A useful typed error object contains at least logical-operation ID, request origin, response status, retry classification, original connection identity if safely available, number of attempts and redacted diagnostic evidence. It need not expose implementation-only transport details to the end user. A human-facing message can say that the request was rejected by the network route and a safe alternate connection was attempted, without claiming a password is wrong or that the target content does not exist.

Security boundaries that a retry must not weaken

Virtual hosting allows many services to share infrastructure while remaining separate security principals. A permissive agent that substitutes convenient hosts after 421 may inadvertently request data under an unintended tenant, mix cookies across domains or apply the wrong bearer token. Authentication and authorization material should remain scoped to the intended origin and audience. When opening a new connection, revalidate the target hostname, port, certificate identity, redirect destination and application permission rather than trusting a previous session’s conclusions.

DNS and certificate changes are only part of this control. Reverse proxies and load balancers may route using SNI, request authority, path and deployment metadata. A component that wrongly assumes all these values agree may permit host confusion or cache pollution. RFC 9110 discusses authority and message-routing security considerations. An engineering review should examine canonical host validation and cache-key construction, and ensure a misdirected request never receives a successful response that belongs to another origin.

If the agent accesses an internal-only service, do not let a routing recovery mechanism broaden its outbound network policy. A fresh connection to an arbitrary address suggested by a response body would defeat an allowlist and create an SSRF channel. A 421 response authorizes neither a new destination hostname nor new credentials. Its legitimate recovery target is the original origin, or an independently validated alternative service under normal transport rules.

Testing plan: force the specific failure, then prove recovery

Build a test environment with two origin names, one certificate covering both names, and routing designed so an HTTP/2 connection originally selected for A cannot safely answer for B. Arrange for B-over-A to return 421. The acceptance test should verify that a real client using connection pooling sees the first rejection, opens or selects an appropriate distinct connection, keeps the original B authority and completes only when a valid B server responds. A unit test that fabricates the number 421 without the transport history is insufficient.

Add negative controls. A request for A on the A connection must still succeed. A request for B with an expired or name-mismatched certificate must fail TLS verification instead of being rescued by loose retry logic. A second 421 after the fresh connection must terminate within the stated budget. A 403 from the correct origin must stay a 403, not be reinterpreted as a connectivity failure. Each control proves a different boundary rather than merely increasing the number of passing tests.

For write tools, test with a server that supports stable idempotency keys. Have it record logical operations and transport attempts separately. After a deliberately misdirected first attempt and a successful second attempt, assert that one logical write exists, not two. Also test a timeout after an accepted write, where replay requires deduplication or reconciliation. The difference between these cases is a central safety property of any autonomous integration.

Inspect logs after testing. Confirm that authority, SNI where relevant, HTTP version, response status and attempt relationship are usable in debugging but that cookies, passwords, API tokens and private document content are absent. If diagnostic labels create excessive high-cardinality metrics, aggregate by an approved origin group while retaining detailed evidence in controlled logs. Good telemetry should make the failure explainable without turning the observability system into a data leak.

How to roll out the fix without shifting the incident

Start with one representative pair of origins and confirm the root cause. If coalescing is valid but the gateway cannot serve the advertised origin, align its host routing or advertisement. If the client is pooling across origins it cannot legitimately combine, repair the transport layer’s authority decision. If both sides are nominally valid but a CDN deployment has inconsistent nodes, find the affected subset through server-side instance identifiers and configuration hashes. Avoid a blanket disablement of TLS security checks or an unrelated wholesale certificate rotation.

Roll changes in a limited canary group that includes both fresh and long-lived connections. Old pooled connections may remain open after a server configuration deployment, so instant success on new connections alone does not prove recovery. Track 421 rate as a fraction of attempts, per-origin affected request counts, fresh-connection recovery rate, user-visible task completion and extra connection pressure. A decrease in 421 accompanied by a sharp rise in 403 or cross-tenant mismatches is not an acceptable improvement.

Prepare a rollback that preserves the distinction between application data and transport routing. If a route update creates a certificate mismatch, revert the route or advertisement without teaching clients to ignore verification. When recording the decision, include what observations would invalidate the assumed fix. That turns a one-off incident response into a reusable troubleshooting process for future migration or hosting consolidation.

Changed-context transfer problem, with worked answer

A publishing agent makes 8,000 requests to two domains, assets.example.test and editor.example.test, over a fictional shared HTTP/2 environment. One hundred sixty requests to editor.example.test receive 421 after attempting to reuse an assets-origin connection. After a fresh editor-origin connection is used, 152 succeed and eight still return 421. What fraction of all first attempts were misdirected? What fraction of the 421 subset recovered? Should the eight remaining requests be resent indefinitely, or should the user be told editing credentials are invalid?

The first fraction is 160 / 8,000 = 0.02 = 2%, using all first attempts as denominator. The fresh-route recovery fraction is 152 / 160 = 0.95 = 95%, using only 421 responses as denominator. The eight unresolved requests are 8 / 160 = 5% of the rejected group, or 8 / 8,000 = 0.1% of all original attempts. These percentages answer different questions, so a dashboard must label them separately.

Do not resend indefinitely and do not claim invalid credentials. A second 421 is evidence that the alternate route still cannot produce an authoritative response. Record the editor origin, transport version, connection selection and both attempts. Then investigate the relevant gateway or server authority configuration. If the operation included a write, retain its stable logical ID and reconcile any uncertain application outcome before another submission. The fact that the agent publishes content does not change the network protocol’s meaning.

Frequently asked questions

Does a 421 prove a website has gone down?

No. The target service may be healthy when reached on a suitable connection. A 421 can arise specifically because the client’s chosen connection leads to a server that is not configured to answer for that origin. Confirm by testing an appropriately validated fresh connection rather than inferring general downtime from one pooled-path rejection. Genuine outages can coexist with the 421, so later failures require their own evidence.

Can a client retry a POST after HTTP 421?

RFC 9110 expressly permits retrying a 421 request over a different connection whether or not its method is idempotent. Production clients should still keep stable operation identities and consider body replayability, untrusted intermediaries, and whether the response was truly a 421. A generic timeout has weaker information than a confirmed authoritative rejection. When an application has a reconciliation endpoint or idempotency key, use it.

Should I fix Host, SNI or DNS first?

Inspect their actual values first. Changing the Host header to make a request reach any responsive site is especially risky because it can change the origin being addressed. DNS changes can affect which frontend receives new connections but need not repair a stale route map. SNI and certificate identities concern the TLS session; :authority and Host carry request targeting. Identify the first inconsistent boundary and make the smallest validated change there.

Is ORIGIN an HTTP/3 or universal browser feature?

RFC 8336 specifically defines an HTTP/2 ORIGIN frame, with precise conditions on when it is processed. Do not assume that all clients implement it or that it can be forwarded transparently through proxies. HTTP/3 has its own connection management and authority rules. The portable engineering principle is the same: a transport optimization must not override origin authentication and routing authority.

How many retries are safe?

There is no universal magic number. For this guide’s default simple model, one attempt using a fresh origin-specific connection after a confirmed 421 is a clear bounded recovery. Some clients and environments justify more complex routing and failover, but every additional attempt needs evidence and an operation-level budget. An unrecovered 421 should ultimately become an intelligible failure rather than an invisible loop.

Limits and primary reading

This guide explains the normative HTTP meaning of 421 and a conservative client operating pattern. It does not claim every CDN, HTTP library, proxy or cloud stack implements every coalescing rule the same way. A real implementation must be reviewed against its library version, HTTP version, gateway configuration and API semantics. The arithmetic cases are teaching scenarios, not measurements or predictions of an actual site. Where RFCs distinguish a protocol permission from an application recommendation, the distinction is preserved.

Primary reference: RFC 9110, HTTP Semantics, section 15.5.20 on 421 Misdirected Request. The authoritative specification includes the retry permission, the gateway/origin distinction and the rule against a proxy generating 421. Read it alongside RFC 9110, section 7.4 on rejecting an inappropriately routed target and RFC 9110, section 17 on security considerations.

For transport details consult RFC 9113, HTTP/2 especially section 9.1 on connection management; RFC 8336, The ORIGIN HTTP/2 Frame for optional origin-set signaling; and RFC 9114, HTTP/3 for HTTP/3 authority and connection reuse. These standards, not a vendor’s marketing explanation, are the basis of the protocol claims in this article.

For browser security, follow Agent HSTS Boundaries — Browser HTTPS Upgrades and Subdomain Scope. To separate early-data replay from origin misdirection, read Agent HTTP Early Data — 425 Too Early and Safe Retries. For permission boundaries that remain relevant after rerouting, see Agent OAuth Resource Indicators — Audience-Bound Tokens.

For wider context, Agent Safe URL Fetching — SSRF, Redirects and DNS Rebinding explains why connection recovery must not broaden a destination allowlist. The How Super Intelligence Works guide groups current engineering mechanisms without asserting that ASI already exists. Apply the lessons here whenever a reliable agent must distinguish its desired destination from the network connection actually chosen.

Discover more from eduKate Singapore

Subscribe now to keep reading and get access to the full archive.

Continue reading