localhost 127.0.0.1은 어떻게 작동합니까?


17

나는 이것과 관련된 기사를 찾았지만 충분하지 않았다. localhost작동 방식을 알고 싶어하며 여러 다른 시스템에서 왜 동일한가?

파일 localhost에서 웹 사이트를 사용 host하여 웹 사이트를 차단할 때 웹 사이트에 대한 액세스를 어떻게 차단합니까?


2
미안하지만 질문의 두 번째 줄에서 완전히 잃어 버렸습니다 ... 무슨 뜻입니까?
Windos

1
@Windos, "127.0.0.1 www.blah.com"과 같은 호스트 파일에 항목을 추가하면 해당 사이트가 로컬 호스트로 리디렉션됩니다 (IE8과 작동하는 데 사용됨)
tzup

답변:


23

여기서는 Windows 케이스에 대해 이야기하지 않겠습니다. 약간 다르기 때문에 다음과 같이 말하겠습니다. 모든 유닉스 계열 운영 체제에는 두 개의 네트워크 장치가 있습니다.

  • 루프백 장치
  • 이더넷 장치

첫 번째는 순전히 "가상"입니다. 보이지 않는 이더넷 플러그와 같습니다. 두 번째는 컴퓨터의 이더넷 플러그와 관련이 있습니다.

여기에 이미지 설명을 입력하십시오

루프백 인터페이스는 무엇을합니까? 루프백으로 보내는 모든 트래픽이 돌아옵니다.

이더넷 장치가 IP 주소 (예 : 192.168.1.20)를 얻는 것처럼 루프백 장치에도 IP 주소 (예 : 127.0.0.1)가 있습니다. 더 쉽게 만들기 위해 액세스 할 수도 있습니다 localhost.

일반적인 유닉스 /etc/hosts파일을 보면 127.0.0.1이 "localhost"에 매핑되어 있음을 알 수 있습니다. 따라서 "localhost"를 입력 할 때마다 컴퓨터는 127.0.0.1을 호출하는 것을 알게됩니다.

이것이 애플리케이션을 "차단"할 수있는 이유입니다. 컴퓨터가 Microsoft에 데이터를 보내지 않기를 원한다고 가정 해 봅시다. 그런 다음 모든 요청 microsoft.com을 127.0.0.1로 리디렉션 할 수 있습니다. 연락을 시도 할 때마다 microsoft.com고장이 발생합니다.

* 실제로 하드웨어 이더넷 포트가있는 모든 시스템


'dows에서 DNS 하위 시스템은 localhost를 127.0.0.1로 확인하고 127.0.0.1로 트래픽은 인터페이스로 이동하지 않으며 네트워크 스택은 다시 루프됩니다 (실제로는 Unix와 정확히 동일하지만 가상 인터페이스는 없습니다) 프로세스의 표현으로).
jcrawfordor

Microsoft Loopback Adapter를 설치할 수 있지만 완전히 같은 것은 아닙니다.
slhck

요즘 많은 OS가 0.0.0.0을 지원하므로 대신 사이트 차단에 사용하십시오. 루프를 피하십시오 ...
Tamara Wijsman

8

인터넷 프로토콜 (IP) 주소는 네 가지 기본 범주 중 하나에 속합니다.

  1. 전 세계의 다른 컴퓨터와 통신하는 데 사용되는 주소
  2. 특정 회사 나 네트워크 내에서 컴퓨터와 통신하는 데 사용되는 주소
  3. 네트워크상의 컴퓨터간에 정보를 브로드 캐스트하는 데 사용되는 주소
  4. 컴퓨터와 대화 할 수있는 주소입니다.

합의에 따라 127.0.0.1은 해당 범주의 마지막에 해당하는 주소 중 하나입니다.

인간으로서 우리는 IP 번호를 잘 기억하지는 않지만 superuser.com, www.google.com 및 기타 유사한 이름을 기억하는 데 아무런 문제가 없습니다. 인터넷이 작을 때 (매우 작음) 사람들은 인터넷에있는 다른 사람들과 "호스트"파일을 공유하여 숫자를 기억할 필요가 없었습니다. 해당 호스트 파일에는 IP 주소 쌍과 하나 이상의 호스트 이름이 포함되어 있습니다. 누군가 이름으로 호스트에 액세스하려고 시도 할 때 컴퓨터 소프트웨어는 hosts 파일에서 호스트를 검색 할만큼 충분히 알고있었습니다. 그 이후로 인터넷은 너무 커져서 이제는 이전 스타일 호스트 파일을 사용하는 것 외에도 이름을 IP 번호로 확인하기 위해 DNS (Domain Name System)를 사용합니다. 대부분의 컴퓨터는 먼저 hosts 파일에서 이름을 찾은 다음 DNS가 실패하면 이름을 찾도록 설정됩니다.

이제 배경 지식을 갖추 었으므로 다음과 같이 작동합니다 (일반적으로).

호스트 파일에이 항목을 추가하면 컴퓨터가 www.foo.com을 너무 조회하려고 할 때마다 www의 인터넷 주소라고 말했기 때문에 IP 주소 127.0.0.1에서 해당 사이트에 도달하려고 시도합니다. foo.com. 127.0.0.1을 사용하면 컴퓨터와 대화 할 수 있으므로 브라우저에서 127.0.0.1로 이동하면 컴퓨터의 웹 서버에 연결하려고합니다. 127.0.0.1 대신 2.3.4.5를 입력했다면 www.foo.com을 열 때 주소 2.3.4.5로 컴퓨터에 연결을 시도했을 것입니다.

127.0.0.1 localhost
127.0.0.1 www.foo.com
127.0.0.1 foo.com

호스트 파일을 이와 같은 용도로 사용하는 것에 대한 나쁜 점은 일단 호스트 파일에 항목을 추가하면 해당 정보를 최신 상태로 유지할 책임이 있다는 것입니다. 호스트 파일에 항목을 넣지 않으면 컴퓨터는 DNS를 사용하여 IP 주소를 찾은 다음 해당 IP 주소를 사용하여 서버에 연결합니다.

그것에 대한 좋은 점은 누군가가 컴퓨터의 호스트 이름으로 만 www.foo.com과 대화하는 것을 허용하지 않으려면 호스트 파일에 항목을 추가하면 해당 키워드가 발생하지 못하게 할 수 있습니다 (키워드-). 어떤 목적 으로든 (호스트 이름이 아닌) 특정 사이트에 접속하는 것을 막는 것이 목표라면 방화벽을 올바르게 사용하는 것과 같은 일이 발생하지 않도록하는 더 좋고 안정적인 방법이 있습니다.


요즘 많은 OS가 0.0.0.0을 지원하므로 대신 사이트 차단에 사용하십시오. 루프를 피하십시오 ...
Tamara Wijsman

7

Localhost 또는 127.0.0.1은 단순히 로컬 컴퓨터에 내장 된 '이름'입니다.

즉, 127.0.0.1은 "루프백 (loopback)"이라고하며, 이는 단지 기계를 가리키는 포인터 일뿐입니다. 정의에 의해 localhost로 쓸 수도있는 예약 된 IP 주소입니다.

이것의 목적은 신호를 바깥쪽으로 보낸 다음 다시 돌려서 같은 컴퓨터에서 신호를 읽을 수 있도록하여 컴퓨터와 대화 할 수 있도록하는 것입니다.

컴퓨터에서 서버를 실행 중이라고 가정하십시오. 서버에 액세스하려면 서버에 요청을 보내야하고 (127.0.0.1로 패킷을 보내야 함) 서버가 서버를 읽어야합니다 (시스템은 패킷을 127.0.0.1의 로컬 시스템 (서버 소프트웨어에서 읽음).


5

TCP / IP 가이드 에서 프레젠테이션 이 매우 훌륭하다는 것을 알게되었습니다.

일반적으로, TCP / IP 어플리케이션이 정보를 보내려고 할 때, 그 정보는 IP 계층으로 IP 계층으로 이동 하여 IP 데이터 그램에 캡슐화됩니다 . 그런 다음이 데이터 그램은 장치의 물리적 네트워크의 데이터 링크 계층으로 전달되어 IP 대상으로가는 도중에 다음 홉으로 전송됩니다.

그러나 루프백 기능을 위해 하나의 특수한 주소 범위가 별도로 설정되어 있습니다. 범위는 127.0.0.0 ~ 127.255.255.255입니다. 호스트가 127로 보낸 IP 데이터 그램. x . x . x 루프백 주소는 전송을 위해 데이터 링크 계층으로 전달되지 않습니다. 대신 IP 레벨에서 소스 장치로 "루프 백"됩니다. 본질적으로 이것은 정상적인 프로토콜 스택의 "단락"을 나타냅니다. 데이터는 장치의 계층 3 IP 구현에 의해 전송 된 후 즉시 수신됩니다.


또한 Rutgers에는 일반적인 호스트 간 통신 그림이 포함 된 네트워킹 과정 이 있습니다 .

호스트 간 정상적인 통신

그리고 이와 루프백 데이터 흐름 :

                                                    루프백 데이터 흐름


4

질문의 두 번째 부분에서는 주소가 127.0.0.1 인 호스트 파일에 웹 사이트의 호스트 이름을 넣으면 DNS를 사용하지 않고 브라우저에 주소를 입력하면 올바른 주소를 찾는다는 것을 의미합니다 호스트 파일에서 먼저 로컬 호스트로 확인하고 웹 사이트 주소로 이동하는 대신 시스템과 대화하기 시작하여 웹 사이트가로드되지 않습니다.


요즘 많은 OS가 0.0.0.0을 지원하므로 대신 사이트 차단에 사용하십시오. 루프를 피하십시오 ...
Tamara Wijsman
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.