백엔드/네트워크

[네트워크기초이론]#30. 전세계 인터넷을 멈추는 방법과 DNS

묘걍 2023. 10. 10. 19:03

전 세계 인터넷 마비시키기

- 인터넷은 라우터와 DNS 집합체

- DNS는 분산형 데이터베이스 구조를 가짐

- 이 구조는 계층적 구조

- 계층적 구조 최상단은 Root

- DNS들 중 최상단인 Root DNS → 전세계에 13대 있음

"이 13대를 찾아서 한방에 마비시켜버리면 전 세계 인터넷은 멈춘다!"

출처: 강사님 화면

- 2003년도 기사

- 위 이야기를 실제 실행으로 옮긴 경우가 있음

- 2002.10.22에 Root DNS 해킹, 디도스 공격 사건

- 무탈하게 잘 넘어감 (9대가 서비스 장애 but 신속 대응 등으로)

1.25인터넷 대란

https://namu.wiki/w/1.25%20%EC%9D%B8%ED%84%B0%EB%84%B7%20%EB%8C%80%EB%9E%80

 

1.25 인터넷 대란 - 나무위키

이 저작물은 CC BY-NC-SA 2.0 KR에 따라 이용할 수 있습니다. (단, 라이선스가 명시된 일부 문서 및 삽화 제외) 기여하신 문서의 저작권은 각 기여자에게 있으며, 각 기여자는 기여하신 부분의 저작권

namu.wiki

 

DNS 시스템 알아보기

도메인 네임

- 도메인 네임, URL(/를 통해)

- www = Host name

   www라는 이름의 컴퓨터가 있는 것

- 이는 naver에 속함

- naver는 .com에 속함

- 도메인 네임 돈 주고 사야돼 (지적 재산권)

- 도메인에 속한 host name은 domain을 산 사람이 등록하면 된다

- 맨 왼쪽이 Host name인 것은 기억하자!

 

- 인터넷에서는 Host 식별 위해 IP 주소 부여

- 그럼 IP주소로 하면 되지 왜 도메인을 만들었을까?

   ➡️ 사람들이 숫자를 못외워!

- 사람들이 외우기 쉬운 이름을 만들고 이에 해당하는 IP주소를 바꿔주자!

- 휴대폰 속 전화번호부처럼 (전화번호를 외우지 않고 이름으로 번호를 저장해 둠)

- 인터넷도 접속은 IP로 하지만 도메인 주소로 보여줌

 

주소창에 주소를 치면

- DNS한테 바로 물어보지 않음

- 자기 PC메모리를 뒤짐, DNS Cache를 뒤짐(메모리 검색)

- 거기 없으면 Host File을 검색

- 거기에도 없으면 DNS에 물어봄

 

공유기

- 현재는 대부분 공유기를 사용

- 공유기는 DNS Forwarding 기능 제공

- 마치 본인이 DNS인 마냥 응답을 대리하기도 함

- 공유기가 응답을 안 한다면

 

ISP

- 우리가 사용하는 인터넷 프로바이더(KT, SKT ..)의 ISP가 제공하는 DNS

- KT 혜화지점 IP: 168.126.63.1에게 물음(query) → 응답이 감

- 한 번 물으면 그 정보를 본인 메모리 (DNS cache)에 들고 있다가 그 뒤로는 DNS에 묻지 않고 스스로 cache를 보고 그것에 따라서 바로 naver에 접속

- 같은 ISP 네트워크 안에 있으면 응답 속도가 빠르다

 

- DNS Caching도 유효기간이 있다

 

즉 DNS란

문자열로 된 도메인 네임을 가지고 IP주소 정보를 알려주는 전화번호부 같은 역할을 한다

 

DNS들이 전 세계 인터넷과 무슨 상관일까?

Cache DNS 입장에서

- 어떤 PC가 Cache DNS 에게 www.naver.com의 IP주소를 알려달라고 요청

- 만약 Cache DNS가 www.naver.com의  IP주소를 알고 있었다면 즉시 알려줌

- 그게 아니라면 Cache DNS는 또 다른 DNS 즉, Root DNS에 물음

   ".com 알아?"

    ➡️ .com DNS 목록을 날려줌 (여러 주소들)

- 그 목록들 중에서 하나 골라서 .com 전문으로 하는 곳에 물어봄

   "naver 알아?"

    ➡️ naver를 전문으로 다루는 DNS 서버 주소를 알려줌

- 그것들 중에서 또 www를 물어서 IP주소를 가져옴

 

- 하지만 누가 한 번 물을 때 마다 이걸 계속 반복할 수는 없음

   ➡️ 응답이 갈 때는 유효기간이 딸려간다

- 예) '이건 5분동안 유효하니 누군가 5분 내로 .com에 대해 물으면 이 응답을 다시 알려줘라'

- 유효 기간이 지나면 다시 물음

 

출처: 강사님 화면

Root DNS 전 세계 13대

출처: 강사님 화면

 

nslookup으로 naver ip 받아보기

출처: 강사님 화면
출처: 강사님 화면

- root dns(은행으로 치면 한은)

- 여기다 대고 naver 주소 알려줘 하면 알려주지 않고

출처: 강사님 화면

- 다른 서버 주소들을 알려줌

- 그럼 이 중에서 하나를 골라

출처: 강사님 화면

- naver 주소를 물으면

출처: 강사님 화면

- 여기에 물으라고 알려줌

 

 

구글 DNS한테 물어보기

출처: 강사님 화면

- Aliases: 예명 본명

 

 

 

- 만약 악성 코드에 감염되는 등의 이유로

   DNS Cache가 훼손(cache poisoning), Host File 변조 되면

   주소창에 naver를 쳐도 5.5.5.5로 가는 게 아니라 이상한 곳으로 갈 수 있음

- 공유기 해깅, ISP 해킹...

 

 

출처: https://youtu.be/XXzxetbAIfA?si=fXwrX3uHzCAvUsjX