네트워크
19. DNS(2)
YJH3968
2021. 7. 7. 15:07
728x90
1. Name Resolution Tool
- nslookup + host name을 command line에 입력하면 요청을 처리하기 위해 어떤 server를 사용했는지, 그리고 resolution의 결과가 출력된다.
- 만약 twitter.com의 IP 주소를 알고 싶은 경우 nslookup twitter.com을 입력하면 A record를 반환한다.
- 상호작용하는 nslookup session을 시작하고 싶은 경우 nslookup만 입력하고 이후 여러 요청을 병렬적으로 할 수 있다. 만약 server + 주소를 입력하면 default name server 대신 그 server를 이용하게 할 수 있다. 또한 type=MX 또는 AAAA를 통해 resource record type을 변경할 수 있다.
2. Public DNS Server
- ISP는 항상 recursive name server에 대한 접근을 service의 일부로 제공하는데, 이 name server는 컴퓨터가 Internet의 다른 장치와 통신하기 위해 필요하다.
- 그러나 대부분의 사업이 자신만의 DNS server를 운영하고, 최근에는 내부 호스트의 이름을 해석하기 위해 이 server가 필요하게 되었다.
- 몇몇 Internet 단체들은 public DNS server를 운영하는데, 이는 아무나 무료로 사용할 수 있는 name server이다.
- 이를 이용해 name resolution 문제를 해결할 수 있다.
- 오랫동안 public DNS server는 한 시스템 운영자에서 다른 시스템 운영자로 상속됐었다. 예전에는 가장 흔히 쓰이는 public DNS server는 Level 3 통신이 운영했다.
- Level 3는 엔드 유저 대신 소비자를 다루는 다른 ISP와 network의 연결을 판매하는 사업을 했다.
- Level 3의 public DNS server에 대한 IP 주소는 4.2.2.1 ~ 4.2.2.6이다.
- 이는 공식적으로 인정하거나 홍보하지 않았다.
- Google의 public DNS는 IP 주소 8.8.8.8과 8.8.8.4를 가진다.
- 대부분의 public DNS server는 anycast를 통해 전 세계에서 이용 가능하다.
- 많은 다른 단체들도 public DNS server를 제공하지만 위의 두 선택지에 비해 기억하기 어렵다.
- 잘못된 응답으로 외부 DNS 요청을 hijacking하면 사용자를 악성 사이트로 쉽게 redirect할 수 있기 때문에 name server가 평판이 좋은 회사에서 실행되는지 확인해야 하고 가급적 ISP에서 제공하는 name server를 이용해야 한다.
- 대부분의 public DNS server는 ICMP echo 요청에 응답하기에, ping을 이용해 인터넷 연결을 시험해 보는 것도 좋다.
3. DNS Registration and Expiration
- Domain name은 global system에서 유일해야 한다.
- registrar은 각 단체나 개인에 개별적인 domain name을 할당하는 단체이다. registrar 중 가장 유명한 단체는 Network Solutions Inc이다.
- Internet 규모가 커짐에 따라 경쟁을 위한 시장 수요가 충분했고, 그래서 미국 정부와 Network Solutions Inc는 다른 기업들이 domain name을 판매하는 것을 허가했다.
- domain name을 등록하기 위해서는 registrar에 계정을 만들고 web UI를 사용해 domain name이 사용 가능한지 확인한 뒤 domain name을 가지게 되면 registrar의 name server 혹은 자신의 server를 그 domain의 authoratative name server로 할지 결정한다.
- domain name의 등록은 고정된 시간 동안만 유효해 몇 년마다 지불을 해야 한다. 그렇지 않으면 domain name이 만료되어 다른 사람이 그 domain name을 등록할 수도 있다.
4. Host File
- DNS가 전세계적으로 사용 가능한 기술이 되기 오래 전, 숫자로 된 network 주소를 host file을 통해 특정 단어와 연관지었다.
- host file은 각 line에 network 주소와 host name이 있는 file이다.
- ex) 1.2.3.4 webserver
- 예전 기술이지만 아직도 스마트폰이나 태블릿을 포함한 운영 체제는 host file을 가지고 있다. 이는 loopback 주소 때문인데, loopback 주소란 자기 자신을 가리키는 주소를 말한다.
- loopback 주소로 traffic을 전송하면 모든 network 인프라 자체를 우회하고 traffic은 node를 벗어나지 않는다.
- IPv4 loopback 주소는 127.0.0.1이고 host file은 '127.0.0.1 localhost'을 가지고 있다. 대부분 IPv6에 대한 loopback 주소로 뒤에 ::1 localhost가 붙는다.
728x90