Information Security Study/Network

01. Network Basic

김야키 2019. 10. 29. 20:22

[ 네트워크의 기초 ]

-      정의

   컴퓨터 - 케이블 - 데이터를 연결

 

-      전송방식

   Unicast : 일 대 일 -> 점

   Multicast : 일 대 다 -> 그룹

   Broadcast : 일 대 전체 -> 모두

   명시적인 통신

 

-      LAN (Local Area Network)

   근거리 통신망

   조직 내부 혹은 비교적 좁은 지역을 연결

   속도가 빠름

   Broadcast를 동작하는 내부 -> Broadcast 도메인

   Ethernet(protocol) Switch

   Switch는 LAN을 구성하는 장비 -> Broadcast 도메인 확장

 

-      WAN (Wide Area Network)

   원거리 통신망

   물리적으로 넓은 범위를 연결

   속도가 느림

   LAN의 외부가 모두 포함 됨 -> Router를 기준으로 시작됨

   ISP, SP

   Router 장비로 구성 됨 -> 경로를 이용하여 정확한 통신

 


[ 통신 규약(Protocol) ]

-      Protocol : 규칙과 약속

 

-      Network Model

   통신이 일어나는 절차를 각 기능별로 모듈화시켜 만들어놓은 구조

   OSI 7 Layer -> 문제 확인용 모델

   TCP/IP Model -> 실제 사용중인 모델

 

-      OSI 7 Layer

   1계층 - 물리계층

   물리적인 계층

   전기 신호 전달

   2계층 - 데이터 링크 계층

   MAC 주소 구분

   LAN 구성

   Switch

   3계층 - 인터넷 계층

   IP 주소 구분

   WAN 구성

   Router

   4계층 - 전송 계층

   Port 주소 구분

   데이터 전송 방식 구분

   서비스 구분

   TCP, UDP

   5계층 - 세션 계층

   특정 종류(연결이 필요한 종류)의 서비스를 받을 때만 사용

   6계층 - 표현 계층

   상위계층에서 만들어진 데이터의 형태 표현

   인코딩, 압축, 암호화에 대한 정보

   7계층 - 응용 계층

   사용자 인터페이스 계층으로 사용자의 명령을 받아주는 계층

 

-      전송 방법

   Encapsulation : 7 -> 1계층 순서로 데이터를 포장

   Decapsulation : 1 -> 7계층 순서로 데이터를 해석

   택배 송/수신 과정과 비슷

   En : 상품 포장 과정

   De : 상품 확인 과정

   계층별로 각 장비들은 전 계층의 데이터를 확인 할 필요는 없음


 

[ 계층별 장비 및 역할 ]

-      케이블

   Straight Cable

   핀 배열이 다른 장비들은 양쪽의 핀 배열이 같기 때문에 Straight Cable이 마땅하다.

   Cross Cable

   핀 배열이 같은 장비들은 정보를 보낼 시 양 쪽의 핀이 다른 곳으로 전송 되 반송파가 발생하기 때문에 핀을 맞춰주기 위해서 Cross Cable을 사용

 

-      1계층 - Physical Layer

   비트 형태의 신호를 전기적 신호로 변환

   전기 신호 전달

   장비

   Hub

   들어온 포트를 제외한 나머지 포트에 복사 후 전달

   물리적 개념의 전달 방식

   Half-duplex (반이중) -> 한 쪽이 말하면 다른 한 쪽은 못함

   신호 충돌이 발생할 수 있음

   LAN을 구성하는 장비

 

-      2계층 - Data Link Layer

   데이터 단위 : Frame

 


[ Frame ]

 

   Preamble(64bit) : 받을 준비를 시킴

   데이터를 받을 때 준비

   보내는 장비의 초당 bit의 속도(bps) 알릴 수 있음

   Destination Address(48bit) : 받는 장비 MAC 주소

   Source Address(48bit) : 보내는 장비 MAC 주소

   Type(16bit) : 상위 계층의 Protocol값

   FCS - Frame Check Sum(24bit) : 데이터 손상 여부 확인

   역할

   인접 장비 접근을 위한 MAC주소 지정

   Network 환경 정보 지정

   Broadcast Domain 논리적 분할

   주소 : MAC Address

   물리 주소

   LAN 카드 내에 붙어있음

   목적지가 Broadcast 주소(FF:FF:FF:FF:FF:FF)라면 모든 데이터를 처리

   Broadcast주소를 받을 경우 Flooding을 할 수 있음

   기술 : Ethernet (Protocol)

   특정 목적 주소의 장비에 전달

   목적지가 아닌 장비가 데이터를 받으면 데이터를 버림

   장비

   MAC주소를 학습하는 장비

   Switch(L2 Switch), Bridge

   Full-duplex

   기존의 Hub는 연결된 모든 장비로 보내지만 2계층 장비들은 Ethernet Protocol을 확인할 수 있기 때문에 선별하여 데이터를 보내줄 수 있음

   연결된 장치들의 MAC주소를 학습할 수 있으며 정보를 저장할 수 있음

   Broadcast Domain 확장

   Collision Domain 감소

   Hub와 같이 Flooding을 하기는 하지만 모르는 주소가 올 경우에만 수행

   처음 단말이 데이터를 전송하면 수신 단말의 주소를 모를 경우 데이터를 Flooding

   그렇게 하면서 단말들의 MAC주소와 포트를 학습

   Learning, FloodingForward, Filtering, Aging 할수 있음

   [참고] 관리자가 Switch와 통신을 하기 위해서는 IP주소가 필요 하긴 함

   Multi Layer Switch

 

-      3계층 - Internet Layer

   데이터 단위 : Packet

   역할

   최종 목적지 구분을 위한 IP주소 지정

   종단 목적지 논리 주소 지정

   최종 목적지로 데이터가 전달되는 경로 설정

   주소

   IP Address

   End Point Device에 주소를 부여하기 위해 사용되는 주소

   IP의 주소는 겹치지 않도록 클래스로 분할하여 사용

   Classful

   IP를 효율적으로 할당하고 관리하기 위해 도입된 체계

   전체 IP를 지정된 크기로 Class라는 그룹으로 분리

   IP낭비가 심하다는 단점이 있음

   Classless

   Subnet이라는 방식을 이용해 IP주소의 낭비를 막음

   공인 IP, 사설 IP

   공인 IP : 인터넷이 가능한 주소

   사설 IP : LAN에서 마음대로 사용할 수 있는 주소

   인터넷은 안됨

   라우터에 등록되어 있지 않음

   IP 주소의 특징

   네트워크의 가장 처음 IP주소는 네트워크 ID

   네트워크의 가장 마지막 IP주소는 Broadcast IP

   IP 주소 설정

   LAN 구성 -> 같은 네트워크 도메인 주소를 사용해야 함

   인터넷이 가능한 위치에서는 할당 받은 네트워크 주소를 사용해야 함

   IP 주소, Subnetmask

   2개만 있으면 LAN만 가능

   Gateway, DNS

   다른 네트워크를 가기 위한 곳 즉, WAN으로 나가기 위한 주소

   Subnet(Sub network)

   IP를 효율적으로 나누기 위한 방법

   사용하는 목적

   IP주소 부족현상 보충

   Broadcast Domain 논리적 분할

   보안

   기술(Protocol) : IP, ICMP, ARP …

   IP (Internet Protocol)

[ IP Header ]

   3계층 Protocol

   Packet을 지정된 ‘목적지’로 전달하는 역할

   목적지 : End Point Device

   비 연결 및 비 신뢰성

   ICMP (Internet Control Message Protocol)

   IP에서 발생한 문제를 알려주기 위한 목적

   IP를 사용했을 때 발생할 비 연결 및 비 신뢰성의 문제를 커버할 수 있음

   하지만 단말 측에서는 받아도 해결은 안함

   네트워크를 진단하는 기능이 있음

   기능

   Ping, 목적지를 찾을 수 없을 때 반환, TTL

 

   ARP (Address Resolution Protocol)

[ ARP Packet ]

   목적지의 MAC 주소를 확인할 때 사용

   논리 주소를 이용하여 MAC주소를 알아 올 수 있음

   Request -> Broadcast, Response -> Unicast

   [참고]

   해킹에서 가장 많이 사용되는 프로토콜

   장비

   경로를 학습하는 장비

   Router

   Broadcast Domain을 분할하기 위한 것

   최적의 경로를 결정해 주는 기능

   Routing Table 정보를 이용하여 데이터를 원하는 경로로 전달

   설정이 없으면 학습을 할 수 없음

   L3 Switch

 

-      4계층 - Transport Layer

   역할

   서비스 구분

   상위 계층에서 사용되는 서비스의 Port를 지정

   데이터 전송 방식 구분

   연결 및 비연결

   필요에 따라 단편화 작업 수행

   주소

   Port Address

   Program, Application으로 데이터를 전달하기 위한 주소

   2Byte(16bit) : 65536

   Well Known Port : 0~1023(잘 알려진 약속된 서비스에 사용)

   Registed Port : 1024~49151(온라인에서 따로 등록을 한 프로그램의 주소를 할당)

   Dynamic Port : 나머지 주소(임의로 사용 가능)

   Protocol

   TCP (Transmission Control Protocol)

   연결 지향

   연결 설정 -> 데이터 전송 -> 연결 종료

   신뢰성 보장

   순차적인 데이터 전송

   확인 응답및 재전송

   흐름제어

   데이터 전달에 지연 현상이 발생했을 때 데이터의 양을 조절 -> Sliding Window

   혼잡제어

   UDP (User Datagram Protocol)

[ UDP Datagram ]

   주소 지정 기능이 끝

   단순함, 비연결 지향, 신뢰성이 없음

   빠른 데이터 전송에 용이함

   데이터를 순차적으로 정리 할 필요가 없음

   대표 프로그램

   DNS, TFTP, SNMP, ...

   Three Way Handshake

   Flag

   SYN, ACK, RST, PSH, FIN, URG

   [자세한 내용 참조]

   https://kimunderground.tistory.com/category/2%ED%95%99%EB%85%84/%EC%9D%B8%ED%84%B0%EB%84%B7%20%EB%B3%B4%EC%95%88

 

[ Cisco Packet Tracer ]

-      Cisco IOS

   Mode

   User Mode

   Interface표시

   Switch>

   Router>

   사용자 모드

   명령어 확인만 가능

   enable’명령어로 Privilege Mode로 전환 가능

   Privilege Mode

   Interface표시

   Switch#

   Router#

   관리자 모드

   disable’명령어로 User Mode로 전환 가능

   전체적인 설정 확인

   show run

   설정 저장

   configure’혹은config’로 Global Configuration Mode로 전환 가능

   Global Configuration Mode

   Interface표시

   Switch(config)#

   Router(config)#

   전역 설정

   장비의 전체의 공통적인 설정을 할 수 있음

   장비별 명칭을 변경할 수 있음

   exit’명령어로 이전 단계로 돌아갈 수 있음

   end’, ‘Ctrl + z’는 Privilege Mode로 돌아감

   Router에서는interface [fa 0/0]’으로 Global에서 개별설정으로 특정 포트 설정으로 들어갈 수 있음

   Regional Setting Mode

   개별 설정

   Router(config-if)#

   전역 설정에서 장치에 있는 여러 포트별로 설정을 할 수 있음

-      사용을 위한 초기 설정

   장비 이름 변경

   Router(config) # hostname [name]

   인증 기능 설정

   관리자 모드 진입 PW설정

   Router(config) # enable secret [password]

   사용자 모드 인증 설정

   Router(config) # line console 0

   Router(config-line) # password [password]

   User Mode진입 password 생성

   Router(config-line) # login

   User Mode진입 password 적용

   유휴시간 설정

   Router(config-line) # exec-timeout [0~35791]

   0으로 입력할 경우 유휴시간 제거

   네트워크를 통한 연결

   IP 설정

   Router(config) # interface [fa|se] [번호]

   Router(config-if) # ip address [IP] [Subnet]

   Router(config-if) # no shutdown

   기타 사용 편의 설정

   실시간 원격 접속 설정

   Router(config) # line vty 0 4  # 실시간 5개 접속 가능

   Router(config-line) # password [password]

   Router(config-line) # login

   IP Domain Lookup해제

   장비를 사용할 때 오타를 내면 장비는 해당 문자를 명령으로 받아들여 IP로 재해석 하게

   때문에 이 옵션을 해제

   Router(config) # no ip domain-lookup

   최종 설정 저장

   Router# copy running-config startup-config

 

[ Router ]

-      Router 네트워크 설정

   인터페이스 설정

   1계층

   선 연결 후 포트 개방

   2계층

   프로토콜, 대역폭 설정

   클락 신호 발생(동기화 설정)

   이더넷은 프로토콜 자체적으로 위에 있는게 정해져 있음

   3계층

   논리적 주소(IP 주소) 설정

   라우팅 설정

-      DCE (Data Communication Equipment)

   AP, 신호 변환 장치, CSU/DSU, 모뎀

   신호 전달 장치

   DCE방향의 인터페이스에서는 Clock Rate 신호를 발생 시켜야

-      DTE (Data Terminal Equipment)

   종단 단말 장치

   디지털 데이터를 입/출력하는데 사용하는 장치

-      Routing Table

   Router는 LAN상에서 MAC주소를 학습 하는처럼 Broadcast를 할 수는 없음

   따라서 사용자의 설정에 의해 학습 된 Router의 연결 정보를 저장하고 해당 정보를 이용하여 목적지 단말까지 전달

   Routing Table 정보 확인

   sh ip route

   학습 방법

   Connected (인터페이스)

   처음 연결이 되는 Interface 정보로 자동 학습

   Static (정적)

   관리자가 직접 학습 시키는 방법

   설정을 빠르게 할 수 있음

   네트워크 환경 변경에 유연할 수 없음

   소규모 네트워크에 적합

   Dynamic (동적)

   Router들 끼리 통신을 통해서 학습하는 방법