반응형

DNS + DHCP 서버로 구성한다.

우선 DHCP 서버 설정 후 할당을 확인 한다.

DHCP 설정
DHCP 통신을 와이어샤크로 확인
DIscover 패킷을 상세히 확인
Offer 패킷 상세 보기

Offer 패킷 구성
Your (client) IP address : 10.10.10.12 –
할당 받을 IP
DHCP
서버 : 10.10.10.254 - ME
lease Time : 10

subnet mask : 255.255.255.0
Router : 10.10.10.1 = gateway
주소
Domain Name Server : 10.10.10.254 = DNS
서버
Request, ACK
는 넘어가지만 위와 비슷한 정보가 담겨있다.

Bind9를 설치한다. 설치가 안되면 apt-get update

Bind9를 설정하는 것은 블로그를 참고해서 설정했다. (https://m.blog.naver.com/love_tolty/222690840923)

1. 해당 DNS서버에 ZONE을 설정해 준다.

Zone을 DNS 서버에 정의해 Client에게 제공이 된다. 

ex) aaa.com = aaa라는 도메인을 가지는 zone test.aaa.com test라는 서브 도메인을 가지는 aaa zone

vi /etc/bind/named.conf.local 명령어로 local 환경 설정에 들어간다.

 

Zone을 만들어준다.

zone “zone이름” { type master(마스터 존); file “/etc/bind/db.zone이름.com”;};

 

hankyul.com 도메인 zonedb.hankyul.com zone에서 세부 설정을 해줘야 한다. 하지만 세부설정 파일을 전부 새로 만들수는 있지만 좀 더 쉽게 만들기 위해서 /etc/bind/db.local 파일을 복사해서 /etc/bind/db.hankyul.com을 만들어 준다.

cp /etc/bind/db.local /etc/bind/db.hankyul.com

 

/etc/bind/db.hankyul.com을 들어가서 세부 옵션을 설정하자.

vi /etc/bind/db.hankyul.com

 

@ IN NS hankyul.com. Roothankyul.com으로 매칭하여 NS 레코드에 저장
NS
레코드? IP 주소를 찾기 위한 네임 서버정보가 포함된 레코드

www IN A 10.10.10.254 = www라는 서브 도메인에 IP주소 10.10.10.254를 매핑해 A레코드에 저장

SOA (Start Of Authority) zone에 대한 global parameterszone 이름을 정의
Serial zone file
RR이 업데이트 될 때 증가

vi /etc/bind/named.conf.options – bind의 추가 옵션

DNSNS레코드에서 찾지 못할 때 forwarders 주소로 질문을 넘기는 명령어와
모든 도메인 요청을 허용한다는 명령어 이다.

다 설정이 되면 재시작후 상태를 파악하자.
service bind9 restart
service bind9 status -> status
를 너무 믿지는 말자.

 

ufw allow 53/tcp
ufw allow 53/udp
ufw allow 80

방화벽을 해제해줘야 브라우저에서 보인다

Hostwww.hankyul.com으로 접속을 시도하면 발생하는 일

1.     DNS에게 해당 쿼리를 물어본다.

2.     DNS에 정보가 있으면 응답을해준다.
A
v4, AAAAv6IP 주소 정보이다.

DNS에게 A, AAAA에 대해 물어본다.

DNS가 응답하는 A 패킷을 열어보면 Answerswww.hankyul.com IP 10.10.10.254를 응답

3.     DNSIP 주소를 받아온 뒤에는 해당 IP 주소를 이용해서 통신을 시작한다.

HTTP 통신을 하기 위해 먼저 TCP 3 hand-syn를 통해 TCP 연결을 하고 HTTP 통신 GET 요청을 보낸다.

HTTP GET요청을 10.10.10.254에게 보낸다.

10.10.10.254GET 요청에 대해 처리 후 문제가 없어서 상태 코드 200으로 응답을 해준다.

네이버를 접속 할 때 일어나는 과정

1.     호스트가 www.naver.com을 접속하려고 하면 DNS에게 물어본다.

2.     로컬에 만든 DNSnaver.com이라는 zone과 정보가 없어서 물어보기 위해 포워딩한 8.8.8.8이나 8.8.4.4에게 물어본다.

10.10.10.254 DNS 가 알지 못해서 8.8.4.4에게 물어본다
물어보는 것은 Questions가 0이 아니어서 알 수 있다.

Apache2 페이지 변경

vi /var/www/html/index.html에서 수정하면 된다.

 

TS 가이드

1.     netplan apply를 하기전에 domain-name-servers를 설정하듯이 자신이 만든 DNS 서버 IP를 알아야 한다.

2.     가상머신의 네트워크 설정의 host-only 어뎁터가 올바르게 설정이 되었는지 확인한다.
host-only
의 첫번째 어뎁터는 DHCP를 비활성화 해도 동작이 되는 버그가 존재해 사용하지 않도록 한다. 2,3 번째 어뎁터는 GNS3에서 3,4로 표시가 된다. (ipconf /all을 통해 IP를 비교해 잘 설정하도록 하자.)

3.     서버와 브라우저에 DNS 캐시가 쌓여 있을 수 있다. 둘다 지워주자. Flushdns를 통해서 삭제 해야한다. -> 서버에도 DNS 정보가 캐시로 쌓이기 때문에 캐시를 지우든 DNS 정보를 아예 새로 만들어야 한다. 캐시를 지우는 것이 더 쉽기 때문에 캐시를 지우자.

4.     vi /etc/bind/named.conf.local에서 마지막 {}에는 ;를 써줘야 한다.

상세 설정 [db.zone이름]을 올바른 위치에 저장하고 읽어 올 수 있게 해야한다.

반응형

'경기도 미래기술학교 클라우드 > 실습 가이드' 카테고리의 다른 글

HSRP 실습  (3) 2023.07.05
STP 실습 가이드  (0) 2023.07.03
DNS 실습 가이드  (0) 2023.06.28
DHCP - NAT 연동 실습  (0) 2023.06.26
ubuntu DHCP 실습 가이드  (0) 2023.06.24

+ Recent posts