IP address (Internet Protocol address)
컴퓨터가 인터넷(네트워크)을 통해서 통신을 하기 위해서는 반드시 "IP 주소"를 가져야 한다.
두 대의 컴퓨터(서버-클라이언트)가 서로 통신할 때, 클라이언트는 웹브라우저에 서버의 ip 주소를 입력하여 접속할 수 있다.
서버는 응답하기 위해서 요청한 컴퓨터의 ip를 알아야 한다. 클라이언트가 정보를 요청할 때 자신의 주소를 담아서 보낸다.
Host
네트워크(인터넷)에 연결된 각각의 장치(컴퓨터)들을 host라고 한다.
hosts 파일
클라이언트가 서버의 ip 주소를 기억해서 매번 접속하기는 힘들다. ip주소에 도메인 네임을 설정해서 좀 더 쉽게 접속할 수 있다.
모든 운영체제에는 hosts라는 파일이 있다. hosts 파일에는 "www.examkple.com의 ip주소는 93.184.216.34이다."라는 정보를 저장해 두고, 사용자가 www.example.com이라고 접속했을 때, hosts 파일의 내용을 읽어서 컴퓨터는 93.184.216.34 로 접속하게 된다.
hosts 파일을 이용해서 도메인 네임 시스템을 통하지 않고도 자주 사용하는 사이트나 자신만 사용하는 사이트의 도메인 주소 같은 호스트의 이름을 부여할 수 있다.
목표 : hosts 파일을 운영체제 별로 변경해서 도메인을 변경해보자
운영체제별 hosts 파일의 위치 검색
windows hosts file location
위키피디아에 잘 정리되어 있다.
> windows
SystemRoot는 C:\Windows 디렉토리이다. C:\Windows\System32\drivers\etc\hosts
hosts 파일은 중요한 파일이므로 관리자 권한이 필요하다. 편집 툴(메모장)을 우클릭> 관리자 권한으로 실행
> MAC
terminal에서 sudo nano /etc/hosts로 hosts 파일 편집 (vim 에디터 사용해도 됨. sudo 명령어 : 관리자 권한으로 명령 실행하겠다.)
파이썬으로 웹서버를 구동시킨 환경이다. 웹브라우저에서 172.30.1.4:8000 주소를 입력해서 웹서버에 접근할 수 있다.
내가 만든 웹사이트를 web1.com 도메인 네임으로 접속할 수 있도록 hosts 파일을 수정해보자
실제로 web1.com 은 내 도메인이 아니지만 '이 컴퓨터 안에서'는 우선권이 DNS 시스템보다 높기 때문에, 사용자가 웹브라우저에서 web1.com 사이트로 접속을 요청하면 컴퓨터는 hosts 파일을 우선적으로 확인해서 내 서버 ip주소로 요청을 전달한다.
웹브라우저에서 web1.com:8000로 웹서버에 잘 접속되는 것을 확인할 수 있다.
※ hosts 파일에 port 설정 불가능
검색 결과
호스트 파일은 DNS 확인을 위한 것입니다. DNS는 이름을 IP 주소로 확인하며 두려워하는 포트와 아무 관련이 없습니다. 포트를 재 지정하려면 호스트 파일과 함께 다른 것을 사용해야 합니다 (대상 포트를 변경하여 TCP 헤더를 조정하십시오).
iptables 를 이용해야 한다.
sudo iptables -t nat -A OUTPUT -p tcp --dport 80 -d 157.166.226.25 -j DNAT --to-destination 127.0.0.1:3000
'코딩공부 > WEB2 - Domain Name System' 카테고리의 다른 글
[9] DNS record와 CNAME 레코드의 이해 (0) | 2019.09.16 |
---|---|
[8] 나의 도메인네임 갖기 - freenom.com (0) | 2019.09.16 |
[7] nslookup (0) | 2019.09.16 |
[6] 도메인 이름 등록 과정과 원리 (0) | 2019.09.16 |
[5] 도메인 이름의 구조 (0) | 2019.09.15 |