This workspace contains high-performance Rust implementations for the Minecraft Bedrock Edition network protocol. It consists of two main components:
- RakNet: A reliable UDP-based communication protocol.
- NetherNet: The next-generation discovery and connection protocol based on WebRTC.
The fundamental networking layer for Minecraft Bedrock Edition servers. This implementation is derived from iAldrich23xX/tokio-raknet and has been updated with performance improvements and modern Rust practices.
- Features:
- Asynchronous I/O (based on
tokio) - Reliable/Unreliable packet transmission
- Fragmented packet support
- Flow control and congestion management
- Asynchronous I/O (based on
The WebRTC-based network protocol used in newer versions of Minecraft. It provides LAN discovery and secure peer-to-peer (P2P) connectivity.
- Features:
- Secure communication over WebRTC (DTLS/SRTP)
- LAN server discovery
- Signaling management
- Easy-to-use
NethernetListenerandNethernetStream
To build the project:
cargo build --releaseTo run the examples:
# RakNet example (Forwarder)
cargo run --example forwarder -p raknet
# NetherNet Server
cargo run --example server -p nethernet
# NetherNet Client
cargo run --example client -p nethernet- Rust 1.85 or higher
This project is licensed under the MIT License. See the LICENSE file for details.