- 네트워크 상에서 데이터의 전송을 담당하는 계층으로 서로 다른 네트워크 간의 통신을 가능하게 하는 역할을 수행합니다. (연결성 제공)
- 단말을 구분하기 위해 논리적인 주소로 IP 주소를 할당하게 되고 이 IP 주소로 네트워크 상의 컴퓨터를 식별하여 주소를 지정할 수 있도록 합니다.
- 네트워크끼리 연결하고 데이터를 전송하는 기기인 '라우터'라고 하며, 라우터에 의한 네트워크 간의 전송을 '라우팅'이라고 합니다.
- 라우터가 내부의 라우팅 테이블(Routing Table)을 통해 경로 정보를 등록하여 데이터 전송을 위한 최적의 경로를 찾는데, 이렇게 출발지와 목적지 간의 데이터 전송 과정을 가리켜 End-to-End 통신이라고 부릅니다.
제목 | 내용 |
---|---|
데이터 전송 단위 | 패킷(packet)) |
전송 주소 | IP |
프로토콜 | IP, RIP, ARP, ICMP |
장비 | 라우터 |
OSI : 3계층 네트워크 계층(Network Layer) |
- 상위 레벨 데이터를 패킷 안으로 캡슐화하여 데이터 종류에 상관없이 한 호스트에서 다른 호스트로 그 패킷들을 라우팅해줍니다.
- 공통점 : 네트워크 통신에서 통신기기의 식별번호 역할
IP주소
- 소프트웨어 기반으로 생성된 논리적 주소(Logical Address)입니다.
- 통신기기마다 고유하게 할당되어 있는 것이 아니라, 대부분 통신사에 일정 금액을 지불하고 받아오는 것이기 때문에 경우에 따라 바뀔 수 있습니다.
MAC 주소
-
하드웨어 기반으로 생성된 물리적 주소(Physical Address)입니다.
-
통신기기의 하드웨어 자체에 부여된 고유한 식별번호를 나타내며 변경될 수 없다.
-
이러한 특성 때문에, MAC 주소는 외부에서 내부의 사설 아이피로 통신 요청을 할 때 중요한 역할을 합니다. 사설 아이피는 외부에서 볼 수 없기 때문에 외부에서는 어떤 사설 아이피가 최종 목적지인지 알 수가 없는데, 이 때 최종 목적지의 MAC주소를 알고 있다면 아이피 주소에 구애받지 않고 원하는 목적지까지 도달할 수 있게 됩니다.
-
MAC 주소는 데이터 링크 계층에서 작동하며, IP 주소는 네트워크 계층에서 작동합니다.
-
MAC 주소를 찾아주는 게 ARP 프로토콜, IP 주소를 찾아주는 건 RARP 프로토콜입니다.
- ICMP 입니다. ICMP는 TCP/IP에서 IP 패킷을 처리할 때 발생되는 문제를 알려주는 프로토콜입니다.
- IP에는 오로지 패킷을 목적지에 도달시키기 위한 내용들로만 구성되어 있습니다.
- 따라서 정상적으로 목적지 호스트로 도달하는 경우 IP에서 통신이 성공하고 종료되므로 아무런 문제가 없습니다.
- 그러나 전달해야 할 호스트가 꺼져 있거나, 선이 단절된 비정상적인 경우 이 패킷 전달을 의뢰한 출발지 호스트에 이러한 사실을 알려야하지만, IP에는 그런 에러에 대한 처리 방법이 명시되어있지 않습니다.
- 이러한 IP의 부족한 점을 메꾸기 위하여 사용되는 것이 ICMP 프로토콜이다.
- ICMP는 도착지 호스트가 없거나, 포트가 닫혀 있는 등의 에러 상황이 발생할 경우 IP헤더에 기록되어 있는 출발지 호스트로 에러에 대한 정보를 보내주는 역할을 합니다.
네트워크 문제로 인해 IP 패킷이 전달되지 않는 경우 라우터와 같은 오류보고 프로토콜 네트워크 장치가 소스 IP 주소로 오류 메시지를 생성하는 데 사용됩니다. ICMP 는 패킷 전달을 위해 라우터, 서비스 또는 호스트에 도달 할 수 없다는 인터넷 게이트웨이 를 나타내는 메시지를 소스 IP 주소로 작성하고 보냅니다 .
- 패킷의 생존 시간을 의미합니다.
- IP 패킷 내에 있는 값 으로서, 그 패킷이 네트워크 내에 너무 오래 있어서 버려져야 하는지의 여부를 라우터에게 알려주는 역할을 합니다.
- TTL 은 일정시간을 초단위로 지정하고, 설정 시간이 지나면 패킷을 버리도록 하기위해 고안한 방법입니다.
- 각, Router는 TTL 패킷이 날라올때 TTL Value를 1씩 감소시킵니다.
- TTL 값이 0이 되었을때는 라우터는 그것을 감지하여 해당 패킷을 버리고 ICMP 메세지를 발신지 host 에게 보냅니다.
-
- IP Spoofing : IP 주소를 속여서 발생되는 ICMP로 공격하는 것
- 대응
외부에서 들어오는 패킷 중에서 출발지 IP주소에 내부망 IP 주소를 가지고 있는 패킷을 라우터 등에게 패킷필터링을 사용해서 막습니다. 그러나 내부망 사용자에 의한 공격을 막을 수 는 없으므로 각 시스템에 TCP Wrapper, ssh를 설치해서 운영하고, rlogin 등과 같이 패스워드의 인증과정이 없는 서비스를 사용하지 않도록 합니다.
-
- Ping of Death : 죽음의 핑으로 규정 크기 이상의 ICMP 패킷으로 시스템을 마비시키는 공격을 말합니다.
- ping을 이용해여 ICMP 패킷을 정상 크기보다 훨씬 크게 만들어 공격 대상에게 보내는 공격입니다.
- <방법>
-
1 .공격자가 구글에게 패킷의 크기를 65500 BYTE나 늘려서 PING을 보냅니다.
-
- 크기가 큰 패킷은 네트워크 상에서 분할되어 목적지로 전송되므로 65500BYTE의 패킷은 100BYTE의 작은 패킷들로 분할되어 구글에게 가게됩니다.
-
- 분할되어진 수많은 패킷을 받은 공격 대상은 부하가 발생해 죽게됩니다.
-
- 대응
가장 간단한 방법은 ICMP 패킷을 막는 것입니다.서버의 앞단 혹은 서버에서 ICMP 패킷을 블로킹해주는 설정을 통해 '죽음의 핑'을 피할 수 있습니다.
- IDS,IPS 임계치 설정
-
-
- 정적 라우팅
- 정적 라우팅은 라우팅 테이블에 경로를 수동으로 추가해야하는 프로세스입니다 .
- 장점
- a. 수동으로 정책을 부여하기 때문에 라우터 CPU에 오버헤드가 없어진다.
- b. 네트워크 관리자가 라우팅 동작을 모두 제어할 수 있기 때문에 보안상 더 유리한 부분이 있다.
- 단점
- a. 네트워크 규모가 커질수록 네트워크 관리자의 작업량이 많이 투입된다.
- b. 라우팅 정보가 수동으로 되어 있어 관리자가 실수로 인해 네트워크 정보를 잘 못 입력할 수 있는 인재가 발생할 수 있다. 즉, 네트워크 관리자가 사내 네트워크 구성을 정보를 잘 알고 있어야 한다.
- c. 네트워크 구성 변경에 따라 end to end 트래픽이 라우팅이 되지 않을 때 백업 구성이 되지않아 관리자가 경로를 재구성할 때까지 사용할 수 없다.
- 정적 라우팅
-
- 동적 라우팅
- 동적 라우팅은 라우팅 테이블에서 경로의 현재 상태에 따라 경로를 자동으로 조정합니다.
- 동적 라우팅은 프로토콜을 사용하여 네트워크 대상과 도달하는 경로를 검색합니다.
- 하나의 경로가 다운되면 네트워크 대상에 도달하도록 자동 조정됩니다.
- 장점
- a. 네트워크 관리자의 라우팅 정책 유지를 위한 작업 리소스가 적다.
- b. 네트워크 구성과 상황에 맞게 최적의 경로를 선택할 수 있다.
- c. end to end 경로 손실이 발생하더라도 백업 경로가 있기 때문에 내결함성을 가진다.
- 단점
- a. 다른 장비들과 통신하기 위해 더 많은 대역폭을 소비합니다.
- b. 정적 라우팅보다 안전하지 않습니다.
- 동적 라우팅
-
-
공인 IP, 사설 IP 방식을 사용해 IP 주소의 고갈을 방지합니다.
-
공인 IP
- 전 세계에서 유일
- 외부, 내부 상관없이 해당 IP에 접속
-
사설 IP
- 하나의 네트워크 안에서 유일
- 내부에서만 접근이 가능
-
사설망이란 공유기를 사용한 인터넷 접속 환경일 경우 공유기까지는 공인 IP 할당을 합니다.
-
이후 공유기에 연결되어 있는 가정이나 회사의 각 네트워크 기기에는 사설 IP를 할당하여 그룹으로 묶는 방법입니다.
쉬운 비유
-
일종의 반장을 뽑는 것과 같다.
-
학교의 회의에 참여하는데 모든사람이 참여할수 없으니 (모든 학교의 각 반에게 공인 IP 할당할 수 없음 - 고갈 위험 존재) 학교의 대표 주자인 반장(게이트웨이(Gateway)- 하나의 공인IP 소유)이란걸 뽑는다.
-
그리고 그 반장은 대표로 나가서 학생들의 의견을 대신 전달하며, 학교 회의 내용을 다시 학생들에게 전달한다.
-
여기서 반장이 게이트웨이(Gateway)로 비유할수 있으며, 반을 사설망 (사설 IP 소유), 학생들은 각 전자기기들, 학교를 인터넷으로 비유하면 딱 들어 맞게 된다.
-
-
필요한 네트워크 주소만 호스트 IP로 할당할 수 있게 만들어 네트워크 낭비를 방지하기 위한 32bit 2진수 문자열입니다.
-
아이피 주소에서 네트워크 주소와 호스트 주소를 나눠주는 역할을 합니다.
-
호스트(개인)들 간의 네트워크 통신(편지의 교환)은 같은 네트워크 주소/네트워크 대역(같은 국가) 내에서만 이루어 진다고 생각하면 된됩니다.
-
다른 네트워크 대역의 호스트들과 연결하는 방법은 라우팅(Routing)에 관련이 있습니다.
-
똑같은 아이피 주소라 하더라도, 서브넷 마스크가 다르면, 아이피 주소가 의미하는 바가 완전히 달라지게 됩니다.
- 한 개의 네트워크를 서브넷 마스크를 이용해 여러 개의 서브넷 네트워크로 분할 하는 것입니다.
- 서브넷마스크를 이용해 한 개의 네트워크를 여러 개의 서브넷 네트워크로 분할해 네트워크 관리자가 네트워크 성능을 향상시키기 위해 자원을 효율적으로 분배하는 것입니다.
-
- 게이트웨이(Gateway)입니다.
- 게이트웨이(Gateway)란 한 네트워크(segment)에서 다른 네트워크로 이동하기 위하여 거쳐야 하는 지점입니다.
- 게이트웨이(Gateway)는 서로 다른 네트워크(이기종 네트워크)를 연결해줍니다.
- 서로 다른 네트워크의 프로토콜이 다를 경우에 중재 역할을 수행합니다.
- 집 컴퓨터에서 인터넷에 접속하려는 경우
집 -> 공유기 -> 인터넷 제공 회사 라우터 -> 인터넷망
경로를 따라갑니다. - 이 때, 공유기와 인터넷 제공 회사의 라우터는 이전의 단계에서 다음 단계로 넘어 갈 때의 게이트웨이 역할을 담당합니다.
- 인터넷에 접속하기 위하여는 수많은 게이트웨이를 거쳐야합니다.
- 이 때, 거치는 게이트웨이의 수를 홉 수(hop count)라고 합니다. 위의 예제에서는 인터넷에 연결할 때까지 필요한 hop count는 2입니다.
- 목적지 컴퓨터의 IP 주소를 이용하여 MAC 주소를 찾기 위한 프로토콜입니다.
- 네트워크 계층 주소와 데이터 링크 계층 주소 사이의 변환을 담당합니다.
- IP 주소를 물리 주소인 MAC 주소로 변환합니다.
ARP 요청 (request)
- 출발지 컴퓨터가 목적지 주소를 모르면 MAC 주소를 알아내기 위해 네트워크에 브로드캐스트를 합니다.
ARP 응답 (reply)
- 지정된 IP 주소를 가진 컴퓨터는 MAC 주소를 응답으로 보냅니다.
- 이를 통해 출발지 컴퓨터는 이더넷 프레임을 만들 수 있습니다.
ARP 테이블
- 출발지 컴퓨터에서는 MAC 주소와 IP 주소의 매핑 정보를 메모리에 보관합니다.
- 이후 데이터 통신을 할 때 테이블을 참고해 데이터를 전송합니다.
- IP 주소가 변경되면 MAC 주소도 함께 변하기 때문에, 정보를 일정 시간이 지나면 삭제하고 다시 ARP 요청을 합니다.
- L3 스위치는 하드웨어적인 방법으로 목적지를 찾는 방식. 기존의 Router는 소프트웨어적으로 들어오는 IP를 보고 라우팅을 하였지만 L3 Switch는 주로 MAC Address를 이용하고 추가적으로 IP 주소도 사용하여 라우팅을 수행한다.
- 적용 범위에도 큰 차이가 있는데 라우터는 WAN에 대해서 수행하는 것이 목적이고, L3 Switch는 LAN에 대해서 수행하는 것이 목적이다.
- LAN에 대해서 수행할 때 스위치를 논리적으로 분할해서 사용하는 VLAN 기법을 사용한다.
https://hahahoho5915.tistory.com/12
https://blog.naver.com/llhbum/221899395130