본문 바로가기
  • Trace
서버 및 해킹 환경 등

DNS - 네임 서버 구축

by seleuchel 2021. 2. 14.

🗨️ 원래 노트에 정리하려 했는데, 음. 노트가 너무 많아져서

빠르고 쉽게 보기 위해서는 역시 블로그 정리가 제격이라 생각했다. 필요할 때 바로 볼 수 있고

 

교수님이 DNS 서버도 안 구축해 봤냐고 닦달을 하셨따...

설 연휴에 할 것도 없으니 서버나 만들어봐야겠다 하고 만들어 보았다.

간단하다.

질문

  • 네임서버 n1, n2 의 차이?보통 n1 네임서버에 쿼리 요청을 주로 처리함.가용성을 유지하기 위해서 n1, n2 을 다른 네트워크 스위치에 배치 혹은 아예 물리적으로 배치하기도 함.
  • 그런데, n1 네임서버가 갑자기 처리를 못하면 네임서버가 n1을 대신하여 쿼리를 처리한다.
  • 둘 다 같은 네임서버고, 음.. 복제된 예비용 네임서버라고 보면 될 듯.

기본 지식

  • DNS
  • 네임서버 ( Nameserver)
  • DNS 질의 과정

실습

이 분 것을 참고하여 만들었다. 깔끔하게 잘 정리해두셨다.

blog.lael.be/post/6308

 

우분투 네임서버 구축하기 (Install Ubuntu bind9 nameserver)

반드시 네임서버를 구축해야 할 경우가 아니라면, 직접 구축하지 말고 다음의 글로 이동하여 무료 서비스를 이용해 보세요. 무료 DNS 서비스 모음 도메인 네임서버란? Domain Name Server 는 “네임서

blog.lael.be

 

1. 18.04 LTS (기억이 안 남) 우분투 2개를 구성

하나는 네임서버 하나는 클라이언트

Name server : 192.168.175.128

2. bind9 설치

seleuchel@ubuntu:~$ sudo apt install bind9

이 bind9를 이용해 네임서버를 만들 것.

3. /etc/bind/named.conf.options 수정

여기 아래 빨간 박스 부분을 추가해 주었음.

  • dnssec-validation auto :
  • auth-nxdomain no :
  • listen-on-v6 :
  • recursion yes : 내 db에 없는 질의도 응답을 해 주겠음
  • allow-transfer :
  • forwarders :
  • forward only :
  • allow-query : 질의 허용 가능한 ip(도메인)

4. /etc/bind/named.conf.local 수정

여기 빨간 박스 부분을 추가함. 나는 naver.com을 다른 ip로 지정하기 위해 이렇게 작성함!

5. /etc/bind/db.naver.com 작성

네이버 도메인에 관련된 db를 작성함.

내용을 이렇게 채워 넣는다.

참, 나는 추후 실습을 위해 naver.com에 대한 질의 결과를 네임서버와 동일한 IP로 지정해주었다.

  • $TTL 86400
  • @
  • IN
  • SOA
  • localhost.
  • root.localhost.
  • Serial
  • Refresh
  • Retry
  • Expire
  • Negative Cache TTL
  • NS
  • A
  • blog IN A 192.168.175.128

6. 문법 검사

seleuchel@ubuntu:~$ sudo named-checkconf 
seleuchel@ubuntu:~$ sudo named-checkzone naver.com /etc/bind/db.naver.com

요러케 뜨면 잘 된 것.

7. 서비스 시작

seleuchel@ubuntu:~$ sudo service bind9 start

 

자, 이제 테스트를 해 봅시다.

 

테스트 환경 구성하기

1. 아파치 서버 구성

seleuchel@ubuntu:~$ sudo apt install apache2 
seleuchel@ubuntu:~$ sudo service apache2 start 
// 그리고 /var/www/html/index.html 을 적절하게 수정해주었음

수정한 index.html

2. [client] /etc/resolv.conf에 네임서버 설정하기

네임서버를 추가해주었다.

seleuchel@ubuntu:~$ sudo service networking restart

수정 후 명령을 입력하면, 네임서버가 우리가 만든 네임서버로 지정된 것을 확인할 수 있다.

클라이언트에서 테스트 하기

1 .[client] nslookup 결과

naver.com → 192.168.175.128

아까 db.naver.com에서 지정한 IP로 응답이 왔다!

2. [client] naver.com 접속 결과

네이버는 이제 없어! 내가 먹어버렸거든!

네이버로 접속하면 이렇게 뜬다!

아까 db에서 설정했던 blog.naver.com도 마찬가지!

 

### /etc/resolv.conf 서버 시작 시 초기화되는 경우 

https://growingsaja.tistory.com/162

 

 

기타 삽질

  • 맨 처음에 client로 https://naver.com을 접근해버려서 네임서버 수정 후, naver.com로 접근 시에 db에서 지정한 IP에서 제공하는 웹페이지가 보이지 않았다! 
  • 그래서 dns 캐시 제거 등을 모두 하였으나, 해결하지 못했었는데, firefox 브라우저의 Library의 history를 다 지우고 다시 접근하니 성공적으로 해결할 수 있었다. 굿굿
  • 노션에 썼다가 티스토리로 옮기는 시간이 실습 시간보다 더 길었음...

'서버 및 해킹 환경 등' 카테고리의 다른 글

메일서버 구축 (sendmail)  (0) 2022.05.04