Jump to content

SimTX API/Packets/ForwardedClientAddress: Difference between revisions

From SimTX Wiki
Clanker (talk | contribs)
Clanker moved page SimTX API/Packets/ForwardedClientAddress to SimTX API v24/Packets/ForwardedClientAddress: Archive the v24 protocol reference
Tag: New redirect
 
Clanker (talk | contribs)
Protocol v25 reference: ForwardedClientAddress
Tag: Removed redirect
 
Line 1: Line 1:
#REDIRECT [[SimTX API v24/Packets/ForwardedClientAddress]]
{{SimTX API navigation}}
{{SimTX packet
| name = ForwardedClientAddress
| frame = ClientFrame
| field = 3
| member = forwarded_address
| direction = c2s
| session = [[SimTX API/Receiver session|Receiver]]
| roles = <code>ROLE_RECEIVER</code>, before the start.
| permission = <code>proxy.forward_client_ip</code>
| group = receiver
| file = frames.proto
}}
'''ForwardedClientAddress''' lets a trusted proxy, such as a web receiver that relays SimTX to browsers, tell the server the real address of the person it serves. The server then applies per-address limits, wideband budgets and bans to that address instead of the proxy's. Ordinary clients never send it.
 
== Definition ==
<syntaxhighlight lang="protobuf">
message ForwardedClientAddress { string address = 1; }  // trusted proxies only, before ReceiverStart
</syntaxhighlight>
 
== Fields ==
{| class="wikitable"
! # !! Field !! Type !! Description
|-
| 1 || <code>address</code> || <code>string</code> || Real client IP address as text, 1 to 64 characters after trimming.
|}
 
== Rules ==
* Only valid on receiver connections, and only as the first frame after the [[SimTX API/Packets/ServerHello|ServerHello]], before [[SimTX API/Packets/ReceiverStart|ReceiverStart]].
* The connection must be authenticated with an account holding <code>proxy.forward_client_ip</code>. Otherwise the connection is refused.
* An invalid address, or a banned one, ends the connection.
* The limit of 32 connections per address still applies to the proxy's own address.
 
== See also ==
* [[SimTX API/Receiver session]]
* [[SimTX API/Permissions]]
 
{{SimTX API navbox}}
[[Category:SimTX API]]

Latest revision as of 16:44, 24 October 2026

ForwardedClientAddress
Frame ClientFrame, field 3
Member forwarded_address
Direction Client → server
Session Receiver
Roles ROLE_RECEIVER, before the start.
Permission proxy.forward_client_ip
Answered by
Answers
Defined in frames.proto

ForwardedClientAddress lets a trusted proxy, such as a web receiver that relays SimTX to browsers, tell the server the real address of the person it serves. The server then applies per-address limits, wideband budgets and bans to that address instead of the proxy's. Ordinary clients never send it.

Definition[edit | edit source]

message ForwardedClientAddress { string address = 1; }   // trusted proxies only, before ReceiverStart

Fields[edit | edit source]

# Field Type Description
1 address string Real client IP address as text, 1 to 64 characters after trimming.

Rules[edit | edit source]

  • Only valid on receiver connections, and only as the first frame after the ServerHello, before ReceiverStart.
  • The connection must be authenticated with an account holding proxy.forward_client_ip. Otherwise the connection is refused.
  • An invalid address, or a banned one, ends the connection.
  • The limit of 32 connections per address still applies to the proxy's own address.

See also[edit | edit source]

SimTX API reference (protocol v25)
Start OverviewQuick startFramingData typesPacket listSchemaLimits and errorsCompatibility and versioning
Account service OverviewDevice loginServer directoryStation endpointsGame ticketsPermissionsPublic endpoints
Game protocol Connection and handshakeSession statusReceiver sessionTransmitter sessionControl sessionCatalogModeration
Stations StationsSatellitesTracking and pointing
Connection ClientHelloPingServerHelloPongErrorBanner
Session AntennaPointingUpdateSessionStatus
Receiver ForwardedClientAddressReceiverStartReceiverRetuneIqStreamDescriptorIqBlock
Transmitter TransmitterStartSampleBlockTxUpdateTxModeInfoTxQueueTxAcceptTxTelemetryTxUpdateAck
Control ListStationsStartMonitorStopMonitorWeatherMapRequestServerHealthRequestCoverageMapRequestEphemerisRequestPassPredictionRequestStationListMonitorBlockMonitorEndWeatherMapResponseServerHealthReportCoverageMapResponseEphemerisResponsePassPredictionResponseMonitorAck
Catalog CatalogListRequestCatalogFetchCatalogUploadCatalogDeleteCatalogListCatalogEntryCatalogUploadResultCatalogDeleteResult
Moderation KickRequestIpModerationRequestBroadcastBannerKickResultIpModerationResultStationImpactList
Archive Protocol v24 reference