일반적으로 우리는 보려는 웹 사이트의 주소를 입력하지만 직접 IP 주소를 대신 사용하면 웹 서버가 실제로 “알고 있습니까?” 오늘날의 수퍼 유저 Q & A 게시물에는 혼란스런 독자의 질문에 대한 답변이 있습니다.
오늘의 질문 및 답변 세션은 커뮤니티 중심의 Q & A 웹 사이트 그룹 인 Stack Exchange의 하위 부문 인 SuperUser에 의해 제공됩니다.
Cory M. Grenier (Flickr)의 사진 제공.
질문
수퍼 유저 리더 Joseph A.는 웹 서버가 사용자가 직접 IP 주소 액세스를 사용하는지 여부를 어떻게 알 수 있는지 알고 싶어합니다.
일부 웹 서버는 IP 주소를 사용하여 액세스하면 직접 IP 주소 액세스가 허용되지 않는다는 오류를 반환합니다. 나는 이것이 어떻게 작동하는지 궁금 해왔다.
브라우저가 항상 IP 주소를 확인하고 연결합니까? 직접 IP 주소 액세스는 DNS를 완전히 건너 뜁니다. 원격 서버는 DNS를 건너 뛴다는 것을 어떻게 알 수 있습니까?
직접 IP 주소 액세스를 사용하는지 웹 서버는 어떻게 알 수 있습니까?
대답
수퍼 유저 기고자 iAdjunct는 다음과 같은 답변을 제공합니다.
그것이 어떻게 아는지에 대한 질문에 답하기 위해서는 브라우저가 웹 서버를 보내는 것과 관련이 있습니다. 시스템은 항상 시스템을 IP 주소로 확인하지만 브라우저는 액세스하려는 URL을 HTTP 헤더로 보냅니다.
다음은 온라인에서 찾은 샘플 헤더입니다. Windows에서 Firefox를 사용하고 주소 표시 줄에 apple.com을 입력 한 것처럼 수정되었습니다.
IP 주소를 사용한 경우 헤더는 다음과 같습니다.
둘 다 소켓을 통해 동일한 IP 주소로 전송되지만 브라우저는 웹 서버에 액세스 한 내용을 알려줍니다. 왜? IP 주소가 동일한 웹 서버는 여러 웹 사이트를 호스팅하고 각각에 대해 다른 페이지를 제공 할 수 있습니다. IP 주소로 페이지를 원하는 사람을 모두 구별 할 수는 없지만 모두 같은 페이지를 가지고 있기 때문에 HTTP 헤더로 구별 할 수 있습니다.
설명에 추가 할 것이 있습니까? 주석에서 소리를냅니다. 기술에 정통한 다른 Stack Exchange 사용자의 답변을 더 원하십니까? 여기에서 전체 토론 스레드를 확인하십시오.