1
요청사항 ?
현재 온프라미스에서 DNS사용중이다.
2차 도메인을 클라우드에서 운영하고 싶다.
2차 도메인은 클라우드 운영하는 개발자가 사용하고 싶다.
2
현황?
온프라미스
serverup11.kr 도메인 운영중.
3
2차 도메인인 game.serverup11.kr 을 클라우드 DNS에서 운영하고 싶다.
www.game.serverup11.kr 레코더는 클라우드에서 개발자가 설정하여 관리하고 싶다.
온프라미스 DNS 구축 실습
1
네이버 클라우드에서 네임서버용도 로키리눅스 1대 생성.
serverup-kr-ns1
211.188.48.244
g1!!
2
# DNS 소프트웨어인 bind 설치하기
yum -y install bind bind-chroot
3
[root@serverup-kr-ns1 ~]# cd /etc
[root@serverup-kr-ns1 etc]# vi named.conf
options {
listen-on port 53 { any; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
secroots-file "/var/named/data/named.secroots";
recursing-file "/var/named/data/named.recursing";
allow-query { any; };
/*
- If you are building an AUTHORITATIVE DNS server, do NOT enable recursion.
- If you are building a RECURSIVE (caching) DNS server, you need to enable
recursion.
- If your recursive DNS server has a public IP address, you MUST enable access
control to limit queries to your legitimate users. Failing to do so will
cause your server to become part of large scale DNS amplification
attacks. Implementing BCP38 within your network would greatly
reduce such attack surface
*/
recursion no;
dnssec-enable yes;
4
# etc 아래 named.rfc1912.zones 에 사용 도메인 추가 하기
[root@cache-ga-dns1 etc]# ls named.*
named.conf named.rfc1912.zones named.root.key
[root@cache-ga-dns1 etc]# vi named.rfc1912.zones
// named.rfc1912.zones:
//
// Provided by Red Hat caching-nameserver package
//
// ISC BIND named zone configuration for zones recommended by
// RFC 1912 section 4.1 : localhost TLDs and address zones
// and https://tools.ietf.org/html/rfc6303
// (c)2007 R W Franks
//
// See /usr/share/doc/bind*/sample/ for example named configuration files.
//
// Note: empty-zones-enable yes; option is default.
// If private ranges should be forwarded, add
// disable-empty-zone "."; into options
//
zone "serverup11.kr" IN {
type master;
file "serverup11.kr.zone";
allow-update { none; };
};
zone "localhost.localdomain" IN {
type master;
file "named.localhost";
allow-update { none; };
};
5
# 사용 도메인에 대한 Zone 파일 생성
[root@dns-ga-ns1 named]# pwd
/var/named
[root@serverup-kr-ns1 named]# cp named.localhost serverup11.kr.zone
[root@dns-ga-ns1 named]# more serverup11.kr.zone
$TTL 10
@ IN SOA @ ns1.severup11.kr. (
2024120204 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns1
A 127.0.0.1
AAAA ::1
ns1 A 211.188.48.244
www A 1.1.1.1
6
# DNS 데몬 재시작
systemctl restart named
7
# DNS 데몬 확인
[root@dns-il-ns2 etc]# ps -ef |grep named
named 37175 1 0 22:18 ? 00:00:00 /usr/sbin/named -u named -c /etc/named.conf
root 37183 2286 0 22:18 pts/0 00:00:00 grep --color=auto named
8
# 도메인 등록 대행 기관에서 네임서버를 해당 도메인 ns1 으로 지정.
9
# 네이버 클라우드에서 2차 도메인 세팅
game.serverup11.kr
www.game.serverup11.kr 5.5.5.5
10
# 온프라미스 네임서버에서 NS로 네이버 클라우드로 위임을 한다.
[root@serverup-kr-ns1 named]# more serverup11.kr.zone
$TTL 10
@ IN SOA @ ns1.severup11.kr. (
2024120205 ; serial
1D ; refresh
1H ; retry
1W ; expire
3H ) ; minimum
NS ns1
A 127.0.0.1
AAAA ::1
ns1 A 211.188.48.244
www A 1.1.1.1
game NS ns1-1.ns-ncloud.com.
game NS ns1-2.ns-ncloud.com.
11
dig www.game.serverup11.kr
[root@serverup-kr-ns1 named]# dig www.game.serverup11.kr
; <<>> DiG 9.11.36-RedHat-9.11.36-16.el8_10.2 <<>> www.game.serverup11.kr
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 65290
;; flags: qr rd ra; QUERY: 1, ANSWER: 1, AUTHORITY: 0, ADDITIONAL: 1
;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 1232
;; QUESTION SECTION:
;www.game.serverup11.kr. IN A
;; ANSWER SECTION:
www.game.serverup11.kr. 300 IN A 5.5.5.5
;; Query time: 5 msec
;; SERVER: 169.254.169.53#53(169.254.169.53)
;; WHEN: Tue Dec 03 20:18:30 KST 2024
;; MSG SIZE rcvd: 67
[root@serverup-kr-ns1 named]#
12
이제 네이버 클라우드 Global DNS에서 game.serverup11.kr 앞의 레코더를 설정하고 관리할수 있다.
13
[root@serverup-kr-ns1 named]# dig www6.game.serverup11.kr +short
6.6.6.6
1
서버 정지
서버 반납
같이 볼만한 자료
https://brunch.co.kr/@topasvga/196
감사합니다.