IP 주소는 인터넷에서의 "주소"와 같습니다. 웹사이트에 접속할 때 서버 쪽에는 이 주소가 전달됩니다. 그렇다면 브라우저 자신은 자신의 IP를 알고 있을까요?
사실 브라우저에는 자신의 IP를 조회하는 직접적인 API가 없습니다. 요청을 받은 서버 쪽에서만 그 요청의 발신 IP를 알 수 있습니다.
그래서 이 도구는 페이지가 로드될 때 /api/ip로 요청을 보내고, Vercel 서버리스 함수가 요청 헤더의 x-forwarded-for나 x-real-ip를 읽어 IP 주소를 반환하는 방식으로 동작합니다. CDN이나 프록시를 경유한 경우 x-forwarded-for에 여러 IP가 기록될 수 있어 첫 번째 값을 사용합니다.
표시되는 IP가 IPv4(203.0.113.1 형식)인지 IPv6(2001:db8::1 형식)인지 판별하여 종류도 함께 표시합니다.