72 lines
1.7 KiB
Markdown
72 lines
1.7 KiB
Markdown
# CONFIGURACIÓN DUCKDNS PARA LIVEKIT
|
|
|
|
## 🦆 DuckDNS - Dominio gratuito para IP dinámica
|
|
|
|
### Paso 1: Registrarse en DuckDNS
|
|
1. Ir a [duckdns.org](https://www.duckdns.org)
|
|
2. Login con Google/GitHub
|
|
3. Crear subdominio: `mi-livekit.duckdns.org`
|
|
4. Copiar el token
|
|
|
|
### Paso 2: Script de actualización automática
|
|
```bash
|
|
# Crear script de actualización
|
|
cat > /home/xesar/update-duckdns.sh << 'EOF'
|
|
#!/bin/bash
|
|
# Actualizar DuckDNS con IP actual
|
|
|
|
DOMAIN="mi-livekit" # Tu subdominio sin .duckdns.org
|
|
TOKEN="tu-token-aqui" # Token de DuckDNS
|
|
|
|
# Obtener IP pública actual
|
|
CURRENT_IP=$(curl -s https://checkip.amazonaws.com)
|
|
|
|
# Actualizar DuckDNS
|
|
RESPONSE=$(curl -s "https://www.duckdns.org/update?domains=$DOMAIN&token=$TOKEN&ip=$CURRENT_IP")
|
|
|
|
if [ "$RESPONSE" = "OK" ]; then
|
|
echo "$(date): DuckDNS actualizado - $DOMAIN.duckdns.org → $CURRENT_IP"
|
|
else
|
|
echo "$(date): ERROR actualizando DuckDNS: $RESPONSE"
|
|
fi
|
|
EOF
|
|
|
|
chmod +x /home/xesar/update-duckdns.sh
|
|
```
|
|
|
|
### Paso 3: Automatizar con cron
|
|
```bash
|
|
# Editar crontab
|
|
crontab -e
|
|
|
|
# Agregar línea para actualizar cada 5 minutos:
|
|
*/5 * * * * /home/xesar/update-duckdns.sh >> /home/xesar/duckdns.log 2>&1
|
|
```
|
|
|
|
### Paso 4: Configurar LiveKit con dominio
|
|
```yaml
|
|
# livekit-production.yaml
|
|
rtc:
|
|
external_ip: "mi-livekit.duckdns.org" # Tu dominio DuckDNS
|
|
port_range_start: 50000
|
|
port_range_end: 50100
|
|
```
|
|
|
|
### Paso 5: Port forwarding en router
|
|
```
|
|
Regla: LiveKit-API
|
|
- Puerto externo: 7880
|
|
- Puerto interno: 7880
|
|
- IP: 192.168.1.19
|
|
- Protocolo: TCP
|
|
|
|
Regla: LiveKit-WebRTC
|
|
- Puerto externo: 50000-50100
|
|
- Puerto interno: 50000-50100
|
|
- IP: 192.168.1.19
|
|
- Protocolo: UDP
|
|
```
|
|
|
|
### URLs finales:
|
|
- **LiveKit API**: `ws://mi-livekit.duckdns.org:7880`
|
|
- **Con SSL**: `wss://mi-livekit.duckdns.org:443` (después de configurar SSL) |