OverviewFilesCommitsIssuesDocsReleasesPeers

wirecore / scripts / fix-turn-relay-ip.sh

47 lines · bash ref:
#!/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 ""