#!/bin/bash
#
# Fix TURN server relay-ip configuration
# The relay-ip should be Tabertron's local IP, not the external IP
#
# Usage: sudo bash fix-turn-relay-ip.sh
#
set -e
if [ "$EUID" -ne 0 ]; then
echo "Please run as root: sudo bash fix-turn-relay-ip.sh"
exit 1
fi
echo "🔧 Fixing TURN server relay-ip..."
# Backup config
cp /etc/turnserver.conf /etc/turnserver.conf.bak2
# Change relay-ip to listen on all interfaces
# Keep external-ip as the public IP for advertising
sed -i 's/^relay-ip=.*/# relay-ip removed - let TURN auto-detect/' /etc/turnserver.conf
echo "✅ Config updated!"
echo ""
cat /etc/turnserver.conf | grep -E "^(external-ip|relay-ip|#.*relay-ip)"
echo ""
echo "🔄 Restarting TURN server..."
systemctl restart coturn
sleep 2
if systemctl is-active --quiet coturn; then
echo "✅ TURN server restarted successfully!"
else
echo "❌ TURN server failed to start!"
journalctl -u coturn -n 20
exit 1
fi
echo ""
echo "📋 Next: Test TURN server from laptop again"
echo ""