DNS(Domain Name System) : 영문주소에 대한 IP를 안내하는 시스템
. : Root DNS
.com / .net / .kr
.naver.com / .yahoo.com
.www.naver.com
루트 DNS를 시작으로 아래 적혀 있는 순서대로 안내를 해줌. 각각 (.com DNS, .naver.com DNS, 서버 리스트)
.
자신의 PC에서 DNS 서버로 www.naver.com은 어디로 가야하는지 query를 날려 물어보면 DNS는 1.1.1.1 등IP 형식으로 방향을 알려준다.
<리눅스에서 DNS server 구성시 필요한 3가지 파일>
/etc/named.conf : 네임서버의 기능적인 설정
/etc/named.rfc1912.zones : 영역을 정의, 서버 목록이 포함된 안내파일을 매칭시켜줌
/var/named/<안내파일> : 서버목록이 담긴 안내파일.
안내파일 : 영문 주소에 대한 IP를 매칭시킨 목록.
DNS port - udp, tcp 53
방화벽 해제를 해주었다.
SELINUX : CentOS에만 존재하는 보안 설정으로, 방화벽보다 강력하다.
SELINUX가 있는 설정파일이다.
SELINUX를 종료시키기 위해 enforceing=>disabled로 바꿔준다.
SELINUX 비활성화 후에 설정을 반영하기 위해 재부팅 시킨다.
getenforce 명령어를 입력했을 때 Disabled 상태여야 정상적으로 SELINUX가 꺼져있는 것임.
재부팅 없이 임시로 SELINUX를 비활성화를 하고 싶으면 setenforce 0이라고 입력하면 되지만, 추천하지 않음.
방화벽 또한 비활성화 되어있는것을 확인하였다.
bind : DNS 서버 패키지
bind-utils : DNS 클라이언트에서 사용할 명령어 nslookup
패키지를 설치한 후 새로운 디렉터리가 생성되었는지 확인한다.
쿼리를 모든 대상으로부터 받을 수 있도록 설정을 수정한다.
zone : 영역 = 도메인
ex> naver.com이라는 영역(도메인)의 하위에는 웹서버, ftp서버 등이 포함되어 있다.
누군가 aws1.com 영역에 접속했을 때 안내해주는 파일이 named.localhost라는 의미.
저 부분을 aws1.com.db라고 수정해주었다.
/var/named라는 폴더 안에 반드시 aws1.com.db 파일이 존재해야 한다.
그래서 만들어 주었다!
/var/named/named.localhost의 형식을 참고하여 아래와 같이 입력해주었다.
위는 zone aws1.com의 안내파일이므로 의미를 설명하자면
www.aws1.com으로 접속하게 되면 211.183.3.80으로 안내하도록 되어있다.
다만 이건 dns 설정일 뿐 네트워크 연결이나 웹서버와 관련된 설정이 아니므로 해당 설정까지 잘 해주어야 연결이 잘 된다.
존파일(안내파일, 과 zone이 잘 매칭이 되어있는걸 확인하였다.
인터페이스에서 dns 서버를 변경해주면 잘 된다~!
dig는 좀 더 자세하게 보여주는 명령어.
외부에서도 dns 주소만 잘 정의한다면 아래 사진처럼 nslookup이 잘 되는 것을 확인할 수 있다.
구웃!
문제>
우리 회사는 iloveteacher.com or ihateteacher.com 도메인을 운영할 예정이다.
도메인 내 www라는 하위 도메인을 통해 웹서비스를 제공중이고 웹서버의 주소는 211.183.3.80이며 정상적으로 잘 동작하고 있다. 그 밖에 tftp, ssh, telnet 하위 도메인에 해당하는 서버도 각각 69, 22, 23번 주소로 제공중이나 현재 이 3개의 서버는 점검 중이다.
나는 문제 속 도메인 대신에 sky.com을 쓸 예정이다.
이를 위해 zone을 추가해주었다.
sky.com.db도 생성해서 위와 같이 입력해주었다.
앞으로 클라이언트로 사용할 mint 가상머신의 네트워크 설정을 다음과 같이 해주었다.
웹에 연결을 하면 나오게 될 화면 설정을 해준다.
연결이 잘 되는 것을 확인한 후, www.sky.com으로 연결 시도를 하면 잘 나오는 것을 알 수 있다.
systemctl start httpd를 잘해주자^^
1. DNS 서버 구성(.53)
/etc/named.conf 확인
/etc/named.rfc1912.conf 확인
/var/named에 zone파일 (db) 잘 설정되어있는지 확인
2. WEB 서버 구성(.80)(다만 나는 둘 다 같은 .53으로 만듦)
3. 쿼리가 정상적으로 되는지 확인
www.sky.com으로 접속했을 때 되면 ok.
접속 실패시↓
① 웹서버가 기능적으로 잘 동작하는지 ip 주소로 접속
=> ip 주소 접속이 된다면 dns에 문제가 있을 확률이 높음.
② ip 주소 접속도 안된다면 웹서버 문제.