원활한 테스트를 위해서 순차적 진행을 권장합니다.
초기 환경을 확인하는 방법에 대한 설명
apt list --installed
apt list --installed | grep {패키지명}
ifconfig
- 추가 도구 설치
- 해당 과정에서 IP를 확인을 하기 위해서 추가 도구를 설치해 과정을 편하게 한다.
sudo apt-get install net-tools
ping 8.8.8.8
Apt는 리눅스 계열에서 사용되는 소프트웨어 패키지의 설치 및 제거를 도와주는 도구다.
sudo apt-get update
sudo apt-get upgrade
apt-get install --only-upgrade {packagename}
Local server에 DHCP 서비스를 설정하는 과정입니다.
sudo apt-get install isc-dhcp-server
5.2.1sudo vi /etc/dhcp/dhcpd.conf
로 DHCP 서버 구성 파일 열기
subent 192.168.10.0 netmask 255.255.255.0 {
range 192.168.10.1 192.168.10.250
option routers 192.168.10.251
option domain-name-servers 192.168.10.253
}
subent 192.168.10.0 netmask 255.255.255.0
: 192.168.10.0/24 대역에 ip에 대한 설정을 의미range 192.168.10.1 192.168.10.250
: 192.168.10.1 ~ 250 범위에 IP를 부여option routers 192.168.10.251
: 해당 네트워크 대역에 디폴트 게이트웨이를 지정해 준다.option domain-name-servers 192.168.10.253
: 해당 네트워크에서 DNS서버를 지정default-lease-time 600;
max-lease-time 7200;
i
입력 시 i INSERT모드 진입 → 내용 입력 후 esc 누르고 :wq
입력 후 엔터:wq
가 안될 경우 해당 파일을 읽기 모드로 접근했을 경우가 있으니 :q!
로 나간 후 다시 sudo vi /etc/dhcp/dhcpd.conf
로 접근dhcpd -t -cf /etc/dhcp/dhcpd.conf
5.2.2sudo vi /etc/default/isc-dhcp-server
로 DHCP interface 설정
INTERFACESv4="{인터페이스명}"
ifconfig
입력시- enp0s3 가 인터페이스 이름이다.
- 따라서, 현재 테스트 환경에서는 INTERFACESv4="enp0s3” 를 입력한다.
i
입력 시 i INSERT모드 진입 → 내용 입력 후 esc 누르고 :wq
입력 후 엔터:wq
가 안될 경우 해당 파일을 읽기 모드로 접근했을 경우가 있으니 :q!
로 나간 후 다시 sudo vi /etc/default/isc-dhcp-server
로 접근DHCP Server설정이 정상적으로 되었는지 확인하는 과정입니다.
5.3.0 Virtualbox Network 변경
해당 설정에서 DHCP서버를 꼭 비활성화 해주세요!
Virtualbox에서 해당하는 가상머신 설정 - 네트워크 - 어뎁터1 다음에 연결됨 - 호스트 전용 어댑터로 변경
5.3.1 IP 설정
sudo vi /etc/netplan/00-installer-config.yaml
IP 설정을 위한 yaml파일 입니다
network:
ethernets:
enp0s3:
dhcp4: no
dhcp6: no
addresses:
- 192.168.10.253/24
gateway4: 192.168.10.251
version: 2
enp0s3:
해당 인터페이스에 대한 설정dhcp4: no
해당 인터페이스에 DHCP기능을 비활성화 (4, 6는 IPv4와 IPv6를 나타냄 )addresses: - 192.168.10.253/24
해당 인터페이스의 IP를 지정 IP / {서브넷} 형식gateway4: 192.168.10.251
해당 인터페이스의 기본 게이트웨이 IP 설정i
입력 시 i INSERT모드 진입 → 내용 입력 후 esc 누르고 :wq
입력 후 엔터:wq
가 안될 경우 해당 파일을 읽기 모드로 접근했을 경우가 있으니 :q!
로 나간 후 다시 sudo vi /etc/netplan/00-installer-config.yaml
로 접근sudo netplan apply
ifconfig
5.3.2 DHCP 상태 확인
sudo service isc-dhcp-server restart
sudo service isc-dhcp-server status
GNS3에 대한에 대한 설치 및 설정은 알아서 해주세요. 해당 과정에서 라우터 설정에 대한 명령어에 대한 설명은 최소한으로 진행하겠습니다.
다음과 같은 구성을 구성한다.
R1에 다음과 같이 설정한다.
R1#configure terminal
R1(config)#interface fastEthernet 0/0
R1(config-if)#ip address 192.168.10.251 255.255.255.0
R1(config-if)#no shutdown
show ip interface brief
ping 192.168.10.253
PC1에서 DHCP 서비스 확인
ip dhcp
를 통해서 서버로부터 IP를 할당 받는지 확인한다.Local server에 Local DNS를 구현하는 과정입니다.
DNS를 사용하기 위해서 apt를 통해서 bind9 패키지를 설치합니다.
앞 과정을 테스트하면서 외부 인터넷과 통신이 끊어진 상태입니다.
Ping 8.8.8.8
로 확인ctrl + c
외부 인터넷 복구를 위해서 sudo vi /ete/netplan/00-installer-config.yaml
과 Virtualbox Network를 NAT으로 변경한다.
network:
ethernets:
enp0s3:
dhcp4: true
#dhcp6: no
#addresses:
# - 192.168.10.253/24
#gateway4: 192.168.10.251
version: 2
dhcp4: true
: 해당 인터페이스에 DHCP기능을 활성화 한다.sudo netplan apply
ifconfig
통해서 IP를 확인한다.DNS를 위해서 apt를 활용해 bind9을 설치한다.
sudo apt-get install bind9
sudo servrice bind9 status
에서 상태가 active인 것을 확인한다.6.3.1 DNS option 구성
우선 DNS 전체에 대한 구성 옵션을 설정한다.
sudo vi /etc/bind/named.conf.options
options {
directory "/var/cache/bind";
listen-on port 53 { localhost; 192.168.10.0/24; };
allow-query { any; };
forwarders { 8.8.8.8; };
recursion yes;
};
directory "/var/cache/bind"
: 존 파일이 저장된 기본 위치listen-on port 53 { localhost; 10.0.1.0/24; };
:# server가 query에 응답할 인터페이스(interface)와 포트(port)를 지정allow-query { any; };
: DNS query를 할 수 있는 host를 지정forwarders { 8.8.8.8; };
: 포워딩(forwarding)에 사용할 IP address를 지정recursion yes;
: 재귀(recursive) query를 활성화6.3.2 DNS Local 구현
DNS가 보유한 zone 파일에 대한 내용을 명시한다.
sudo vi /etc/bind/named.conf.local
zone "cndgh.com" IN {
type master;
file "cndgh.com.zone";
}
zone "cndgh.com" IN
: ‘cndgh.com’ 대한 정보를 표시한다고 명시type master;
:자신이 가지고 있는 파일이 master file임을 명시file "cndgh.com.zone";
: 정보를 담고 있는 파일명 입력 해당 파일은 option 설정에 directory
설정에서 찾는다.6.3.3 zone 파일 구성
옵션에서 지정한 위치에 ”cndgh.com.zone”파일을 만들고 도메인을 설정한다.
본 과정에서 처음부터 구성하는 것보다 기존에 있던 다른 zone 파일을 복사해 수정하는 것이 편하기 복사해 구성한다.
sudo cp /etc/bind/db.local /var/cache/bind/cndgh.com.zone
으로 파일을 복사한다.
sudo vi /var/cache/bind/cndgh.com.zone
$TTL 86400
@ IN SOA cndgh.com. root.cndgh.com. (
1 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
86400 ) ; Negative Cache TTL
;
@ IN NS cndgh.com.
@ IN A 192.168.10.253
web IN A 192.168.10.253
$TTL
: resolver가 record를 캐시(cache) 할 시간(초, seconds)을 정의, 0이면 cache 안씀SOA
(start of authority)는 zone(domain)에 대한 전역(global) 매개변수(parameters)와 zone 이름을 정의'owner-name'
'class'
'type'
'type-specific-data'-
6.3.4 설정 파일 syntax check
named-checkconf
named-checkzone {도메인} {해당 도메인 파일 경로}
6.3.5 DNS 상태확인
모든 설정을 적용하고 DNS의 상태를 확인하는 과정입니다.
sudo service bind9 restart
sudo service bind9 status
sudo service bind9 restart
: DNS 서비스를 재시작한다.sudo service bind9 status
: DNS의 서비스 상태를 확인한다.→ 다음처럼 DNS 서비스가 정상적으로 active인 것을 확인할 수 있다.
테스트를 위해서 간단히 apach2를 설치해서 테스트 환경을 만든다.
sudo apt-get install apache2
앞 과정에 진행한 테스트에서 Ubuntu PC를 추가해서 DHCP와 DNS를 테스트한다.
테스트를 위해서 Local server에 IP와 네트워크 타입을 변경 : 네트워크 및 IP변경
7.1.1 Ubuntu PC 설정
virtualbox - ubuntuPC - 설정 - 네트워크 - 호스트 전용 어뎁터 - 이름 : #3로 설정한다.
7.1.2 환경 테스트
nslookup [cndgh.com](http://cndgh.com)
을 입력해서 DNS서버로부터 해당 도메인 주소를 받아오는 것을 확인한다.DNS에서 IP를 도메인으로 변경하는 서비스를 제공하기 위해서 REVERSE ZONE
을 추가로 설정한다.
sudo vi /etc/bind/named.conf.local
zone "10.168.192.in-addr.arpa" IN {
type master;
file "cndgh.com.zone.rev";
};
zone "10.168.192.in-addr.arpa" IN
: 192.168.10.X 대역에 대한 Reverse을 설정하기 위해서 IP를 역순으로 쓴다.존 파일을 생성한다.
sudo vi /var/cache/bind/lindarex.local.zone.rev
$TTL 86400
@ IN SOA cndgh.com. root.cndgh.com. (
2 ; Serial
604800 ; Refresh
86400 ; Retry
2419200 ; Expire
86400 ) ; Negative Cache TTL
;
@ IN NS cndgh.
253 IN PTR cndgh.com.
123 IN PTR cndgh123.com
<마지막 옥텟>.<세 번째 옥텟>.<두 번째 옥텟>.<첫 번째 옥텟>.in-addr.arpa. IN PTR <호스트 이름>.
sudo service bind9 restart
sudo service bind9 status
status가 Failed일 경우 다음을 참조 : DNS 설정 파일 확인
테스트 환경에서 확인을 한다.
nslookup 192.168.10.123
입력 시 cndgh123.com을 확인
nslookup 192.168.10.253
입력 시 cndgh.com을 확인
https://lindarex.github.io/bind9/ubuntu-bind9-setting/ : DNS 설정
오타 및 수정 요청 : cndgh98@naver.com