#stun-turn #turn

no-std turn-client-proto

TURN protocol in a sans-IO fashion

13 releases (6 breaking)

0.7.1 Mar 30, 2026
0.6.0 Mar 15, 2026
0.4.1 Oct 20, 2025
0.3.0 Jul 28, 2025

#856 in Network programming

Download history 8/week @ 2025-12-17 31/week @ 2025-12-24 84/week @ 2026-01-14 165/week @ 2026-01-21 17/week @ 2026-02-04 19/week @ 2026-02-11 36/week @ 2026-02-18 130/week @ 2026-03-11 455/week @ 2026-03-18 275/week @ 2026-03-25

860 downloads per month
Used in 7 crates

MIT/Apache

415KB
9K SLoC

Build status codecov Dependencies crates.io docs.rs

turn-client-proto

Repository containing an implementation of a TURN (RFC5766) client written in the Rust programming language.

Relevant standards

  • RFC5766: Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN)
  • RFC6062: Traversal Using Relays around NAT (TURN) Extensions for TCP Allocations
  • RFC6156: Traversal Using Relays around NAT (TURN) Extension for IPv6
  • RFC8656: Traversal Using Relays around NAT (TURN): Relay Extensions to Session Traversal Utilities for NAT (STUN)

Rustls crypto providers

turn-client-proto does not enable any cryptographic providers on rustls. It is the user's responsibility (library or application) to enable and use the relevant cryptographic provider (ring, aws-lc-rs, RustCrypto, etc), that they wish to use.

Dependencies

~8–22MB
~213K SLoC