[CS 스터디] 네트워크 2일차 - TCP/IP

강아람·2023년 1월 15일
0

네트워크

목록 보기
1/11
post-thumbnail

📚 ARP

ARP 프로토콜이란?

같은 네트워크 대역에서 통신하기 위해 필요한 MAC 주소를 IP 주소를 이용해 알아내는 프로토콜


ARP 프로토콜이 하는 일

실제로 다른 컴퓨터와 통신을 하기 위해서는 이더넷 통신, 즉 MAC 주소를 이용해야 한다. 그러나 우리는 다른 컴퓨터의 IP 주소만 알아도 통신할 수 있는데 이를 가능하게 해주는 것이 ARP 프로토콜이다!

목적지 IP 주소를 목적지 MAC 주소로 변환해주는 역할을 한다.

ARP 프로토콜 구조

  • 출발지 물리 주소(출발지 MAC 주소) - 6byte
  • 출발지 프로토콜 주소 (출발지 IP 주소) - 4byte
  • 목적지 물리 주소(목적지 MAC 주소) - 6byte
  • 목적지 프로토콜 주소 (목적지 IP 주소) - 4byte



ARP 프로토콜의 통신 과정

A 컴퓨터가 B 컴퓨터와 통신을 하기 위해 MAC 주소를 알아내려고 한다.

1) A 컴퓨터가 ARP 요청 프로토콜(3계층)을 이더넷 프로토콜(2계층)로 캡슐화하여 패킷을 브로드캐스트 방식으로 네트워크에 보낸다.

IP 프로토콜이 ARP 프로토콜에게 ARP 요청 메시지를 생성하도록 요청한다.

  • ARP 요청 프로토콜에서 목적지 MAC 주소는 0으로 비워둔다.
  • 이더넷 프로토콜에서 목적지 MAC 주소는 브로드캐스트 주소로 설정한다.

2) 스위치(2계층 장치)가 이더넷 프로토콜의 목적지 MAC 주소를 보고 같은 네트워크의 모든 호스트에게 해당 프레임을 보낸다.

  • 스위치는 2계층 장치이기 때문에 ARP 프로토콜의 내용을 보지 않고 전송한다.

3) 같은 네트워크 내의 모든 호스트는 받은 프레임을 역캡슐화하여 ARP 프로토콜에게 전달한다.


4) B 컴퓨터는 본인의 IP 주소와 목적지 IP 주소가 일치한 것을 보고, ARP 응답 프로토콜의 출발지 IP 주소에 자신의 IP 주소를 기입하여 A 컴퓨터에게 전송한다.

  • 일치하지 않는 경우 패킷을 버린다.

5) A 컴퓨터는 ARP 응답 메시지를 보고 B 컴퓨터의 물리 주소를 얻게 되어 통신이 가능해진다.



ARP 테이블

통신했던 IP 주소와 MAC 주소를 대응시켜 저장한 테이블로, 일정 시간이 지나면 데이터가 폐기되는 캐시 형태의 저장소이다.


출처
https://www.youtube.com/watch?v=LDsp-Xb168E&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi&index=7



📚 TCP/IP

NIC(Network Information Center): 공인 IP 주소(유일한 주소)를 할당, 관리하는 기관

각각의 네트워크에 접속하는 호스트들은 고유 주소를 가지고 있어서 다른 네트워크에 연결된 호스트와도 데이터 통신이 가능하다.

TCP/IP는 이렇게 네트워크 상에서 통신, 인터넷을 사용하기 위해 꼭 필요한 프로토콜이다.


TCP/IP(Transmission Control Protocol/Internet Protocol)란?

TCP(Transmission Control Protocol)란?

컴퓨터가 다른 컴퓨터와 데이터 통신을 하기 위한 프로토콜로, 4계층인 전송 계층에서 사용된다.
송신자와 수신자의 논리적 연결을 담당하는 부분으로, 신뢰성 있는 연결을 유지할 수 있도록 하는 프로토콜이다.


IP(Internet Protocol)란?

인터넷을 통해 패킷 통신을 하기 위한 프로토콜로, 3계층인 네트워크 계층에서 사용된다. 한 EndPoint에서 다른 EndPoint로 갈 때 IP를 통해 목적지를 찾는 것을 Routing이라고 하는데, Routing을 통해 대역이 다른 IP들의 목적지를 찾을 수 있도록 하는 프로토콜이다.

TCP/IP는 TCP와 IP를 함께 사용한다는 의미로, IP 주소 체계를 따르고 IP Routing을 이용해 목적지에 도달하며 TCP의 특성을 활용해 송신자와 수신자의 논리적 연결과 신뢰성을 보장하는 통신 프로토콜이다.


NAT(Network Address Translation)

앞서 이야기 했듯, NIC에서 할당해 준 공인 주소를 사용하여 인터넷에 접속하는 것은 한정적인 공인 주소로 인해 한계가 있다.
따라서 이를 보완하기 위해 사설 주소를 함께 사용한다.

NAT
내부 네트워크(같은 네트워크 상)에서는 공인되지 않은 IP 주소를 사용하고, 인터넷으로 나갈 때에만 공인 주소(유일한 IP)를 사용하여 통신하는 방식

PAT
여러 호스트가 동일한 IP 주소를 사용하지만 포트 번호만 바꾸어 사용하는 방식인 PAT가 있다.


IP 주소 (IPv4)

네 자리의 십진수로 이루어져 있고, 십진수는 이진수 8자리로 이루어져 있다.

같은 네트워크 상에 있는 PC들은 IP에 동일한 네트워크 부분과 동일한 서브넷 마스크를 가져야 한다.

💻 IPv6
2011년 IPv4의 IP 주소는 모두 소진되어 2011년부터 IPv6를 할당하고 있다고 한다..!


DHCP(Dynamic Host Configuration Protocol)

IP 주소의 충돌을 방지하기 위해 호스트마다 다른 IP 주소를 할당해야 하는데, 네트워크 상에 할당된 모든 IP 주소를 관리하기 어렵다.

그래서 IP 주소를 자동으로 배정하기 위해 DHCP를 사용한다. DHCP 서버는 같은 네트워크 상의 모든 클라이언트와 연결되어 있어 모든 IP 주소를 알고 있다.

DHCP가 IP 주소를 할당하는 과정

1) 호스트는 네트워크 상에 브로드캐스트 메시지를 보내 DHCP 서버를 찾는다.
2) 패킷을 받은 DHCP 서버들은 자신의 IP 주소와 할당할 IP 주소를 담아 응답 메시지를 브로드캐스트로 보낸다.
3) 요청을 보낸 호스트는 DHCP 서버를 선택했다는 메시지를 브로드캐스트로 보낸다.
4) 선택된 DHCP는 할당 정보를 담아 브로드캐스트로 보낸다.

0개의 댓글