serverinfrastructuur:proxy

Verschillen

Dit geeft de verschillen weer tussen de geselecteerde revisie en de huidige revisie van de pagina.

Link naar deze vergelijking

Beide kanten vorige revisie Vorige revisie
Volgende revisie
Vorige revisie
serverinfrastructuur:proxy [2026/08/23 07:24] – [VLobby controleren] rroethofserverinfrastructuur:proxy [2026/08/25 07:24] (huidige) – rroethof
Regel 44: Regel 44:
                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”                   β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
                   β”‚       Lobby        β”‚                   β”‚       Lobby        β”‚
-                  β”‚     mc-lobby001    β”‚+                  β”‚     mc-proxy001    β”‚
                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜                   β””β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”˜
                             β”‚                             β”‚
Regel 116: Regel 116:
 | ViaBackwards           5.11.0 | Ondersteuning oudere Minecraft-clients | | ViaBackwards           5.11.0 | Ondersteuning oudere Minecraft-clients |
 | MCKotlinVelocity | 1.5.1-k2.4.0 | Kotlin-runtime voor Velocity           | | MCKotlinVelocity | 1.5.1-k2.4.0 | Kotlin-runtime voor Velocity           |
 +| Simple Voice Chat|       2.6.18 | Voice-chat proxy                       |
 | bStats                      β€” | Anonieme plugin-statistieken           | | bStats                      β€” | Anonieme plugin-statistieken           |
- 
 De pluginbestanden bevinden zich in: De pluginbestanden bevinden zich in:
  
Regel 275: Regel 275:
  
 MCKotlinVelocity is geen gameplayplugin. Het is een technische runtime/dependency voor plugins die Kotlin gebruiken. MCKotlinVelocity is geen gameplayplugin. Het is een technische runtime/dependency voor plugins die Kotlin gebruiken.
 +
 +---
 +
 +# πŸŽ™οΈ Simple Voice Chat
 +
 +[[plugins:voicechat|Simple Voice Chat]] verzorgt de proximity voice chat binnen Tulpencraft.
 +
 +De voice-chatoplossing bestaat uit twee onderdelen:
 +
 +  * de **Velocity-proxycomponent** op `mc-proxy001`;
 +  * de **Paper-backendplugin** op `mc-survival001`.
 +
 +De proxy ontvangt het publieke UDP-verkeer en koppelt dit aan de backend waarop voice chat actief is.
 +
 +## Huidige status
 +
 +^ Onderdeel ^ Waarde ^
 +| Status | 🟒 Actief |
 +| Proxy | `mc-proxy001` |
 +| Velocity-plugin | Simple Voice Chat 2.6.18 |
 +| Survival-plugin | Simple Voice Chat 2.6.21 |
 +| Publieke voice-host | `server.tulpencraft.nl:25565` |
 +| Publiek protocol | UDP |
 +| Publieke poort | `25565` |
 +| Survival backend-poort | `24454` |
 +
 +## πŸ“¦ Velocity-proxy
 +
 +Op `mc-proxy001` draait de Velocity-component van Simple Voice Chat.
 +
 +Pluginbestand:
 +
 +`/srv/minecraft/velocity/plugins/voicechat-velocity.jar`
 +
 +Configuratie:
 +
 +`/srv/minecraft/velocity/plugins/voicechat/voicechat-proxy.properties`
 +
 +De proxy luistert voor voice chat op:
 +
 +`0.0.0.0:25565/UDP`
 +
 +Dit gebruikt hetzelfde **poortnummer** als Minecraft, maar een ander protocol:
 +
 +^ Protocol ^ Poort ^ Functie ^
 +| TCP | `25565` | Minecraft / Velocity |
 +| UDP | `25565` | Simple Voice Chat |
 +
 +De publieke voice-host is:
 +
 +`server.tulpencraft.nl:25565`
 +
 +## πŸŽ™οΈ Survival-backend
 +
 +Op `mc-survival001` draait de Paper-versie van Simple Voice Chat.
 +
 +Pluginbestand:
 +
 +`/srv/minecraft/survival/plugins/voicechat.jar`
 +
 +Versie:
 +
 +`2.6.21`
 +
 +De backend gebruikt intern:
 +
 +`UDP 24454`
 +
 +Deze poort is **niet het publieke voice-chat endpoint**. Het publieke voice-verkeer komt binnen op de Velocity-proxy en wordt vervolgens naar de backend doorgestuurd.
 +
 +## 🌐 Verkeersstroom
 +
 +De voice-chatverbinding verloopt als volgt:
 +
 +  Minecraft client
 +        β”‚
 +        β”‚ UDP 25565
 +        β–Ό
 +  server.tulpencraft.nl
 +        β”‚
 +        β–Ό
 +  pfSense
 +        β”‚
 +        β–Ό
 +  mc-proxy001
 +  Velocity + Simple Voice Chat
 +        β”‚
 +        β”‚ backend
 +        β–Ό
 +  mc-survival001
 +  Simple Voice Chat
 +  UDP 24454
 +
 +## πŸ”₯ Firewall
 +
 +Op `mc-proxy001` moet UDP `25565` beschikbaar zijn voor Simple Voice Chat.
 +
 +Dezelfde host gebruikt TCP `25565` voor Minecraft. TCP en UDP zijn afzonderlijke protocollen en kunnen daarom hetzelfde poortnummer gebruiken.
 +
 +Op `mc-survival001` blijft UDP `24454` beschikbaar voor de backendcomponent.
 +
 +## πŸ” DNS
 +
 +Voor Minecraft wordt `tulpencraft.nl` gebruikt.
 +
 +Voor voice chat wordt expliciet:
 +
 +`server.tulpencraft.nl:25565`
 +
 +gebruikt als publieke voice-host.
 +
 +Het DNS-record `server.tulpencraft.nl` moet naar het publieke adres van Tulpencraft wijzen.
 +
 +## πŸ‘€ Client
 +
 +Simple Voice Chat vereist client-side ondersteuning.
 +
 +Spelers moeten daarom de bijbehorende Simple Voice Chat-client gebruiken om voice chat te kunnen gebruiken.
 +
 +## πŸ”§ Configuratie wijzigen
 +
 +### Velocity
 +
 +`/srv/minecraft/velocity/plugins/voicechat/voicechat-proxy.properties`
 +
 +Belangrijke instellingen:
 +
 +`port=25565`
 +
 +`voice_host=server.tulpencraft.nl:25565`
 +
 +### Survival
 +
 +`/srv/minecraft/survival/plugins/voicechat/voicechat-server.properties`
 +
 +De backend gebruikt intern poort `24454`.
 +
 +Wijzigingen aan deze configuratie worden pas actief wanneer de betreffende plugin/server de configuratie opnieuw inleest.
 +
 +## πŸ§ͺ Troubleshooting
 +
 +### Proxy controleren
 +
 +`sudo journalctl -u velocity --since "10 minutes ago" --no-pager | grep -iE 'voicechat|voice chat'`
 +
 +Bij een correcte start moet de proxy een melding geven dat de voice-chatserver actief is.
 +
 +### Survival controleren
 +
 +`sudo journalctl -u minecraft-survival --since "10 minutes ago" --no-pager | grep -iE 'voicechat|voice chat'`
 +
 +### Luisterende UDP-poorten controleren
 +
 +Op de proxy:
 +
 +`sudo ss -lunp | grep 25565`
 +
 +Op Survival:
 +
 +`sudo ss -lunp | grep 24454`
 +
 +## ⚠️ Belangrijk
 +
 +De Velocity-proxy is het publieke voice-chatpunt.
 +
 +Maak daarom op pfSense **geen publieke NAT-regel naar `mc-survival001:24454`**.
 +
 +De publieke route is:
 +
 +`UDP 25565 β†’ mc-proxy001`
 +
 +De Survival-poort `24454/UDP` is alleen voor de interne backendverbinding.
 +
  
 --- ---
Regel 431: Regel 604:
 Pluginconfiguraties worden opgeslagen binnen: Pluginconfiguraties worden opgeslagen binnen:
  
-```text id="x8r5mn"+```
 /srv/minecraft/velocity/plugins/ /srv/minecraft/velocity/plugins/
 ``` ```
Regel 439: Regel 612:
 Voor wijzigingen aan kritieke proxyconfiguratie wordt een volledige restart aanbevolen: Voor wijzigingen aan kritieke proxyconfiguratie wordt een volledige restart aanbevolen:
  
-```bash id="s2q7vf"+```
 sudo systemctl restart velocity sudo systemctl restart velocity
 ``` ```
Regel 445: Regel 618:
 Daarna controleren: Daarna controleren:
  
-```bash id="a6n9cx"+```
 sudo journalctl -u velocity --since "1 minute ago" --no-pager sudo journalctl -u velocity --since "1 minute ago" --no-pager
 ``` ```
Regel 457: Regel 630:
 De gewenste netwerkstructuur is: De gewenste netwerkstructuur is:
  
-```text id="d7r3mh"+```
                        INTERNET                        INTERNET
                            β”‚                            β”‚
Regel 485: Regel 658:
 ### Verbinding bij het inloggen ### Verbinding bij het inloggen
  
-```text id="p4h8zq"+```
 Minecraft-client Minecraft-client
        β†“        β†“
Regel 497: Regel 670:
 ### Naar Survival ### Naar Survival
  
-```text id="r8m2kc"+```
 Speler Speler
   ↓   ↓
Regel 507: Regel 680:
 ### Naar Events ### Naar Events
  
-```text id="v3q7nx"+```
 Speler Speler
   ↓   ↓
Regel 517: Regel 690:
 ### Naar toekomstige SkyBlock ### Naar toekomstige SkyBlock
  
-```text id="m9c5hd"+```
 Speler Speler
   ↓   ↓
Regel 533: Regel 706:
 Controleer: Controleer:
  
-```bash id="b5q1sv"+```
 sudo systemctl status velocity sudo systemctl status velocity
 ``` ```
Regel 539: Regel 712:
 Controleer vervolgens de logs: Controleer vervolgens de logs:
  
-```bash id="t8m4pz"+```
 sudo journalctl -u velocity --since "10 minutes ago" --no-pager sudo journalctl -u velocity --since "10 minutes ago" --no-pager
 ``` ```
Regel 549: Regel 722:
 Controleer eerst Velocity: Controleer eerst Velocity:
  
-```bash id="k7n2fx"+```
 sudo systemctl status velocity sudo systemctl status velocity
 ``` ```
Regel 555: Regel 728:
 Controleer daarna de Lobby: Controleer daarna de Lobby:
  
-```bash id="v4c8rm"+```
 sudo systemctl status minecraft-lobby sudo systemctl status minecraft-lobby
 ``` ```
Regel 561: Regel 734:
 Controleer vervolgens de proxylogs: Controleer vervolgens de proxylogs:
  
-```bash id="z6p3qw"+```
 sudo journalctl -u velocity --since "5 minutes ago" --no-pager | \ sudo journalctl -u velocity --since "5 minutes ago" --no-pager | \
 grep -Ei 'lobby|error|exception' grep -Ei 'lobby|error|exception'
Regel 572: Regel 745:
 Controleer of Survival actief is: Controleer of Survival actief is:
  
-```bash id="q9m5kx"+```
 sudo systemctl status minecraft-survival sudo systemctl status minecraft-survival
 ``` ```
Regel 578: Regel 751:
 Controleer vervolgens de proxy: Controleer vervolgens de proxy:
  
-```bash id="f2r7vc"+```
 sudo journalctl -u velocity --since "5 minutes ago" --no-pager | \ sudo journalctl -u velocity --since "5 minutes ago" --no-pager | \
 grep -Ei 'survival|vlobby|error|exception' grep -Ei 'survival|vlobby|error|exception'
  • serverinfrastructuur/proxy.1787462684.txt.gz
  • Laatst gewijzigd: 2026/08/23 07:24
  • door rroethof