본문 바로가기

CS23

[네트워크] DNS(Domain Name Service) DNS를 한 마디로 정의하자면 호스트명과 IP주소를 매핑하는 역할을 하는 프로토콜이다. TCP/IP 네트워크 아키텍처 기준 애플리케이션 계층에 위치하는 프로토콜이다. 호스트명 -> IP주소로 매핑하는 것을 "이름해석" 이라고 한다. DNS를 이용하려면 DNS 서버가 필요한데 DNS서버에는 호스트명과 IP주소가 맵핑되어 등록이 되어 있어야 한다. 이외에도 DNS서버에는 여러가지 정보들이 저장 될 수있다. 이렇게 서버에 저장되는 정보를 "리소스 레코드"라고 부른다. DNS서버는 루트를 정점으로 계층구조로 되어 있다. 주소 질의 과정은 아래의 그림과 같이 이루어 지게 된다.(재귀질의). 사용자가 호스트의 이름을 지정하면 -> DNS 리졸버가 루트에서 부터 질의 한다. 매번 이렇게 질의하는 것은 리소스를 많이 .. 2022. 5. 31.
[네트워크] UDP(User Datagram Protocol) TCP는 애플리케이션 계층으로부터 스트림 데이터가 오게 되면 MMS와 MTU에 따라서 데이터를 여러개의 세그먼트로 분할하게 된다. 그러나 UDP는 데이터를 분할하는 기능이 없으므로, 분할이 필요하다면 애플리케이션 계층에서 분할하여 UDP를 실행해야 한다. UDP의 기능은 간단하다 데이터를 앱에 배분하기만 하는 기능을 한다. TCP와 다른점은 TCP는 클라이언트나 서버의 상태를 확인하면서 데이터 통신을 하지만 UDP는 상대방의 애플리케이션이 켜져 있던 꺼져 있던 데이터를 받던 말던 상관하지 않고 데이터를 보내기만 한다. 2022. 5. 30.
[네트워크] Port 호스트의 애플리케이션에 데이터를 분배하려면 포트 번호가 필요하다. TCP는 포트번호로 애플리케이션을 식별하여 데이터를 분배하기 때문이다. 포트는 16비트로 이루어져 있다. 즉 2의 16제곱만큼의 포트번호가 존재한다. 포트는 웰노운 포트, 등록된 포트, 동적/사설 포트로 나뉘게 된다. 2022. 5. 30.
[네트워크] ARP(Address Resolution Protocol) TCP/IP의 IP주소를 이용하여 호스트를 찾아 MAC주소를 매핑해주는 역할을 하는 프로토콜이다. ARP는 같은 네트워크 안에서만 동작한다. IP주소와 MAC주소를 대응 해주는 것을 "주소해석" 이라고 한다.(ARP를 이용하여 수행됨.) 접속된 PC가 IP패킷을 송신하려고 목적지를 정하면 자동으로 수행되게 된다. IP주소를 이용해서 호스트에게 MAC 주소를 질의 -> MAC주소 응답 받으면 주소해석한 IP주소와 MAC주소를 ARP캐시에 보존하게 된다. 2022. 5. 30.
[네트워크] ICMP(Internet Control Message Protocol) IP는 출발지와 목적지의 주소만 알고 전송할 뿐 패킷이 잘 도착했는지에 대해서는 확인하는 기능이 없다. 그렇기 때문에 패킷에 문제가 생겼을 경우 알 수 있게 해주는 기능을 하는 프로토콜이 ICMP이다. ICMP는 대표적으로 2가지 기능이 있다. 진단과 에러 리포트 기능이다. 첫 번째로 진단 기능이다. PING 커맨드를 이용하여 엔드투엔드 통신이 가능한지 확인하는 기능이다. 에코 요청을 보내 똑같은 메세지를 보내달라고 하여 정상적으로 응답이 오는지 확인하는방법이다. 두 번째로는 에러 리포트 기능이다. 중간에 어떠한 이유로 패킷이 폐기되었을 때 폐기한 기기가 ICMP를 이용하여 도달불능메시지를 출발지로 보내게 된다. 2022. 5. 30.
[네트워크] NAT(Network Address Translation) 목적지가 사설 주소인 패킷은 라우터에서 저절로 폐기 된다. 그러므로 NAT를 해야만 인터넷에서 서로 데이터를 주고 받을 수 있게 된다. NAT는 라우터에서 실시되며 NAT 테이블을 만들어서 저장 해놨다가 주소 변환을 해준다. 사설과 공인 주소를 1:1로 매핑하려면 굉장이 비용이 많이 들게 된다. 그러므로 사설 N : 공인 1로 할 수 있게끔 NAPT(Network Address Port Translation)를 하게 된다. 2022. 5. 30.
[네트워크] 공인 주소(Public Address)와 사설 주소(Private Address) IP주소에는 인터넷에서 범용적으로 사용되는 공인 주소와, 사설 네트워크에서 사용 되는 사설 주소가 있다.\ 대표적인 사설주소 10.0.0.0 ~ 10.255.255.255 172.16.0.0 ~ 172.31.255.255 192.168.0.0 ~ 192.168.255.255 사설 주소로 인터넷에서 통신하고 싶다면 NAT(Network Address Translation)을 해야한다. NAT는 라우터가 해준다. 라우터는 NAT 테이블을 만들어 변환 주소들을 저장하여, 데이터 통신이 오고감에 따라 알맞게 매핑하여 데이터를 전달해준다. 2022. 5. 30.
[네트워크] TCP/IP - TCP/IP는 네트워크 아키텍처이다. 네트워크 아키텍처는 여러 프로토콜이 모여서 이루게 된다. TCP/IP 네트워크 아키텍처는 총 4계층으로 되어 있다. 2022. 5. 30.
[네트워크] IP 주소란? IP란? TCP/IP 통신에서 인터넷 계층에 속해있는 프로토콜입니다. IP주소를 이용하여 엔드포인트간 엔드투엔드 통신을 합니다 IP 주소는 TCP/IP에서 통신상대를 식별하기 위한 식별 정보입니다. TCP/IP 통신을 할 때 인터넷 계층에서 IP패킷을 만들면서 IP 헤더정보를 입력해야 합니다. 이 때 출발지 IP 주소와 목적지 IP 주소가 입력 되어야 하기 때문에 네트워크 통신을 하기 위해서는 IP주소는 필수입니다. IP주소는 이더넷 인터페이스와 같은 인터페이스와 연관지어 설정 하게 됩니다. 예를 들면 노트북 같은 경우 유선 이더넷 인터페이스와 연결된 주소, 무선 LAN 인터페이스와 연결된 주소 이렇게 2개의 IP 주소를 가지기도 합니다. 이렇게 IP주소는 호스트 자체를 식별하는 것이 아닌 정확하게는 호.. 2022. 5. 27.