튜토리얼 카테고리 Skills 소개
ZH EN JA KO
문제 해결

OpenClaw API 연결 오류 해결 완벽 가이드

· 16 분 소요

서문

OpenClaw는 다양한 AI 모델 제공업체의 API와 통신해야 합니다. 사용 과정에서 여러 종류의 연결 오류를 만날 수 있습니다. 본 글에서는 각 오류의 원인과 해결 방안을 체계적으로 소개하여 문제를 신속하게 파악하고 수정할 수 있도록 도와드리겠습니다.

1. 빠른 진단 도구

문제를 해결하기 전에 먼저 OpenClaw 내장 진단 도구를 사용합니다:

# 종합 진단 실행
openclaw doctor

# 실시간 로그에서 오류 확인
openclaw logs | grep -i "error\|fail\|timeout"

# API 연결 테스트
curl -v https://api.anthropic.com/v1/messages \
  -H "x-api-key: YOUR_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-4-20250514","max_tokens":10,"messages":[{"role":"user","content":"hi"}]}'

2. HTTP 오류 코드 상세 설명

2.1 401 Unauthorized — 인증 실패

증상:

Error: API request failed with status 401: Invalid API key

원인 및 해결 방안:

가능한 원인 해결 방안
API Key 오류 또는 만료 Key를 다시 생성하고 설정을 업데이트
Key 형식 불완전 여분의 공백이나 줄바꿈 확인
잘못된 제공업체의 Key 사용 Key가 제공업체와 일치하는지 확인
환경 변수 미적용 OpenClaw를 재시작하여 설정 적용
# 설정 파일의 API Key 확인
cat ~/.config/openclaw/openclaw.json5 | grep -i "key\|token"

# Key 형식이 올바른지 확인 (Anthropic의 경우 sk-ant-로 시작해야 함)
# 업데이트 후 재시작
openclaw restart

2.2 403 Forbidden — 권한 부족

증상:

Error: API request failed with status 403: Permission denied

일반적인 원인:

  • API Key에 해당 모델의 접근 권한이 없음
  • 계정에서 특정 모델 사용 자격을 개통하지 않음 (예: Claude Opus)
  • IP 주소가 API 제공업체에 의해 차단됨
  • 해당 지역이 서비스 범위에 포함되지 않음
# IP 제한 문제인지 확인
curl -s https://api.anthropic.com/v1/messages \
  -H "x-api-key: $API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -w "\n%{http_code}" 2>&1

# 프록시를 사용하는 경우 프록시 설정이 올바른지 확인
echo $HTTP_PROXY
echo $HTTPS_PROXY

2.3 429 Too Many Requests — 속도 제한

증상:

Error: Rate limit exceeded. Please retry after 30 seconds.

각 제공업체의 속도 제한 참고:

제공업체 무료 할당량 기본 제한 고급 제한
Anthropic 없음 60 RPM 4000 RPM
OpenAI 있음 60 RPM 10000 RPM
Groq 있음 30 RPM 무제한
Deepseek 있음 60 RPM 600 RPM

해결 방안:

// ~/.config/openclaw/openclaw.json5
{
  "rateLimiting": {
    // 전역 요청 간격 (밀리초)
    "minInterval": 1000,
    // 속도 제한 시 재시도 전략
    "retry": {
      "enabled": true,
      "maxRetries": 3,
      "backoffMultiplier": 2,
      "initialDelay": 5000
    }
  }
}

2.4 500 Internal Server Error — 서버 내부 오류

처리 방법:

# 보통 제공업체 측의 문제입니다. 서비스 상태 페이지를 확인하세요
# Anthropic: https://status.anthropic.com
# OpenAI: https://status.openai.com

# 대체 모델 자동 전환 설정
// ~/.config/openclaw/openclaw.json5
{
  "models": {
    "primary": {
      "provider": "anthropic",
      "model": "claude-sonnet-4-20250514"
    },
    "fallback": {
      "provider": "openai",
      "model": "gpt-4o"
    }
  }
}

2.5 502/503 Bad Gateway / Service Unavailable

증상:

Error: 502 Bad Gateway
Error: 503 Service Unavailable - The server is temporarily overloaded

해결 단계:

# 1. 제공업체 서비스 장애인지 확인
curl -s -o /dev/null -w "%{http_code}" https://api.anthropic.com/v1/messages

# 2. 로컬 네트워크가 정상인지 확인
ping api.anthropic.com
traceroute api.anthropic.com

# 3. 리버스 프록시를 사용하는 경우 프록시가 정상인지 확인
nginx -t
systemctl status nginx

3. 타임아웃 문제 해결

3.1 연결 타임아웃

Error: connect ETIMEDOUT 104.18.0.1:443
# API 엔드포인트와의 연결 테스트
curl -v --connect-timeout 10 https://api.anthropic.com/v1/messages

# 연결 타임아웃이 발생하면 프록시 설정이 필요할 수 있습니다
// ~/.config/openclaw/openclaw.json5
{
  "proxy": {
    "enabled": true,
    "url": "http://127.0.0.1:7890",
    // 또는 SOCKS5 프록시 사용
    // "url": "socks5://127.0.0.1:1080"
  },
  "timeout": {
    "connect": 30000,    // 연결 타임아웃 30초
    "request": 120000    // 요청 타임아웃 120초
  }
}

3.2 요청 타임아웃

모델이 긴 텍스트를 생성할 때 기본 타임아웃 시간을 초과할 수 있습니다:

// 타임아웃 시간 증가
{
  "timeout": {
    "request": 300000  // 5분
  }
}

4. DNS 해석 실패

증상:

Error: getaddrinfo ENOTFOUND api.anthropic.com
Error: querySrv ESERVFAIL _http._tcp.api.openai.com

해결 방안:

# 1. DNS 해석 확인
nslookup api.anthropic.com
dig api.anthropic.com

# 2. 공용 DNS 사용 시도
echo "nameserver 8.8.8.8" | sudo tee /etc/resolv.conf
echo "nameserver 1.1.1.1" | sudo tee -a /etc/resolv.conf

# 3. hosts 레코드 수동 추가 (임시 방안)
echo "104.18.0.1 api.anthropic.com" | sudo tee -a /etc/hosts

# 4. 수정 후 해석 테스트
nslookup api.anthropic.com

5. SSL 인증서 오류

증상:

Error: unable to verify the first certificate
Error: self signed certificate in certificate chain
Error: CERT_HAS_EXPIRED

해결 방법:

# 1. 인증서 정보 확인
openssl s_client -connect api.anthropic.com:443 -servername api.anthropic.com </dev/null 2>/dev/null | openssl x509 -noout -dates

# 2. 시스템 CA 인증서 업데이트
# Ubuntu/Debian
sudo apt update && sudo apt install -y ca-certificates
sudo update-ca-certificates

# CentOS/RHEL
sudo yum install -y ca-certificates
sudo update-ca-trust

# 3. 프록시의 중간자 인증서 문제인 경우
# 프록시의 CA 인증서를 Node.js 신뢰 목록에 추가
export NODE_EXTRA_CA_CERTS=/path/to/proxy-ca.crt

경고: 프로덕션 환경에서 절대로 NODE_TLS_REJECT_UNAUTHORIZED=0을 설정하지 마세요. 이는 SSL 검증을 완전히 비활성화하여 심각한 보안 위험이 있습니다.

6. 프록시 설정 문제

6.1 HTTP 프록시

// ~/.config/openclaw/openclaw.json5
{
  "proxy": {
    "enabled": true,
    "url": "http://127.0.0.1:7890"
  }
}

6.2 환경 변수 방식

# 시스템 환경에 설정
export HTTP_PROXY=http://127.0.0.1:7890
export HTTPS_PROXY=http://127.0.0.1:7890
export NO_PROXY=localhost,127.0.0.1

# OpenClaw 재시작
openclaw restart

6.3 프록시 연결성 테스트

# 프록시를 통한 API 접근 테스트
curl -x http://127.0.0.1:7890 -v https://api.anthropic.com/v1/messages

# SOCKS5 프록시 테스트
curl -x socks5://127.0.0.1:1080 -v https://api.anthropic.com/v1/messages

7. 각 제공업체별 전문 해결

7.1 Anthropic (Claude)

# API Key 유효성 검증
curl https://api.anthropic.com/v1/messages \
  -H "x-api-key: $ANTHROPIC_API_KEY" \
  -H "anthropic-version: 2023-06-01" \
  -H "content-type: application/json" \
  -d '{"model":"claude-sonnet-4-20250514","max_tokens":5,"messages":[{"role":"user","content":"test"}]}'

자주 발생하는 문제: API Key 형식은 sk-ant-api03-...이며, OpenAI의 Key와 혼동하지 않도록 주의하세요.

7.2 OpenAI (GPT)

# API Key 검증
curl https://api.openai.com/v1/chat/completions \
  -H "Authorization: Bearer $OPENAI_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"gpt-4o","messages":[{"role":"user","content":"test"}],"max_tokens":5}'

자주 발생하는 문제: 무료 할당량을 다 사용하면 429 오류가 반환되므로 결제 수단을 등록해야 합니다.

7.3 Ollama (로컬 모델)

# Ollama 서비스 실행 여부 확인
curl http://localhost:11434/api/tags

# 모델 다운로드 확인
ollama list

# 모델 호출 테스트
curl http://localhost:11434/api/generate \
  -d '{"model":"llama3","prompt":"test","stream":false}'

자주 발생하는 문제: Ollama는 기본적으로 localhost만 수신합니다. OpenClaw가 다른 머신에 있다면 OLLAMA_HOST=0.0.0.0을 설정해야 합니다.

7.4 OpenRouter

curl https://openrouter.ai/api/v1/chat/completions \
  -H "Authorization: Bearer $OPENROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"anthropic/claude-sonnet-4-20250514","messages":[{"role":"user","content":"test"}]}'

8. 오류 해결 체크리스트

API 연결 오류가 발생하면 다음 순서로 확인하세요:

1. ✅ openclaw doctor를 실행하여 진단 결과 확인
2. ✅ API Key가 올바르고 만료되지 않았는지 확인
3. ✅ 네트워크 연결 확인 (ping, curl)
4. ✅ 프록시 설정이 올바른지 확인 (프록시 사용 시)
5. ✅ DNS 해석이 정상인지 확인
6. ✅ SSL 인증서가 유효한지 확인
7. ✅ 제공업체 서비스 상태 페이지 확인
8. ✅ 속도 제한이 발동되었는지 확인
9. ✅ openclaw logs에서 상세한 오류 정보 확인
10. ✅ curl로 직접 API를 호출하여 OpenClaw 자체 문제 배제

이러한 해결 기법을 숙지하면 대부분의 API 연결 문제를 신속하게 파악하고 해결하여 OpenClaw 서비스의 안정적인 운영을 유지할 수 있습니다.

OpenClaw는 무료 오픈소스 개인 AI 어시스턴트로, WhatsApp, Telegram, Discord 등 다양한 플랫폼을 지원합니다