elsa in mac

인터넷 앱 반응 속도를 올리는 첫 걸음, 빠른 DNS Server를 사용하자 본문

Mac(OS X)/macOS 팁

인터넷 앱 반응 속도를 올리는 첫 걸음, 빠른 DNS Server를 사용하자

elsa in mac 2018. 5. 17. 06:06

DNS(domain Name System)...

우리가 웹 서비스를 사용하는데 있어 가장 기본적으로 해야할 일은 웹 브라우저에서 접속하고자 하는 홈페이지의 주소를 지정하는 것 입니다. 물론, 이를 좀 더 편리하게 하기 위해 수 많은 Link를 제공하지만, 적어도 한 번은 해당 홈페이지의 주소를 주소 창에 넣어야 하죠.

하지만, 사용자들이 인식할 수 있는 www.homepage.com 등과 같은 Domain에 접속을 하기 위해서 내부적으로는 IP 주소로 변경이 되어야 합니다. 사용자가 입력한 도메인 명이 어떤 IP주소인지를 찾고 이를 변환해 주기 위해서는 Domain Server에 접속을 해야하고, 이를 통해 IP 주소와 매칭을 시켜야 하는데, 이는 운영체제에서 내부적으로 처리를 해 주게 됩니다. 

이 과정 즉, 웹 사이트 주소를 IP 주소로 변환하는데 걸리는 시간이 사용자가 웹 사이트 주소를 입력하고 Enter키를 치는 순간 부터 실제 웹 사이트의 내용이 웹 브라우져에 나타나는데 걸리는 시간과 무관하지 않은데, 이 변환처리 속도가 사용자가 인지하는 홈페이지 접속 속도를 결정하는 한 요소이기 때문입니다.

이를 위해, 대부분의 운영체제 특히 인터넷과 관련된 서비스 설정 항목에 DNS server를 명시하도록 되어 있는데, Mac의 경우 "시스템 환경설정" > "네트워크" 에서 찾아 볼 수 있습니다. 

위의 스샷은 T Wifi Zone 사용 시의 경우로, Wi-Fi 네트워크 설정에서 DNS를 지정하지 않은 경우, 즉, DNS Server를 특별히 지정하지 않은 경우를 보여 줍니다. 보시는 바와 같이 210,220,163.82라는 DNS Server가 자동으로 잡혀 있는 것을 볼 수 있는데, 이 녀석은 당연히 SK Broadband의 DNS Sever 입니다. 

DNS Server들의 종류와 반응속도는 현재 사용자의 위치와 접속하고자 하는 홈페이지가 어느 국가에서 운용 중인지의 여부에 따라 다릅니다. 어느 DNS Server를 사용하느냐가 절대적인 속도의 우위에 있다고는 말할 수는 없지만, 전반적인(average) 속도의 우위는 분명히 존재하는 것도 사실이죠..

대부분 많은 분들이 인터넷 검색등을 통해 Google의 Public DNS Server를 많이 사용합니다. 꽤 응답속도가 빠르다고 알려져 있죠. 대체적으로 인터넷 서비스 업체가 제공하는 DNS Server보다 반응속도가 분명 빠른 편입니다. 

어떤 DNS가 현제 나의 위치에서 가장 빠른가를 확인해 볼 수 있는 방법은 꽤 많이 있기는 하지만, Mac에서 간단히 테스틀 해 불 수 있는 방법 중 하나는 DNS Performance Test 쉘 스크립트를 이용하는 방법입니다. 

Clone or download로 표시된 녹색 버튼을 눌러 Zip 파일을 다운로드 받은 후, 압축을 해제하면, 아래와 같이 dnstest.sh라는 쉘 스크립트 파일을 볼 수 있습니다. 

실행하는 방법은 "터미널" 앱을 열고, 해당 파일을 실행하면 되는데, 우선, dnstest.sh를 선택하고, 오른쪽 마우스 버튼을 눌러 Context menu가 나타나면 "옵션"키를 눌러 dnstest.sh의 pathName을 복사 합니다. 

다음으로 터미널 앱을 열고, command+P 키를 눌러 Paste를 시켜 준 후, Enter 키를 눌러 주면 됩니다. 

위의 스샷은 터미널을 통해 dnstest.sh를 실행시킨 예 입니다. 

보시면, 맨 좌측에 대표적인 DNS server 명과 주소들이 보이고, 각 dns server를 통해 10번의 test를 수행, 그 평균 값을 산출하는 것을 알 수 있는데요... dnstest.sh의 소스를 확인해 보면, 아래와 같이 사용자들이 많이 사용하는 10개의 홈 페이지의 주소가 테스트 대상으로 명시되어 있는 것을 알 수 있습니다. 

 테스트를 할 때 마다 조금씩 결과가 다르기는 하지만, 아래 보시는 바와 같이 최근에 새롭게 Free DNS server 서비스를 시작한 cloudflare DNS Server가 가장 빠른 응답속도를 내는 것을 알 수 있습니다.  1000ms가 넘어가는 것은 일반적으로 TimeOut을 의미 합니다. 

Cloudflare의 DNS server 주소는 1.0.0.1 이죠.  이제, DNS Server를 Cloudflare DNS Server로 사용하고자 한다면, 인터넷의 DNS Server 주소를 1.0.0.1로 바꿔 주면 됩니다. 

물론, 첫 번째 DNS Server가 반응하지 않는 경우를 대비하여, 여러 개를 등록해 놓아도 되는데, 이 경우 위에서 아래의 우선순위로 접속을 시도하게 됩니다. 첫 번째 DNS Server가 제 역활을 잘 수행해 준다면, 두 번째 세 번째 DNS Server까지 접속될 일은 없겠죠.. ^^

다만, 그럼에도 불구하고 다수의 DNS Server를 명시하는 것은 의미가 있습니다. 이유는 DNS Server의 선택이 비단 속도뿐만 아니라, 국내 ISP(인터넷 서비스 업체)에서 특정 DNS Server의 접속을 차단하거나, 각 DNS Server에 따라 maleware 등 악성코드 차단, 성인관련 홈페이지 접속 차단, 직접 IP address 주소 접근 금지 등의 부가적이고 특색있는 서비스들을 지원하기 때문에, 단일 DNS Server를 사용 시, 사용자가 의도치 않게 접속이 되지 않는 경우를 경험할 수 있기 때문입니다. 

 

공유하기 링크
Comments