1. DNS란?
DNS(Domain Name System)는 사람이 기억하기 쉬운 도메인 주소(예: google.com)를 IP 주소로 변환해주는 시스템입니다.
리눅스 서버에서도 DNS 설정이 올바르지 않으면 웹사이트 접속, 패키지 다운로드, 원격 접속 등이 원활하게 이루어지지 않습니다.
따라서 DNS 서버 주소를 수동으로 변경하거나, 네트워크 환경에 맞게 설정하는 방법을 알아두는 것이 중요합니다.
2. 현재 DNS 설정 확인
리눅스에서 현재 사용 중인 DNS 서버를 확인하려면 다음 파일을 확인합니다.
cat /etc/resolv.conf
예시 출력:
nameserver 8.8.8.8
nameserver 8.8.4.4
위에서 nameserver 뒤의 값이 현재 설정된 DNS 서버 IP입니다.
3. DNS 서버 변경 방법
3-1. /etc/resolv.conf 직접 수정
간단한 방법은 /etc/resolv.conf 파일을 직접 수정하는 것입니다.
sudo nano /etc/resolv.conf
예) Google Public DNS로 변경
nameserver 8.8.8.8
nameserver 8.8.4.4
주의
일부 시스템에서는 NetworkManager나 systemd-resolved가 자동으로 덮어쓸 수 있으므로, 영구 적용을 위해 네트워크 설정 파일을 변경하는 것이 좋습니다.
3-2. NetworkManager를 통한 설정(Ubuntu/Debian)
- 설정 파일 열기
sudo nano /etc/netplan/*.yaml - 예시 설정
network:
version: 2
ethernets:
eth0:
addresses: [192.168.0.100/24]
gateway4: 192.168.0.1
nameservers:
addresses: [8.8.8.8, 1.1.1.1] - 적용
sudo netplan apply
3-3. ifcfg 파일 수정(CentOS/RHEL)
- 네트워크 인터페이스 설정 파일 열기
sudo nano /etc/sysconfig/network-scripts/ifcfg-eth0 - 아래 내용 추가 또는 변경
DNS1=8.8.8.8
DNS2=1.1.1.1 - 네트워크 재시작
sudo systemctl restart network
4. systemd-resolved를 사용하는 경우
Ubuntu 20.04 이후 버전에서는 systemd-resolved가 DNS를 관리하는 경우가 많습니다.
- 설정 파일 수정
sudo nano /etc/systemd/resolved.conf - 아래 내용 추가
[Resolve]
DNS=8.8.8.8 1.1.1.1
FallbackDNS=8.8.4.4 1.0.0.1 - 적용
sudo systemctl restart systemd-resolved
5. DNS 적용 여부 확인
DNS 변경이 적용됐는지 확인하려면 dig 또는 nslookup 명령을 사용합니다.
dig google.com
또는
nslookup google.com
응답에 설정한 DNS 서버 주소가 표시되면 변경이 적용된 것입니다.
6. 추천 DNS 서버 목록
- Google Public DNS: 8.8.8.8 / 8.8.4.4
- Cloudflare DNS: 1.1.1.1 / 1.0.0.1
- OpenDNS: 208.67.222.222 / 208.67.220.220
- KT DNS: 168.126.63.1 / 168.126.63.2
7. DNS 설정 시 주의사항
- 중복 설정 방지 – 여러 위치에서 DNS를 설정하면 충돌 가능
- 보안 고려 – 신뢰할 수 있는 DNS 서버 사용
- 속도 테스트 – DNS 속도에 따라 웹 페이지 로딩 속도가 달라질 수 있음
8. 결론
리눅스에서 DNS 설정은 /etc/resolv.conf를 수정하는 간단한 방법부터, 네트워크 설정 파일 변경, systemd-resolved 활용까지 다양합니다.
서버 환경과 리눅스 배포판에 따라 적절한 방법을 선택해야 하며, 변경 후 dig나 nslookup으로 정상 적용 여부를 확인하는 것이 좋습니다.
빠르고 안정적인 DNS 서버를 설정하면 웹 접속 속도와 서비스 안정성이 모두 향상됩니다.
'리눅스의 모든 것' 카테고리의 다른 글
리눅스 시스템 모니터링 – 서버 상태 점검을 위한 명령어와 도구 총정리 (1) | 2025.08.18 |
---|---|
리눅스 시간 동기화 방법 – NTP 설정과 서버 시간 맞추기 (0) | 2025.08.18 |
리눅스 파일 찾기 – find, locate, grep 활용 완벽 가이드 (1) | 2025.08.17 |
리눅스 포트 열기 방법 – 방화벽 설정부터 확인까지 완벽 가이드 (2) | 2025.08.17 |
리눅스 서비스 자동 시작 설정 – 부팅 시 프로그램 자동 실행하기 (2) | 2025.08.16 |