인터넷 연결과정 및 hosts 파일 설정하기
도메인 네임으로 연결시 접속 순서 알아보기
지난 글 중에서 데이터베이스 연결할 때 조금 더 빠른 속도로 사용할 수 있는 팁으로 데이터베이스 접속 주소를 IP주소로 바꾸는 방법에 대해서 작성한 적이 있습니다.
관련글 : 데이터베이스 접근 속도 빠르게 하기
그와 더불어서 hosts 파일을 통해서 설정하는 방법도 소개를 하였는데, 이 hosts 파일의 경우에는 상당히 쓰임새가 많습니다. 저 같은 경우는 홈페이지 테스트 용도로 사용을 할 때 마치 자체 네임서버처럼 사용을 하고 있습니다. 예를 들면, 가상의 웹 사이트를 구성하고자 할 때, hosts 파일 내에서 접속 주소를 임의로 설정해 놓고 그 설정된 주소로 접속을 합니다. 제가 사용하고 있는 hosts 파일을 예를 들어보면 아래의 화면과 같습니다.
이해를 돕기위해 몇가지만 설명드리자면,
127.0.0.1로 설정된 도메인 네임은 두가지 입니다. localhost와 mydomain.com인데 실제로 해당 컴퓨터로 브라우저 주소창에 저 두개의 주소를 입력해면 127.0.0.1로 접속한 것과 같은 효과를 볼 수 있습니다.
그리고 하단에 192.168.0.14 (해당 컴퓨터의 IP주소)로 된 도메인 네임은 여러개가 있습니다. 해당 아이피주소로 여러개의 도메인 네임을 설정한 이유는 임의로 도메인을 인식시켜 IIS에서 바인딩 설정을 통해 각각 호스트헤더 주소로 설정할 수 있기 때문입니다.
이런 방식으로 운영하면 실제 서비스는 불가능 하지만, 해당 컴퓨터에서 접속하는 경우 설정된 IP주소로 접속하기 때문에 테스트 용도로 사용하기 아주 적합니다.
실제로 블로그 포스팅을 하면서 일일이 도메인을 구매할 수 없기 때문에 이렇게 hosts 파일을 건드려서 접속 주소를 변경한 적이 있습니다.
한마디로 어떤 주소로 접속하는 과정은 크게 다음과 같이 진행된다고 보시면 됩니다.
1. IP 주소를 직접 입력하는 경우 |
이 경우는 두말할 나위 없이 바로 해당 IP로 접속이 됩니다. 지난 글 중에도 도메인에 대해서 이해하기 위한 글을 작성 하였는데 거기서 들었던 예 입니다.
관련글 : 도메인에 대해서 이해하기 (도메인 형태)
위의 접속 주소가 어딘지 아시나요? 바로 대한민국 사람이면 누구나가 알고 있는 포털 NAVER의 IP주소 입니다. 실제로 링크를 타고 들어가 보면 네이버로 접속되는 것을 확인할 수 있습니다.
IP주소를 직접 입력하는 것 만큼 빠른 접속속도를 보이는 것은 없습니다. 하지만, 일일이 숫자로 된 주소를 외워야 하는데, IP주소를 소유한 주인 말고는 그러기 힘듭니다. 때문에 관리자나 일부 몇몇 사용자만 IP주소를 사용합니다.
2. 도메인 네임을 사용하는 경우 |
이제 이 경우가 대부분의 사용자들이 사용하는 경우입니다.
브라우저를 통해 도메인네임(접속주소)를 입력하게 되면 아래 그림과 같은 프로세스를 가지게 됩니다.
접속과정에서 로컬 컴퓨터의 hosts 파일을 항상 가장 먼저 확인합니다. 이 과정을 통해 우선적으로 접속 시킬 것인지 확인하는 과정이지요. 만약 로컬 컴퓨터에 hosts 파일이 없다면 DNS 서버를 검색합니다.
현재는 네임서버들이 잘 되어있고, 속도도 빠르기 때문에 일반적인 웹 사이트에 접속하는 경우라면 속도의 차이를 느끼기 힘듭니다. 그럼 이 hosts 파일은 왜 검색을 하느냐하면 일종의 즐겨 찾기라고 생각하면 됩니다. DNS 서버를 검색하기 전 일종의 규칙처럼 접속주소를 설정하고 접속하게 만들어 줍니다.
요즘엔 위에 적었다 시피 속도의 차이가 전혀 없는 것과 마찬가지이기 때문에 실질적인 hosts파일의 이점은 무엇이냐하면 바로 접속 주소를 우회할 수 있다는 장점이 있습니다.
아까 저처럼 임의로 접속주소를 설정해서 내 홈페이지로 사용할 수 있습니다. 조금 더 극단적으로 이야기하면 내 컴퓨터에서만 www.naver.com으로 접속하면 내 홈페이지가 나오도록 할 수 있습니다.
hosts 파일을 설정하는 방법은 아주 간단합니다. 아까 위에서 보여드렸던 화면을 다시 보면서 이야기 하도록 하겠습니다.
일단 이 hosts 파일은 다음과 같은 경로에 존재 합니다. C:\Windows\System32\drivers\etc (윈도우 설치 경로에 따라 약간씩 변동이 있을 수 있습니다.)
설정 방법은 IP주소 접속할주소 형태로 입력하면 됩니다. 예를 들어 192.168.0.14 www.naver.com 처럼요.
만약, 일시적으로 사용을 안하는 경우에는 그 줄 맨 앞에 #을 붙여 줍니다. #을 붙여주면 주석처럼 취급하여 해당 줄은 인식하지 않습니다.
좀 더 정확히는 해당 줄에 # 뒤에 있는 내용은 모두 실제 접속과는 상관없는 주석 처리를 한다는 뜻입니다.
저 같은 경우야 테스트를 하기위해서 사용하였지만, 좀 더 일반적으로 많이 사용하는 경우는 "인증"을 우회하거나 네임서버가 제대로 작동하지 않아서 접속이 불가능 한 경우에 주로 사용합니다.
"인증"과 관련된 부분은 불법적인 내용이 대부분이므로 논외로 하고 다루지는 않을 예정이지만 일반적으로 인증을 우회하기 위한 하나의 수단으로 사용한다고 보시면 됩니다.