[네트워크] localhost 와 127.0.0.1

스프링 프로젝트를 처음 시작할 때 이런 문구를 볼 수 있다

o.s.b.w.embedded.tomcat.TomcatWebServer  : Tomcat initialized with port 8080 (http)

 

이 문구가 뜨면 그 때부터 http://localhost:8080/ 에 접속하여 서버가 열렸는지 확인할 수 있다.

 

http://localhost:8080 에 담긴 의미를 알아보자.

 

루프백 주소 

IP 127.0.0.1은 localhost 또는 '루프백 주소' 라고 하는 특수 목적의 IPv4 이다.

자신에게 다시 네트워크 입력이 들어온다고 하여 루프백 주소 라고 한다.

 

os가 가상으로 제공하는 예약된 ip 주소이며 인터넷 상에 일반 ip 주소로는 사용할 수 없는 주소이다. 모든 컴퓨터는 이 주소를 자체 주소로 사용하지만 실제 IP 주소처럼 다른 장치와 통신 할 수는 없다.

 

라우터 및 기타 네트워크 장치와 통신 할 수 있도록 컴퓨터에 개인 IP 주소가 할당되어있을 수 있다. 하지만 이 "127.0.0.1" 주소는 "이 컴퓨터" 또는 현재 " 사용중인 주소"임을 의미한다. 

 

루프백 주소는 사용중인 컴퓨터에서만 사용되며 특별한 경우에만 사용한다. 이것은 다른 네트워크 장치간에 파일을 전송되는 데 사용하는 일반 IP 주소와는 다르다. 예를 들어, 컴퓨터에서 실행중인 웹 서버는 127.0.0.1을 가리킬 수 있으므로, 페이지를 배포하기 전에 로컬에서 실행하고 테스트할 수 있다. 

 

 

자신의 일반 ip 주소를 사용해도 되지만 이 경우 랜카드 드라이버 등 디바이스 영역을 통과하여 처리하기 때문에 자원을 상대적으로 많이 쓰게 된다. 하지만 루프백 loopback ip 를 사용하면 이런 과정 없이 빠르게 접근이 가능하다.

 

 

루프백 주소 종류

http://localhost:8080/ 는 다른 url 으로도 동일하게 접근할 수 있다.

URL 접근방법
http://localhost:8080/ localhost
http://127.0.0.1:8080/ ipv4
http://[::1]:8080/ ipv6
http://<내 공인 ip 주소>:8080/ 공인 ip 주소

 

 

 

localhost 및 IPv6 루프백 주소 

localhost 라는 이름

컴퓨터 운영 체제는 호스트 파일에 루프백 주소와 이름을 연결하는 항목을 유지하므로 응용 프로그램에서 하드 코드 된 번호 대신 이름을 통해 루프백 메시지를 만들 수 있다.

 

 


8080

루프백 메시지에는 주소 외에도 대상 포트 번호 가 포함된다. 응용 프로그램은이 포트 번호를 사용하여 테스트 메시지를 여러 범주로 세분 할 수 있다.

 

8080은 디폴트로 주어지는 서버 번호이다. 또한 이미 내 컴퓨터 내에 8080이 사용되고 있는 경우 다른 포트번호로 바꾸어야 한다. 

http://localhost:8080 을 살펴보면 http 프로토콜과 8080 포트가 있는데 http 프로토콜은 포트번호 80을 쓴다. 하지만 포트번호는 단지 숫자 값일 뿐으로 http 프로토콜은 80번을 쓰자고 약속한 것이다. 자신의 컴퓨터에서 8080 에서도 http 프로토콜을 처리할 수 있다면 문제될 것이 없다. 

 

 

동작 원리 

TCP/IP 응용 프로그램에서 생성된 모든 메시지는 의도 된 수신자의 IP 주소를 포함한다.

TCP/IP 모델(의 Ethernet)은 127.0.0.1 을 특수 IP 주소로 인식한다.

 

프로토콜 은 실제 네트워크에 메시지를 보내기 전에 각 메시지를 검사하고 대상이 127.0.0.1인 모든 메시지를 다시 TCP/IP 스택의 수신 측으로 다시 라우팅한다.  (루프백 ip 주소로 보내진 메시지는 LAN(Local Area Network) 외부에 도달하지 않고 대신 외부 소스에서 도착한 것처럼 TCP/IP 모델의 TransportLayer로 다시 보내지게 됨.)

 

(즉 자신이 송신한 메시지를 내부적 처리를 통해 그대로 수신하게 된다) 

TCP/IP

 

 

 

 

 

 


* 네트워크 보안을 향상시키기 위해 TCP / IP는 라우터 또는 다른 네트워크 게이트웨이 에 도착하는 들어오는 메시지를 확인하고 루프백 IP 주소가 포함 된 메시지를 삭제합니다. 이렇게하면 네트워크 공격자가 루프백 주소에서 오는 악의적 인 네트워크 트래픽을 위장 할 수 없습니다.

 

ref : 

https://ko.eyewated.com/127-0-0-1-ip-%EC%A3%BC%EC%86%8C-%EC%84%A4%EB%AA%85/#google_vignette

 

127.0.0.1 IP 주소 설명

루프백 IP 주소 / localhost에 대한 설명 IP 주소 127.0.0.1은 localhost 또는 루프백 주소 라고하는 특수 목적의 IPv4 주소 입니다. 모든 컴퓨터는이 주소를 자체 주소로 사용하지만 실제 IP 주소처럼 다른

ko.eyewated.com

 

 

https://wildeveloperetrain.tistory.com/182

 

루프백 ip란? (127.0.0.1 / localhost)

루프백(Loopback) ip란? 루프백 ip, 루프백 주소는 네트워크상에서 자신을 나타내는 가상적인 주소이며, 자신에게 다시 네트워크 입력이 들어온다고 하여 루프백(Loopback) 주소라고 합니다. IPv4에서의

wildeveloperetrain.tistory.com