본문 바로가기
교재 및 CS공부/CS스터디

[CS스터디]면접을 위한 CS 전공지식 노트 #7

by veganwithbacon 2022. 10. 26.
반응형

✅IP 주소

컴퓨터와 컴퓨터 간의 통신은 IP 주소 기반으로 통신한다고 알고 있으나,

정확하게는 IP 주소에서 ARP를 통해 MAC 주소를 찾아 MAC 주소를 기반으로 통신한다.

 

✅2.4.1 ARP(Address Resolution Protocol) 

: IP 주소로부터 MAC 주소를 기반으로 IP의 MAC 주소와 다리 역할 

 

ARP로 가상주소인 IP 주소를 실 주소인 MAC주소로 변환, 

RARP는 실제 주소인 MAC 주소를 가상 주소인 IP주소로 변환

 

1. 장치 A가 ARP Request 브로드캐스트를 보내 IP 주소인 120.70.80.3에 해당하는 MAC주소를 찾는다.

2. 해당 주소에 맞는 장치 B가 'ARP reply 유니캐스트'를 통해 MAC주소를 반환하는 과정을 거친다.

3. IP 주소에 맞는 MAC 주소를 찾는다.

 

 

- 브로드캐스트

: 송신 호스트가 전송한 데이터가 네트워크에 연결된 모든 호스트에 전송되는 방식

 

- 유니캐스트

: 고유 주소로 식별된 하나의 네트워크 목적지에 1:1로 데이터를 전송하는 방식

 

✅2.4.2 홉바이홉 통신

✔홉바이홉 통신

: IP주소를 통해 통신하는 과정

 

홉(hop)이란? 

 : 건너뛰는 모습을 의미

=>통신망에서 각 패킷이 여러 개의 라우터를 건너가는 모습을 비유적으로 표현

   수많은 서브네트워크 안에 있는 라우터의 라우팅 테이블 IP를 기반으로 패킷을 전달하고 또 전달하며 라우팅을 수행한다

   최종 목적지까지 패킷을 전달한다.

 '라우팅' 과정을 거쳐 패킷이 최종 목적지까지 도달하는 통신

 

라우팅

: 어떤 네트워크 안에서 통신 데이터를 보낼 때 최적의 경로를 선택하는 과정(IP 주소를 찾아가는 과정)

  통신 장치에 있는 '라우팅 테이블'의 IP를 통해 시작 주소부터 시작하여 다음 IP로 이동하는 계속해서 이동하는 과정

 

 

라우팅 테이블

라우팅 테이블(routing table) :

- 송신지에서 수신지까지 도달하기 위해 사용

- 라우터에 들어가 있는 목적지 정보들과 그 목적지로 가기 위한 방법이 들어 있는 리스트

- 게이트웨이와 모든 목적지에 대해 해당 목적지에 도달하기 위해 거쳐야 할 다음 라우터의 정보를 가지고 있다.

 

✔게이트웨이

: 서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 하는 관문 역할

  - 컴퓨터나 소프트웨어를 두루 일컫는 용어

  - 서로 다른 네트워크 상의 통신 프로토콜을 변환해주는 역할을 하기도 한다

 

사용자는 인터넷에 접속하기 위해 수많은 톨게이트인 게이트웨이를 거쳐야한다.

 

  게이트웨이를 확인하는 방법

- 라우팅 테이블을 통한 확인(명령 프롬프트에서 netstat -r 명령어를 실행) 

 

위 사진처럼 IPv4,IPv6 경로 테이블이 라우팅 테이블이며, 게이트웨이,인터페이스 등이 나오는 것을 볼 수 있다.

 

✅2.4.3 IP 주소 체계

✔ IP 주소

- IPv4 : 32비트를 8비트 단위로 점을 찍어 표기/ 123.45.67.89 같은 방식으로 IP 주소를 나타냄

- IPv6 : 64비트를 16비트 단위로 점을 찍어 표기/ 2001:db8::ff00:42:8329 같은 방식으로 IP 주소를 나타냄

IPv6로 가고 있으나 현재 가장 많이 쓰이는 주소 체계는 IPv4이다.

 

✔클래스 기반 할당 방식

IP 주소 체계는 과거에는 A,B,C,D,E 다섯 개의 클래스로 구분

앞에 있는 부분을 네트워크 주소, 그 뒤에 있는 부분을 컴퓨터에 부여하는 주소인 호스트 주소로 놓아 사용한다

클래스 A,B,C는 일대일 통신

클래스 D는 멀티캐스트 통신

클래스 E는 앞으로 사용할 예비용으로 쓰는 방식

 

구분 비트 : 맨 왼쪽에 있는 비트 

클래스 A의 경우 맨 왼쪽 비트가 0이므로 0.0.0.0~127.255.255.255까지이다.

다른 네트워크도 이런 식의 주소 범위를 가진다.

 

네트워크의 첫 번째 주소는 네트워크 주소,

마지막 주소는 브로드 캐스트용 주소로 네트워크에 속해 있는 모든 컴퓨터에 데이터를 보낼 때 사용

예를 들어 192.168.1.0을 부여 받았다고 하면 

호스트 주소는 192.168.1.1~192.168.1.254이다

첫 번째 주소인 192.168.1.0은 네트워크 구별 주소이며, 마지막 주소인 192.168.1.255는 브로드캐스트용이므로

사용하면 안된다.

실질적으로 컴퓨터에 부여할 수 있는 주소는 호스트 주소 뿐인 것이다.

 

위 방법은 사용 주소보다 버리는 주소가 많기 때문에, 이를 해소하기 위해 DHCDP와 IPv6,NAT이 나온다.

 

✔ DHCP(Dynamic Host Configuration Protocol)

: IP 주소 및 기타 통신 매개변수를 자동으로 할당하기 위한 네트워크 관리 프로토콜

위 기술을 통해 네트워크 장치의 IP주소를 수동 설정 필요없이 자동으로 IP주소를 할당해준다.

 

많은 라우터와 게이트웨이 장비에 DHCP 기능이 있으며 대부분의 가정용 네트워크에서 IP 주소를 할당

 

✔ NAT(Network Address Translation)

: 패킷이 라우팅 장치를 통해 전송되는 동안 패킷의 IP 주소 정보를 수정해 IP 주소를 다른 주소로 매핑하는 방법

 

IPv4 주소 체계로만으로 많은 주소들을 모두 감당 못하므로,

이를 해결하기 위해 NAT로 공인 IP와 사설 IP로 많은 주소를 처리

 

NAT를 가능하게 하는 소프트웨어는 ICS, RRAS, Netfilter 등이 있다

각각의 다른 사설 IP에서 NAT 장치를 통해 하나의 공인 IP인17.2.3.4를 통해 외부 인터넷에 요청

 

NAT 장치를 통해 사설 IP장치를 공인 IP로 또는 공인 IP를 사설 IP로 변환하는데 쓰인다

 

✔ 공유기와 NAT

NAT를 쓰는 이유는 주로 여러 대의 호스트가 하나의 공인 IP 주소를 사용해 인터넷에 접속하기 위함

ex) 인터넷 회선 하나를 개통하고 인터넷 공유기를 달아 여러 PC를 사용할 수 있는데, 인터넷 공유기에 NAT 기능이 탑재

 

✔ NAT를 이용한 보안

NAT를 이용하면 내부 네트워크에서 사용하는 IP 주소와 외부에 드러나는 IP 주소를 다르게 유지하기 때문에 내부 네트워크에 대한 어느 정도의 보안이 가능해진다

 

✔ NAT의 단점

여러 명이 동시에 인터넷을 접속하게 되어 실제 접속하는 호스트 수에 따라 속도가 느려질 수 있다

 

 

✅2.4.4 IP 주소를 이용한 위치 정보

IP 주소는 인터넷에서 쓰는 네트워크 주소이기에 이를 통한 동/구까지 위치 추적이 가능

 

IP 주소를 기반으로 위치를 찾는 사이트 => https://mylocation.co.kr/ 

 

https://mylocation.co.kr/NotSupport.aspx?type=6

정상적인 방법으로 사이트에 접근하시기 바랍니다.

mylocation.co.kr

 

반응형

댓글