Names and Addresses

저번시간에 배운 ping 명령어로 google.com에 메시지를 보내보았다. 그러면 아래와 같은 메시지를 받게되는데, 과연 모두가 같은 메시지를 (같은 아이피를) 받게 될까?

$ ping -c3 google.com

PING google.com (172.217.25.238): 56 data bytes
64 bytes from 172.217.25.238: icmp_seq=0 ttl=53 time=34.842 ms
64 bytes from 172.217.25.238: icmp_seq=1 ttl=53 time=41.744 ms
64 bytes from 172.217.25.238: icmp_seq=2 ttl=53 time=41.344 ms

--- google.com ping statistics ---
3 packets transmitted, 3 packets received, 0.0% packet loss
round-trip min/avg/max/stddev = 34.842/39.310/41.744/3.164 ms

정담은 No 다. 구글은 여러개의 ip주소를 가지고 있기때문이다. 그런데 어떻게 우리는 도메인을 입력했는데 IP를 응답받을 수 있었을까?

DNS

인터넷을 사용할때 우리는 IP주소를 사용하지 않는다. google.com과 같은 hostname을 사용한다. 이런 hostname을 IP주소로 번역해주는것이 DNS(도메인 네임 시스템)다. 만약 DNS가 다운된다면 우리는 hostname으로 웹사이트에 접속할 수 없다.

~~ 어려운 내용~~

host 명령어로 hostname에 딸려있는 아이피들을 볼수 있다. 더많은 기능을 알고싶다면 host man 참조 해도 뭔지모르겠다..!(영어라서가 아니라 진짜 뭔내용인지 모르겠다. 용어를 1도모르니 ㅡㅡ...)

host naver.com
naver.com has address 125.209.222.141
naver.com has address 202.179.177.21
naver.com has address 125.209.222.142
naver.com has address 202.179.177.22
naver.com mail is handled by 10 mx1.naver.com.
naver.com mail is handled by 10 mx3.naver.com.
naver.com mail is handled by 10 mx2.naver.com.

//A record
host -t a naver.com
naver.com has address 125.209.222.141
naver.com has address 202.179.177.21
naver.com has address 125.209.222.142
naver.com has address 202.179.177.22

//MX record
host -t mx google.com
google.com mail is handled by 30 alt2.aspmx.l.google.com.
google.com mail is handled by 40 alt3.aspmx.l.google.com.
google.com mail is handled by 10 aspmx.l.google.com.
google.com mail is handled by 50 alt4.aspmx.l.google.com.
google.com mail is handled by 20 alt1.aspmx.l.google.com.

dig명령어를 사용하면 좀더 많은 정보를 얻을 수 있다.

dig www.udacity.com

; <<>> DiG 9.8.3-P1 <<>> www.udacity.com
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2298
;; flags: qr rd ra; QUERY: 1, ANSWER: 4, AUTHORITY: 0, ADDITIONAL: 0

;; QUESTION SECTION:
;www.udacity.com.        IN    A

;; ANSWER SECTION:
www.udacity.com.    3600    IN    CNAME    apollo-mesos-elb-berlioz2-prod-885022263.us-west-2.elb.amazonaws.com.
apollo-mesos-elb-berlioz2-prod-885022263.us-west-2.elb.amazonaws.com. 60 IN A 34.209.170.130
apollo-mesos-elb-berlioz2-prod-885022263.us-west-2.elb.amazonaws.com. 60 IN A 34.211.38.53
apollo-mesos-elb-berlioz2-prod-885022263.us-west-2.elb.amazonaws.com. 60 IN A 52.32.68.151

;; Query time: 14 msec
;; SERVER: 210.220.163.82#53(210.220.163.82)
;; WHEN: Sun Jul 16 02:00:49 2017
;; MSG SIZE  rcvd: 160

cname이란?

A 레코드의 경우 특정 IP 를 지정해야 하지만 모든 웹 서비스가 1:1 로 IP 주소가 지정되기 어렵다. 또한 다양한 주소가 접근하는 서비스가 동일한 경우라면 각 도메인마다 하나씩 IP 주소를 할당해주는 것도 비효율적이다. 이경우 해당 도메인 주소가 가지는 별명을 부여하여 해당 도메인이 어떤 주소로 접속하면 되는지 확인해주는 것이다. CNAME 이란 Canonical Name Record 의 약자이다. 예를 들어 웹서비스, FTP 서비스 등을 해주어서 www.mydomain.com 과 ftp.mydomain.com 의 주소를 가진다고 할 때 두개의 다른 도메인을 가지지만 실제로 접속하는 물리적인 서버는 동일하다고 할 때 두개의 A 레코드를 동일한 IP 주소로 부여할 수 있을 것이다. 그러나 관리적 차원에서 IP 를 변경하게 된다면 그때마다 두개의 IP 주소를 변경해주면 상당히 번거롭기 때문에 server.domain.com 이란 서버의 이름을 가진 서버에 별칭을 모두 주면 server.domain.com 의 IP 주소만 변경하면 www 와 ftp 도메인 주소 모두 별도의 DNS 변경을 해주지 않아도 그대로 서비스를 사용할 수 있게 된다.

AAAA란?

인터넷의 발달로 인해 기존에 사용하던 IPv4 형식의 IP주소 (xxx.xxx.xxx.xxx)의 개수가 부족할 수 있게 됨에 따라, 이에 대한 대안으로 새로운 IPv6라는 IP주소 형식이 제안되었습니다. 이는 128비트 길이를 가지며 그 형식은 네 자리의 16진수가 콜론으로 구분되어 8번 나오는 형태입니다.

0123:4567:89ab:cdef:0123:4567:89ab:cdef

따라서 DNS서비스에서도 IPv6를 다루기 위한 레코드가 필요하게 되었고, 이를 다루는 레코드가 AAAA 레코드입니다. (기능과 역할은 A레코드와 동일하다.)

참조

NS란?

네임서버(NS) 레코드는 도메인의 네임서버 정보를 나타냅니다. 도메인에 대해 어떤 서버가 DNS 정보를 전달할지 결정합니다. 일반적으로 도메인에 주 이름 서버 및 보조 이름 서버 레코드를 가지게 됩니다.

참조

DNS is Distributed with Caching

distribute 배포하다.

캐시(Cache)란?

캐시란 데이터를 임시로 저장해두는 장소를 말한다. 이를테면, 사용자가 요구한 웹 페이지는하드디스크내의 캐시 디렉토리에 저장된다. 이런 방법으로, 사용자가 최근에 열어본 페이지로 다시 돌아왔을 때브라우저는 시간을 줄이고 네트웍에 추가 부담을 덜기 위해, 원래의 서버에서 정보를 찾아오는 대신에 캐시로부터 데이터를 가져오는 것이다. 컴퓨터는 운영상의 수준에 따라 몇가지 캐시들을 유지하는데, 캐시 메모리나 디스크 캐시 등이 바로 그것이다. 또한 캐시는 같은 정보를 여러 개의 서버에 분산시켜놓고 주기적으로 최신의 것으로 갱신시키는 방법(TTL?)을 통해 인터넷정보에 대해서도 구현될 수 있다.

IPv4 vs IPv6

참고

ipv4 눈 우리가 흔히만나게 되는 0-255숫자로 이루어진 4개의 숫자조합이다. 241.10.127.53 과 같은 주소다. 32bit 길이.

decimal dotted quad 241 10 127 53
binary 1111/0001 0000/1010 0111/1111 0011/0101
hexadecimal F/1 0/A 7/F 3/5

IPv6는 128비트 길이다. IPv4보다 복잡한 구조를 가진다.

도대체 뭐가뭔지 도대체뭐가뭔지

results matching ""

    No results matching ""