TCP 스캔 API
TCP 스캔 API는 IPv4 주소 범위를 TCP 연결성으로 스캔하고 네트워크에서 ADB를 통해 접근 가능한 Android 기기를 자동으로 연결합니다. 수동 adb connect 명령 없이 무선 Android 기기를 검색하고 연결하는 데 유용합니다.
엔드포인트
POST /api/v1/device/tcp-scan
요구 사항
라이선스 요구 사항
이 API는 Pro, Team 또는 Business 플랜이 필요합니다. Starter 플랜은 접근 권한이 없습니다.
요청 본문
모든 필드는 선택 사항입니다. 생략하면 앱은 설정에서 구성된 IP 범위와 포트를 사용합니다.
| 필드 | 유형 | 필수 | 설명 |
|---|---|---|---|
| start_ip | string | 아니오 | 시작 IPv4 주소 (예: "192.168.1.2"). 기본값: 앱에 저장된 설정. |
| end_ip | string | 아니오 | 종료 IPv4 주소 (예: "192.168.1.254"). 기본값: 앱에 저장된 설정. |
| port | integer | 아니오 | 스캔할 TCP 포트 (예: 5555). 기본값: 저장된 scan_port (기본값: 5555). |
서브넷 제약
스캔은 단일 /24 서브넷으로 제한됩니다. start_ip와 end_ip가 서로 다른 /24 서브넷에 속하면 범위가 자동으로 start_ip.x.x.255로 잘립니다.
예시
앱 설정 사용 (권장)
앱에서 구성된 IP 범위와 포트를 사용하려면 빈 본문을 보내세요:
curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{}'
사용자 지정 IP 범위
curl -X POST http://localhost:50809/api/v1/device/tcp-scan \
-H "Content-Type: application/json" \
-d '{
"start_ip": "192.168.1.2",
"end_ip": "192.168.1.254",
"port": 5555
}'
응답
{
"code": 0,
"message": "success",
"data": {
"total": 3,
"success": 2,
"failed": 1,
"details": [
{
"ip": "192.168.1.100",
"success": true,
"message": "already connected to 192.168.1.100:5555"
},
{
"ip": "192.168.1.101",
"success": true,
"message": "connected to 192.168.1.101:5555"
},
{
"ip": "192.168.1.102",
"success": false,
"message": "failed to connect to 192.168.1.102:5555"
}
]
}
}
응답 필드
| 필드 | 유형 | 설명 |
|---|---|---|
| data.total | integer | TCP 포트에 응답한 총 IP 수 |
| data.success | integer | ADB를 통해 성공적으로 연결된 IP |
| data.failed | integer | ADB 연결에 실패한 IP |
| data.details | array | IP별 결과 목록 |
| data.details[].ip | string | 스캔된 IP 주소 |
| data.details[].success | boolean | ADB 연결 성공 시 true |
| data.details[].message | string | ADB 출력 또는 오류 메시지 |
오류 응답
| HTTP 상태 | 코드 | 설명 |
|---|---|---|
| 403 | 403 | API 접근에는 Pro+ 플랜이 필요합니다 |
작동 방식
- TCP 탐지 — 범위 내 각 IP를 1초 TCP 연결 타임아웃으로 테스트합니다 (동시에).
- ADB 연결 — 응답하는 각 IP에 대해
adb connect <ip>:<port>를 시도합니다 (최대 2회 재시도). - 결과 집계 — 모든 IP별 결과를 수집하여 반환합니다.
스캔 성공 후 연결된 기기는 TikMatrix에 자동으로 나타납니다.