도메인 서버 구성하기

띠로리·2024년 7월 23일

1. 가상머신 생성

지난 블로그 글을 참고하여 DNS 전용 가상머신 두 개를 추가로 생성한다.

  • 가상 머신 이름 : DNS, Node 2

1-2. 추가로 설정해야 할 것

아이피 고정 - 윈도우

파워쉘을 관리자 권한으로 실행

New-VMSwitch -SwitchName "MySwitch" -SwitchType Internal
New-NetIPAddress -IPAddress 10.10.0.1 -PrefixLength 16 -InterfaceAlias "vEthernet (MySwitch)"
New-NetNat -Name "NATNetwork" -InternalIPInterfaceAddressPrefix "10.10.0.0/16"

위 내용 적용 후, 네트워크 변경 및 아이피 고정으로 수정한다.

  • MySwitch 어댑터 속성 변경
  • 현재 연결된 네트워크 속성 변경

💡 인터페이스 메트릭을 변경하는 이유

  • 인터페이스 메트릭을 변경하지 않은 상태로 DNS 서버 주소를 수동으로 설정해서 사용하면, 다른 웹사이트에 접속할 수 없는 상황이 발생하게 된다... 인터넷을 무사히 사용하기 위해서는 꼭 설정하고 사용하자
  • 인터페이스 메트릭 값이 높을 수록 우선순위가 낮아진다. 현재 설정한 내용을 기준으로 설명하자면 와이파이가 100, MySwitch 어댑터가 10이므로 우선 어댑터로 신호가 갔다가, 해당하는 페이지가 없으면 와이파이로 신호가 가게 된다.

아이피 고정 - 리눅스(가상머신)

nmtui edit eth0

위 명령어를 사용해 세 가상 머신의 IP를 변경해보자.

  1. dns
  1. node1, node2

이제 어댑터를 하나 더 추가해보자.

  • 하드웨어 추가 - 네트워크 어댑터 클릭해서 총 두 개의 어댑터를 사용하도록 설정
  • dns, node2 뿐만 아니라 이전에 만들어둔 node1 역시 동일하게 설정하면 된다.

설정이 끝난 후 nmtui를 입력해보면 이더넷이 하나가 더 생성되어 있는데, 그 이더넷의 IP도 바꿔보자.

  • 예시로 node1의 사진을 가져왔다.
  • 초록 박스에 본인이 연결된 네트워크 아이피 앞 두 개를 적어주면 된다. ex(168.192)
  • 이후 10은 그대로, 마지막 숫자는 앞서 eth0 설정했던 숫자에 맞춰서 dns = 10, node1 = 20, node2 = 30 으로 설정해주자.

가상머신 추가 설정

hostnamectl set-hostname dns.example.com

dnf install hyperv-* -y && reboot

새로 만든 가상머신에 적용해주면 된다.

  • dns = dns1.example.com
  • node2 = node2.example.com
  • node1 = node1.example.com

이후 hyperv-*를 설치해주자.

2. DNS 서버 설정

1. bind 설치

dnf install bind -y

2. named.rfc1912.zones 파일 수정

vi /etc/named.rfc192.zones

# 다음 내용 추가
zone "example.com" IN {
        type master;
        file "example.com.zone";
        allow-update { none; };
};
  • 해당 파일은 bind(dns 서버)에서 사용하는 존 파일 설정을 정의하는 파일이다.
  • 일반적으로 bind 서버에서 관리하는 도메인 존에 대한 설정을 포함하고 있다.

3. named.conf 설정 파일 수정

vi /etc/named.conf

# 다음 내용으로 수정
listen-on port 53 { any; };
listen-on-v6 port 53 { any; };
allow-query     { any; };

4. 존 파일 작성

vi /var/named/example.com.zone

# 다음 내용 입력
$TTL    7200
example.com.              IN      SOA     dns1.example.com. admin.example.com. (
                                        2024071901      ; Serial
                                        7200            ; Refresh
                                        3600            ; Retry
                                        604800          ; Expire
                                        7200)           ; NegativeCacheTTL

                        IN      NS      dns1.example.com.

example.com.            IN      A       10.10.0.20
www                     IN      CNAME   example.com.
dns1                    IN      A       10.10.0.10
node1					IN		A		192.168.10.20
node2					IN		A		192.168.10.30
dev						IN		A		10.10.0.10

5. named 서비스 재시작

systemctl restart named

3. httpd 띄우기

dnf install httpd -y
systemctl start httpd

이후 http://example.com 접속해서 잘 뜨는지 확인하기

profile
차곡 차곡 기록 쌓기

0개의 댓글