본문 바로가기
Develop/Network

[윤성우의 열혈 TCP/IP 소켓 프로그래밍] Chapter08 - 내용 확인 문제 풀이

by Tarra 2023. 6. 29.

 

 

 

 

 [윤성우의 열혈 TCP / IP 소켓 프로그래밍] 책을 기반으로 개인적으로  문제 풀이 및 개념을 정리한 내용입니다.

모든 소스 코드와 강의, 확인 문제의 정확한 답안은 (23년 7월 1일부터 전면 무료화 예정)

http://www.orentec.co.kr/

 

====== 오렌지 미디어 ======

 

www.orentec.co.kr

에서 확인할 수 있습니다.

 

 


 

 

01. 다음 중 DNS(Domain Name System)에 대한 설명으로 잘못된 것을 모두 고르면?

 

a. DNS가 존재하기 때문에 IP를 대신해서 도메인 이름을 사용할 수 있다.

 

b. DNS 서버는 사실 라우터를 의미한다. 라우터가 도메인의 이름정보를 참조하여 데이터의 진로를 결정하기 때문이다.

DNS 서버는 도메인 이름을 IP 주소로 변환하는 역할을 담당한다. 라우터는 네트워크 트래픽을 전달하기 위한 기기이며, 

DNS와는 별개의 기능을 수행한다.

 

c. 하나의 DNS 서버에 모든 도메인 정보다 다 등록되어 있지는 않다. 그러나 등록되지 않은 도메인의 IP 주소도 얻어올 수 있다.

 

d. DNS 서버는 운영체제에 따라서 구분이 된다. 즉, 윈도우 운영체제용 DNS 서버와 리눅스용 DNS 서버는 구분이 된다.

DNS서버는 운영체제에 종속되지 않는다. DNS 서버는 도메인 이름에 대한 정보를 저장하고 관리하는 서버로, 다양한 운영체제에서 동작할 수 있다. 운영체제는 DNS 서버에 접근하고 이를 이용하는 클라이언트 애플리케이션을 제공할 뿐, DNS 서버 자체는 운영체제와는 독립적이다.

 

정답 : b, d

 

 

02. 아래의 대화를 읽고 동수가 제안한 해결책으로 문제가 해결될 수 있는지 말해보자. 참고로 이는 실제로 대학의 컴퓨터실에서 여러분이 직접 확인할 수 있는 내용이다.

 

- 정수 : 동수냐? 야! 우리학교 네트워크 망에 연결되어 있는 디폴트 DNS 서버가 다운되어서 이력서를 넣어야할 회사들의 홈페이지에 접속이 안돼! 뭔가 방법이 없을까?

 

- 동수 : 인터넷과 연결은 되어있는데 DNS 서버만 다운된거야?

 

- 정수 : 응! 해결책 뭐 없을까? 그냥 주변에 있는 PC방으로 달려가야 하나?

 

- 동수 : 그렇게까지 할 필요가 뭐 있나? 내가 우리학교 DNS 서버 IP 주소를 불러줄 테니까, 네가 사용하는 컴퓨터의 디폴트 DNS 서버 주소를 변경해!

 

- 정수 : 그런다고 되냐? 디폴트 DNS 서버는 반드시 로컬 네트워크상에 연결되어 있어야한다고!

 

- 동수 : 아냐! 지난번에 우리학교도 디폴트 DNS 서버가 죽으니까, 네트워크 관리자가 다른 DNS 서버의 IP 주소를 알려주던데?

 

- 정수 : 그건 너네 학교에 DNS 서버가 여러 대 있으니까 가능했던거야!

 

- 동수 : 그런가? 네 말이 맞는 것 같기도 하다. 그럼 얼른 PC방으로 달려가봐라!

 

동수가 제안한 해결책으로 문제가 해결될 수 있다.

 

더보기

모범 답안

네트워크상에서의 특별한 제한이 없다면, 로컬 네트워크로 연결된 DNS 서버를 반드시 디폴트 DNS 서버로 지정해야 하는것은 아니다. 

따라서 동수가 제안한 방법은 해결책이 될 수 있다. 즉, 정수는 PC방으로 달려가지 않아도 된다.

 

 

03. 웹 브라우저의 주소 창에 www.orentec.co.kr를 입력해서 메인 페이지가 보이기까지의 과정을 정리해 보자. 단, 웹 브라우저가 접속한 디폴트 DNS 서버에는 www.orentec.co.kr에 대한 IP 주소가 등록되어 있지 않다고 가정하자.

 

1. 웹 브라우저는 DNS 서버에 해당 도메인의 IP 주소를 요청한다.

2. DNS 서버는 등록된 IP 주소를 알려주지 못하면, 다른 DNS 서버에 해당 도메인의 IP 주소를 요청한다.

3. 계층적인 DNS 서버 구조를 따라 도메인의 IP 주소를 찾아가며, 마지막으로 해당 도메인의 IP 주소를 알려준다.

4. 웹 브라우저는 얻은 IP 주소를 사용하여 해당 서버에 접속하여 메인 페이지를 요청한다.

5. 서버는 요청받은 메인 페이지를 웹 브라우저에 전송한다.

 

더보기

모범 답안

1. 호스트의 컴퓨터는 디폴트 DNS 서버에게 IP 주소를 묻는다.

2. 디폴트 DNS 서버는 IP 주소 정보를 가지고 있지 않으므로, 상위 DNS 서버에게 질의를 전달한다.

3. 디폴트 DNS 서버는 IP 주소 정보를 상위 DNS 서버로부터 수신한다.

4. 디폴트 DNS 서버는 IP 주소 정보를 호스트에게 전달한다.

5. 웹 브라우저는 전달받은 IP 주소를 참조하여 서버에 접속한다.

 

 

 


출처 : [윤성우의 열혈 TCP / IP 소켓 프로그래밍] / 윤성우 저 / 오렌지 미디어

https://cafe.naver.com/cstudyjava

 

윤성우의 프로그래밍 스터디그룹 [C/... : 네이버 카페

윤성우의 스터디 공간입니다. C와 JAVA를 공부하시는 분들은 모두 들어오세요. ^^

cafe.naver.com