[KEDUIT] 클라우드 컴퓨팅과 보안솔루션을 활용한 DC 엔지니어 양성교육 - Day19
1. 서론
오늘은 여태까지 배운 내용을 종합한 구성을 직접 해보는 시간을 가졌다. 그리고 DNS에 대해서도 배웠고 이를 정리해보려 한다.
2. 본론
1. Cisco IOS
1. 문제
문제. 위의 그림과 같이 세팅하고 2016-Server에서 IIS를 통해 제작한 웹을 Host4에서 확인할 수 있도록 구성하라.(SW가 Active)
//SW1
# conf t
# username R3 password cisco
# int s2/0
# no sh
# encapsulation ppp
# ppp authentication chap
# clock rate 64000
# ip add 1.1.12.1 255.255.255.248
# exit
# int f1/1
# no switchport
# ip add 172.16.12.1 255.255.255.0
# exit
# int f1/2
# no switchport
# ip add 172.16.13.1 255.255.255.0
# exit
# ip route 172.16.30.0 s2/0 1.1.12.6
# end
# copy r s
//SW2
# conf t
# int f1/1
# no switchport
# ip add 172.16.12.2 255.255.255.0
# exit
# int f1/2
# switchport mode access
# switchport access vlan 234
# exit
# vlan 234
# name VLAN234
# exit
# int vlan 234
# ip add 172.16.234.252 255.255.255.0
# standby 234 ip 172.16.234.100
# standby 234 priority 120
# standby 234 preempt delay minimum 5
# standby 234 track f1/1 30
# exit
# ip route 0.0.0.0 0.0.0.0 f1/1 172.16.12.1
# end
# copy r s
//SW3
# conf t
# int f1/2
# no switchport
# ip add 172.16.13.3 255.255.255.0
# exit
# vlan 234
# name VLAN234
# int f1/3
# switchport mode access
# switchport access vlan 234
# exit
# int vlan 234
# ip add 172.16.13.3 255.255.255.0
# standby 234 ip 172.16.234.100
# standby 234 preempt
# exit
# ip route 0.0.0.0 0.0.0.0 f1/2 172.16.13.1
# end
# copy r s
//SW4
# conf t
# no ip routing
# vlan 234
# name VLAN234
# exit
# int range f1/1 - 5
# switchport mode access
# switchport access vlan 234
# end
# copy r s
//R3
# conf t
# username SW1 password cisco
# int s1/0
# no sh
# encapsulation ppp
# ppp authentication chap
# ip add 1.1.12.6 255.255.255.248
# exit
# int f0/0
# no sh
# ip add 172.16.30.254 255.255.255.0
# exit
# ip route 0.0.0.0 0.0.0.0 s1/0 1.1.12.1
# exit
# ip dhcp pool NET30
# network 172.16.30.0 255.255.255.0
# lease 8
# default-router 172.16.30.254
# end
# copy r s
2. DNS
DNS(Domain Name Server)는 Network에서 Domain이나 Host name을 숫자로 된 ip주소로 해석해 주는 TCP/IP Network Service이다.
이러한 DNS가 올바르게 동작하기 위한 조건으로는 아래와 같은 것들이 있다.
1. Client는 신속 정확하게 Service에 접속 할 수 있어야 한다.
2. Service는 요청에 빠르게 응답을 해야한다.
3. Client는 Service에게 연결요청을 두번이상 하면 안된다.
인터넷 초기에는 호스트 이름과 호스트 주소(숫자 주소)리스트를 SRI NIC(Stanford Research Institution Network Information Center)에서 일괄 관리하여 배포하는 방식으로 운영됐다. SRI NIC의 ‘hosts.txt’ 파일에는 모든 컴퓨터의 Hostname과 IP 주소 정보가 저장되고, Client는 FTP를 이용해 SRI-NIC에 접근해서 hosts파일을 다운로드 및 적용해서 IP 주소를 알아냈다. 하지만 이런 방식의 운영은 Update가 늦고, Network Traffic이 많이 발생하며 Hostname 또한 중복될 수 있다.
이러한 문제점을 해결하기 위해 계층 구조 즉 분산 Database구조로 현재의 DNS가 만들어지게 되었다. DNS는 각 조직을 구분해주고 Domain Name을 관리하는 DNS server들이 모여서 가상의 이름공간을 만들어낸다. DNS의 구조는 아래와 같은 역트리 구조이다.
1. Local Hosts 파일을 참조 (ex. c:\windows\system32\drivers\etc\hosts)
2. 자체 DNS cache table참조 (cache 정보 확인 명령어 : ipconfig /displaydns,
Cache 정보 초기화 명령어 : ipconfig /flushdns)
3 DNS Server 참조
최상위 도메인, 즉 Root Domain으로 보낸 후 Top-Level Domain(kr, jp, net, com, org 등)과 Second-Level Domain Server를 검색하고, Third Level(or Sub) domain Server순으로 해당하는 IP를 찾게 된다. 이때 이 이름은 FQDN(Fully Qualified Domain Name)으로 유일하다.
ex) www.google.com
그리고 DNS 레코드의 종류로는 아래와 같은 것들이 있다.
1. SOA(Start of Authority) : 권한의 시작을 지정하고, 권한이 있는 Server를 가리
킨다.
- Serial(일련번호) : 2차 Name_Server가 zone파일의 수정여부를 알 수 있도록
하기 위한 옵션
- Refresh(새로 고침 간격) : 1차 Name_Server의 zone 파일 수정여부를 2차
Name_Server가 검사하기 위한 옵션
- Retry(다시시도 간격) : 2차 Name_Server에서 1차 Name_Server로 연결이 되지
않을 경우 재접속을 요구하는 옵션
- Expire(다음 날짜 이후에 만료) : Secondary가 Expire에서 지정한 시간동안
Primary에 연결하지 못할 경우, 해당 Domain이 유효하지 않다고 간주하고 해당 Domain에 대한 정보를 전송하지 않음
- TTL : DNS Cache에 살아있는 시간을 설정
2. A(Host Record) : FQDN과 32bit의 IPv4주소와 연결
3. AAAA(IPv6Host) : FQDN과 128bit 의 IPv6주소와 연결
4. CNAME(Alias Record) : 실제 Domain 이름과 연결되는 가상 Domain 이름(별칭)
5. MX(Mail Exchange Record) : 주어진 사서함에 도달할 수 있는 Routing Information를 제공
6. SRV(Service) record : 비슷한 TCP/IP Service를 제공하는 다수의 Server 위치정보를 제공
7. NS(Name Servers) : Domain Server 목록을 지정
//DNS Query
- Query는 Recursive(재귀적) 또는 Iterative(반복적)로 구분되며 Client와 Server는 Query를 교환
- Name space를 위한 권한이 있는 DNS Server(->요청된 IP주소를 응답)와 권한이 없는 DNS Server(->Cache정보 확인, Forwarder 이용, Root hints 이용)로 구분
- Forwarder : 외부 DNS Name에 대한 DNS Query를 외부 DNS Server에 전달하는 역할
- Root hints : DNS RootServer의 IP Address를 포함하고 있는 파일
3. 결론
확실히 왜 안되는지 스스로 고민해보면서 지난 내용도 찾아가며 해결해나가는 과정이 공부가 굉장히 많이 되는 것 같다.
4. 참고자료
Ⅰ. 문웅호, 정보통신망
Ⅱ. 문웅호, 하드웨어
Ⅲ. 문웅호, DNS의 동작
클라우드 엔지니어를 꿈꾸며 공부를 시작한 초보 엔지니어입니다. 틀린점 또는 조언해주실 부분이 있으시면 친절하게 댓글 부탁드립니다. 방문해 주셔서 감사합니다 :)
댓글남기기