OpenSource-Hub
M

MyIP

10.3k stars·시스템 최적화·SHA-256 체크섬 확인됨

셀프 호스팅 IP 툴박스로, IP 감지, 웹사이트 연결 테스트, DNS 유출 테스트, 속도 측정, 브라우저 핑거프린트 조회 등 매우 포괄적인 기능을 제공합니다.

스마트 다운로드

프로젝트 홈페이지 방문

아직 설치 프로그램이 없습니다 — 소스 저장소로 이동하세요

IP 조회, 인터넷 속도 측정, 유출 확인, 차단 테스트까지 기능이 매우 풍부한 IP 유틸리티 도구로, 직접 배포하면 더욱 안전합니다.

주요 기능

  • 로컬 머신의 모든 IPv4/IPv6 주소 표시 및 다중 데이터 소스 지원
  • IP 지리적 위치 조회(국가, 지역, ASN, 위도/경도)
  • 웹사이트 가용성 감지(Google, YouTube, ChatGPT, GitHub 등)
  • WebRTC 감지 및 DNS 누출 테스트
  • 전 세계 지연 시간 테스트 및 MTR 경로 추적

할 수 없는 것

  • •IP 지리 정보와 WebRTC 국가 배지를 사용하려면 반드시 MaxMind 계정과 키를 구성해야 하며, 그렇지 않으면 해당 기능에서 503 오류가 발생합니다.
  • •Docker 배포 시 환경 변수를 설정하지 않으면 컨테이너 내 MaxMind 데이터베이스 디렉터리가 비어 있습니다.
  • •프로그램은 기본적으로 속도 제한 없이 실행되므로, 운영 환경에서는 SECURITY_RATE_LIMIT와 SECURITY_DELAY_AFTER를 설정하여 남용을 방지하는 것이 좋습니다.
  • •기본 제공되는 프론트엔드와 백엔드는 서로 다른 포트(18966 프론트엔드, 11966 백엔드)를 사용하므로 리버스 프록시 구성 시 주의하세요.
  • •ip.sb 또는 ipinfo.io와 같은 유사 도구와 비교할 때, MyIP는 셀프 호스팅 방식으로 데이터가 외부로 나가지 않으며 기능 통합도가 매우 높습니다. 무료 오픈 소스이지만 유일한 단점은 MaxMind 데이터베이스를 직접 유지 관리해야 한다는 점입니다.

사용 사례

  • 자신의 공인 IP를 빠르게 확인하고 DNS 유출 여부 확인
  • 프록시/VPN 규칙이 올바른지 감지하여 DNS 유출 방지
  • 특정 웹사이트(예: ChatGPT, YouTube)의 접속 가능 여부 테스트
  • 네트워크 지연 및 라우팅 문제 진단(MTR)
  • Whois 조회 또는 MAC 주소 제조사 조회 수행
  • 브라우저 핑거프린트 및 네트워크 보안 항목 종합 점검

상세 설명

MyIP는 기술 애호가와 프라이버시에 민감한 사용자를 위해 설계된 기능이 풍부한 셀프 호스팅 IP 도구 상자입니다. 여러 데이터 소스에서 로컬 및 공용 IPv4/IPv6 주소를 동시에 표시하고, 상세한 IP 지리 정보(국가, 지역, ASN)를 제공합니다. 다양한 네트워크 감지 도구가 내장되어 있습니다: 웹사이트 가용성 확인(Google, YouTube, ChatGPT, GitHub 등), WebRTC 감지, DNS 누출 테스트, 인터넷 속도 테스트, 프록시 규칙 테스트, 글로벌 지연 시간 및 MTR 테스트, DNS 리졸버(도메인 오염 여부 판별 가능), 웹사이트 차단 확인, Whois 조회, MAC 주소 조회, 브라우저 핑거프린트 계산, 그리고 258개 항목을 포함한 네트워크 보안 체크리스트. 다크 모드, PWA 설치, 단축키 조작을 지원하며 중국어/영어/프랑스어/터키어 인터페이스를 제공합니다. Node.js 또는 Docker를 통해 배포할 수 있으며, IP 지리 데이터베이스를 얻으려면 MaxMind 계정을 무료로 등록해야 합니다.

문제 해결 & FAQ (1)

문제 해결
Express 5에서 req.query의 변경 사항이 미들웨어 간에 손실되는 이유는 무엇인가요?

Express 5는 req.query를 getter를 통해 노출하므로, 접근할 때마다 새로 파싱된 객체가 반환됩니다. 따라서 제자리 변경(예: req.query.type = req.query.type.toUpperCase())은 다음 미들웨어나 핸들러가 실행되기 전에 버려집니다. 해결 방법: 재작성하기 전에 파싱된 쿼리를 고정하세요. 예를 들어 const query = { ...req.query }처럼 복사본을 만들어 변경한 다음, 다시 할당하거나(req.query = query) 명시적으로 전달하세요. MyIP에서는 이 문제로 인해 requireValidRecordType 같은 가드가 type=caa를 가드 내부에서만 대문자로 변환하여, 핸들러가 다시 소문자 caa를 받게 되어 CAA 조회를 수행하는 대신 N/A를 반환했습니다. 이 수정은 PR #522(dev 브랜치)에 반영되었으며, 모든 정규화 가드(requireValidDomain, requireValidASN, normalizeAsnQuery, requireValidCountry)에 적용됩니다. 테스트할 때는 실제 Express 요청 객체를 사용하세요. 일반 객체로 만든 req.query 목은 getter 동작을 재현하지 못합니다.

원본 Issue #521

태그

ip-toolboxnetwork-toolsdns-leak-testspeed-testself-hostedprivacypwa

시작하기

1

설치 프로그램 다운로드

위 버튼을 클릭하여 시스템에 맞는 설치 프로그램을 다운로드

2

소프트웨어 설치

다운로드한 설치 프로그램을 더블 클릭하고 안내에 따르세요

3

1단계: Node.js(v18+) 또는 Docker가 설치되어 있는지 확인하세요

4

2단계: 코드를 클론하고 의존성을 설치합니다: git clone https://github.com/jason5ng32/MyIP.git && cd MyIP && npm install

5

3단계: 빌드하고 실행합니다: npm run build && npm start, 프로그램은 기본적으로 18966 포트에서 수신 대기합니다

설치 가이드
  1. 1단계: Node.js(v18+) 또는 Docker가 설치되어 있는지 확인하세요
  2. 2단계: 코드를 클론하고 의존성을 설치합니다: git clone https://github.com/jason5ng32/MyIP.git && cd MyIP && npm install
  3. 3단계: 빌드하고 실행합니다: npm run build && npm start, 프로그램은 기본적으로 18966 포트에서 수신 대기합니다
파일 무결성

체크섬 없음

이 프로젝트는 GitHub Release 페이지에 SHA-256 체크섬을 게시하지 않았습니다

SHA256 체크섬

체크섬 없음

GitHub Releases에서 직접 다운로드하고 파일 무결성을 직접 확인하세요

이 플랫폼의 모든 SHA-256 체크섬은 프로젝트의 공식 GitHub Release 페이지에서 추출되었으며, 어떠한 변경도 없습니다. GitHub Releases 페이지에서 직접 검증할 수 있습니다.

오픈소스 투명성

GitHub 소스 보기
환경 가이드

제거 정보

Node 배포인 경우 MyIP 디렉터리를 직접 삭제하면 됩니다. Docker 배포인 경우 `docker stop myip && docker rm myip && docker rmi jason5ng32/myip:latest`를 실행하세요.

추가 의존성 없음

다운로드 후 바로 사용 가능. 추가 런타임이 필요하지 않습니다.

프로젝트 정보
라이선스MIT
마지막 업데이트2026-10-24 17:12:43
GitHub 저장소공식 웹사이트

문제 발생? 아래 FAQ 확인

1 FAQ

유사한 프로젝트