
개발하다 보면 localhost는 왜 계속 나올까?
웹 개발을 처음 공부하다 보면 정말 자주 보는 주소가 있습니다.
http://localhost:8080
Spring Boot나 Node.js 같은 웹 서버를 실행할 때도 볼 수 있고, 로컬 개발 환경을 구성하다 보면 localhost라는 주소를 계속 만나게 됩니다.
그런데 처음에는 그냥
“내 컴퓨터에서 실행할 때 쓰는 주소인가 보다.”
하고 넘어가는 경우가 많습니다.
그러다 보면 몇 가지 궁금증이 생깁니다.
localhost는 정확히 무엇일까요?
그리고 왜 127.0.0.1이라는 IP 주소와 함께 등장하는 걸까요?
이번 글에서는 개발 초보자도 이해할 수 있도록 localhost와 127.0.0.1의 의미를 쉽게 정리해보겠습니다.
⬇️⬇️⬇️ 1분 설명 영상 보러가기 ⬇️⬇️⬇️
https://youtube.com/shorts/T3m5KcdqcnU?si=0oFXEQtRPjP2odu1
localhost란?
localhost는 쉽게 말하면 현재 사용하고 있는 자기 자신의 컴퓨터를 가리키는 호스트 이름입니다.
예를 들어 내 컴퓨터에서 웹 서버를 실행했다고 생각해보겠습니다.
다른 컴퓨터에 있는 서버를 찾아갈 필요 없이, 지금 내가 사용하고 있는 컴퓨터에서 실행 중인 서버에 접속하면 됩니다.
이때 사용할 수 있는 이름이 바로
localhost
입니다.
그래서 아주 단순하게 기억한다면,
localhost = 내 컴퓨터를 가리키는 이름
이라고 이해하면 됩니다.
그렇다면 127.0.0.1은 무엇일까?
localhost와 함께 자주 등장하는 IP 주소가 있습니다.
127.0.0.1
이 주소는 대표적인 IPv4 루프백(Loopback) 주소입니다.
루프백이라는 이름처럼 네트워크 통신이 외부의 다른 컴퓨터를 향하는 것이 아니라 자기 자신의 컴퓨터를 대상으로 이루어지는 데 사용됩니다.
그래서 웹 서버가 내 컴퓨터에서 실행되고 있다면 환경에 따라 다음과 같이 접속할 수 있습니다.
http://localhost
또는
http://127.0.0.1
둘 다 로컬 컴퓨터를 대상으로 접근하는 상황에서 자주 사용됩니다.
localhost와 127.0.0.1은 완전히 같은 것일까?
여기서 하나 주의할 점이 있습니다.
초보자 설명에서는 흔히
localhost = 127.0.0.1
이라고 설명하기도 하지만, 엄밀하게 보면 둘은 같은 종류의 값이 아닙니다.
localhost는 호스트 이름(hostname)이고,
127.0.0.1은 IPv4 주소입니다.
컴퓨터가 localhost라는 이름을 해석해서 로컬 루프백 주소로 연결하는 것입니다.
또한 IPv6 환경에서는
::1
이라는 IPv6 루프백 주소가 사용될 수도 있습니다.
따라서 개념적으로는
localhost → 내 컴퓨터를 가리키는 이름
127.0.0.1 → 대표적인 IPv4 루프백 주소
라고 구분해두면 이해하기 쉽습니다.
그렇다면 localhost:8080에서 8080은 뭘까?
개발할 때는 localhost만 사용하는 것보다 이런 주소를 훨씬 자주 봅니다.
http://localhost:8080
여기서 8080은 포트(Port) 번호입니다.
하나의 컴퓨터에서는 여러 프로그램과 서비스가 동시에 실행될 수 있습니다.
예를 들어 웹 서버도 실행할 수 있고, 데이터베이스 서버도 실행할 수 있고, 여러 개발 서버를 동시에 띄울 수도 있습니다.
그렇다면 컴퓨터 입장에서는 어떤 프로그램과 통신해야 하는지 구분할 방법이 필요합니다.
이때 사용하는 것이 포트 번호입니다.
따라서 아주 쉽게 생각하면,
localhost:8080
은
localhost → 어느 컴퓨터? → 내 컴퓨터
8080 → 그 컴퓨터의 어떤 서비스? → 8080 포트를 사용하는 서비스
라는 의미로 이해할 수 있습니다.
이전에 IP와 Port의 차이를 공부했다면 여기서 두 개념이 연결됩니다.
인터넷이 없어도 localhost에 접속할 수 있는 이유
localhost는 외부 인터넷에 있는 서버를 찾아가는 주소가 아닙니다.
자기 자신의 컴퓨터를 대상으로 통신하기 때문에 외부 인터넷 연결 없이도 로컬에서 실행 중인 서비스에 접근할 수 있습니다.
예를 들어 노트북에서 개발 서버를 실행하고 해당 서버가 8080 포트에서 정상적으로 대기하고 있다면,
http://localhost:8080
으로 접속해 개발 중인 웹 페이지를 확인할 수 있습니다.
물론 실제 접속 가능 여부는 서버가 정상적으로 실행되어 있는지, 어떤 주소와 포트에 바인딩되어 있는지 등의 설정에도 영향을 받습니다.
개발자에게 localhost가 중요한 이유
웹 개발을 하다 보면 코드를 수정할 때마다 실제 운영 서버에 올려서 테스트할 수는 없습니다.
그래서 보통 자신의 컴퓨터에 개발 환경을 구성하고 프로그램을 먼저 실행해봅니다.
이 과정에서 localhost를 이용하면 내 컴퓨터를 하나의 개발용 서버처럼 사용해서 테스트할 수 있습니다.
그래서 개발 공부를 시작하면
localhost:3000
localhost:5173
localhost:8000
localhost:8080
같은 주소를 계속 만나게 되는 것입니다.
포트 번호가 서로 다른 이유는 각 프로그램이나 개발 도구가 서로 다른 포트를 사용하도록 설정되어 있기 때문입니다.
한 번에 정리하기
오늘 내용을 정말 간단하게 정리하면 이렇습니다.
localhost
→ 현재 내 컴퓨터를 가리키는 호스트 이름
127.0.0.1
→ 대표적인 IPv4 루프백 주소
::1
→ IPv6의 루프백 주소
localhost:8080
→ 내 컴퓨터의 8080 포트를 사용하는 서비스에 접근
개발하면서 너무 자주 보는 주소라 그냥 외우고 넘어가기 쉽지만, localhost와 IP, Port의 관계를 한 번 이해해두면 로컬 개발 환경이 훨씬 자연스럽게 보이기 시작합니다.
오늘의 IT한입에서는 개발 공부를 하면서 “분명 배웠는데 왜 자꾸 헷갈리지?” 싶은 기초 IT·개발 개념을 최대한 쉽게 설명하고 있습니다.
👉 오늘의 IT한입 YouTube 채널
https://www.youtube.com/@itbite_daily
오늘의 IT한입
👋 하루 한 입, 쉽게 배우는 IT & 개발 개념! 프로그래밍, 데이터베이스, 운영체제, 네트워크, 보안, 코딩테스트까지! 취업 준비부터 실무 감각까지 매일 짧고 강력하게 정리해드립니다. 📍 매일
www.youtube.com
'IT개발 > Tech Notes' 카테고리의 다른 글
| 공인 IP와 사설 IP 차이 쉽게 이해하기|192.168로 시작하는 이유는? (1) | 2026.09.16 |
|---|---|
| IP 주소와 포트(Port) 차이 쉽게 이해하기|IP만으로 통신할 수 없는 이유 (0) | 2026.09.14 |
| 남이 짠 코드 어떻게 분석할까? 개발자가 기존 코드를 빠르게 파악하는 7가지 방법 (0) | 2026.09.01 |
| 🌐 CSR과 SSR의 차이, 웹 서비스에서 어떻게 쓰이고 무엇이 다른가? (0) | 2025.11.10 |
| 🧩 RESTful API 완전 정리: API가 도대체 뭐길래 이렇게 헷갈릴까? (0) | 2025.10.31 |
댓글