본문 바로가기
@Xpert/BASIC

3주차 네트워크 정리

by Kw0nhan 2025. 4. 3.

섹션2. 네트워크

네트워킹

컴퓨터를 서로 연결하여 컴퓨터 간의 통신 및 데이터 교환을 가능하게 하는 방식.

컴퓨터 A와 B의 데이터 자원을 공유하는 것.

컴퓨터 네트워크의 작동 방식

컴퓨터 네트워크의 통신을 허용하는 링크를 통해 데이터를 보내고 받는 데 도움이 되는 규칙 또는 프로토콜로 정의할 수 있다.

기본 용어

  • 네트워크 : 통신 및 데이터 교환을 가능하게 하기 위해 함께 연결되는 컴퓨터 및 장치의 모음
  • 노드 : 네트워크에 연결된 장치. (컴퓨터, 라우터, 프린터, 서버⋯)
  • 프로토콜 : 네트워크를 통해 데이터가 전송되는 방식을 제어하는 일련의 규칙 및 표준. (TCP/IP, HTTP⋯)
  • 토폴로지 : 네트워크에 있는 노드의 물리적, 논리적 배열. (버스, 스타, 링, 메시, 트리⋯)
  • 서비스 제공업체 네트워크 : 제공업체로부터 네트워크 용량 및 기능을 임대할 수 있는 권한을 부여. (무선 통신, 데이터 매체⋯)
  • IP주소 : 모든 장치에 할당되는 고유한 숫자 식별자. 장치 식별 및 장치 간 통신 활성화.
  • DNS : Domain Name System. 도메인을 컴퓨터가 이해할 수 있는 IP주소로 변환하는 프로토콜.
  • 방화벽 : 들어오고 나가는 네트워크 트래픽을 모니터링하고 제어하는데 사용되는 보안 장치. 무단 엑세스 및 기타 보안 위협으로부터 네트워크를 보호.

기업 컴퓨터 네트워크의 유형

  • LAN : 근거리 통신망. 소규모 지역(사무실, 집)을 포괄하는 네트워크. 건물이나 캠퍼스 내의 컴퓨터와 기타 장치를 연결하는데 사용
  • WAN : Wide Area Network. 장거리 통신망. 넓은 지리적 영역(도시, 국가, 전세계)을 포괄하는 네트워크. LAN을 연결하는데 사용.
  • 클라우드 네트워크 : 공용이나 사설 클라우드 서비스 제공업체에서 호스팅할 수 있음. WAN으로 시각화 가능.

컴퓨터 네트워크 아키텍처의 유형

  • 클라이언트-서버 아키텍처 : 통상적으로 사용. 중앙서버가 있음.
  • Peer-to-Peer 아키텍처 : 중앙서버가 없음.
  • OSI 7계층

네트워크 고유 식별자

  • 호스트 이름 : cmd에 hostname
  • IP주소(인터넷 프로토콜 주소) : 논리주소. 시스템의 네트워크 주소. cmd에 ipconfig
  • MAC주소(미디어 엑세스 제어 주소) : 물리적 주소.
  • Port : 데이터를 주고받을 수 있는 논리적 채널. 모든 호스트에는 여러개의 애플리케이션이 실행될 수 있고, 각 애플리케이션은 실행 중인 포트 번호를 사용하여 식별됨. cmd에 netstat -a
  • 소켓 : Ip주소와 포트번호의 고유한 조합

기타 관련 내용

  • DNS서버 : cmd에 nslookup(찾고있는 도메인의 IP주소 알 수 있음)
  • ARP : 주소 확인 프로토콜. IP주소를 물리적 주소로 변환하는데 사용. 데이터 링크 계층에서 수신기 시스템의 MAC주소 식별.
  • RARP : 역방향 주소 확인 프로토콜. 물리적 주소가 입력된 장치의 IP주소 제공. 허나 DHCP등장이후 입지를 잃음

OSI(Open System Interface)

7계층 아키텍처. 개방형 시스템 상호 연결. 각 계층마다 협력
수직적 접근 방식

image.png

    1. 물리 계층
      • 장치 간 물리적 연결
      • 한 노드에서 다음 노드로 개별 비트를 전송. 데이터 수신 시 수신된 신호를 0/1로 변환 후 데이터 링크 계층으로 보내 프레임 재결합.
      • 비트 동기화
      • 비트 전송률 제어
      • 물리적 토폴로지
      • 전송모드
      • 허브, 모뎀⋯
    1. 데이터링크 계층
      • 메세지의 노드 간 전달. 데이터 전송에 오류가 없는지 확인
      • 논리 링크 제어(LLC)와 미디어 엑세스 제어(MAC)으로 나뉨
      • 프레이밍(Framing)
      • 물리적 주소 지정 - MAC주소
      • 오류 제어
      • 흐름 제어
      • 엑세스 제어
      • 스위치, 브릿지⋯
    1. 네트워크 계층
      • 데이터 전송
      • 라우팅 : 대상까지 어떤 경로가 적합한지 결정
      • 논리적 주소 지정
      • 라우터⋯
    1. 전송 계층
      • 데이터를 세그먼트라고 칭함.
      • 분할 및 재조립 : 메시지를 더 작은 단위로 나눔
      • 서비스 지점 주소 지정 : 메시지가 올바른 프로세스로 전달되도록 주소 지정
      • 방화벽⋯
    1. 세션 계층
      • 세션 유지 및 인증, 보안 보장
      • 새션 설정, 유지 및 종료
      • 동기화
      • 대화 컨트롤러
      • 게이트웨이⋯
    1. 표현 계층
      • 번역
      • 암호화/복호화
      • 압축
      • JPEG, MPEG, GIF⋯
    1. 애플리케이션 계층
      • 네트워크 가상 터미널
      • 메일 서비스
      • 디렉토리 서비스
      • SMTP⋯

TCP/IP

5개의 계층이 존재. (또는 4층)

한 장치에서 다른 장치로 전송하는 것. 수신자가 발신된 정보와 동일한 정보를 수신할 수 있도록 데이터를 신뢰할 수 있고 정확하게 만드는 것.

수평적 접근 방식

  • IP : 메일의 목적지를 찾아주는 역할
  • TCP : 메일을 보내고 받음
  • UDP : 통신할 때 IP가 필요하지 않은 프로토콜

TCP/IP 작동 방식

송신자 측에서 데이터를 패킷으로 나누고 수신자 측에서는 쪼개진 패킷을 결합하여 다시 데이터를 구성한다.

TCP/IP의 계층

    1. 물리 계층
    2. 데이터를 생성하고 연결을 요청
    1. 데이터링크 계층(MAC)
    2. 프로토콜 유형 식별, 오류 방지
    1. 인터넷 계층(IP)
      • IP : Internet Protocol, 패킷 해더의 IP주소를 확인하여 소스 호스트에서 대상 호스트로 패킷을 전달
      • ICMP : 인터넷 제어 메시지 프로토콜, IP 데이터 그램 내에 캡슐화, 네트워크 문제에 대한 정보 호스트에게 제공
      • ARP : 주소 확인 프로토콜, IP주소에서 하드웨어의 호스트 주소를 찾음
    2. 전체 네트워크를 통한 데이터의 논리적 전송을 담당하는 프로토콜을 정의
    1. 전송 계층(TCP/UDP)
    2. 데이터 수신 확인을 교환, 누락된 패킷을 재전송하여 패킷이 오류 없이 순서대로 도착하는지 확인
    1. 애플리케이션 계층
      • HTTP/HTTPS : 하이퍼텍스트 전송 프로토콜, WWW에서 웹브라우저와 서버간의 통신을 관리하는 데 사용, HTTPS는 HTTP와 SSL을 결합
      • SSH : Secure Shell, 암호화된 연결을 유지하는 기능이 있음
      • NTP : 네트워크 시간 프로토콜, 컴퓨터의 시계를 표준 시간 소스와 동기화 하는데 사용
    2. 오류 없는 데이터 젙달 담당 → 데이터의 복잡성으로부터 상위 계층 애플리케이션을 보호

4층인 경우의 이미지

4층인 경우의 이미지

DNS

= 인터넷의 전화번호부

: 도메인 이름 → IP주소 변환

  • DNS 리커서 : 웹 브라우저와 같은 애플리케이션을 통해 클라이언트 시스템으로 부터 쿼리를 수신하도록 설계된 서버 (특정 책을 찾으러 가는 사서)
  • 루트 네임서버 : 호스트 이름을 IP주소로 변환하는 첫번째 단계 (도서관의 색인)
  • TLD 네입서버 : 호스트 이름의 마지막 부분 호스팅 com (책꽃이의 랙)
  • 권위있는 네임서버 : 네임서버 쿼리의 마지막 중지 지점, 권위있는 네임서버가 요청된 레코드에 액세스 할 수 있는 경우 요청된 호스트 이름의 IP 주소를 초기 요청을 수행한 DNS 리커서에게 다시 반환 (책꽃이에 있는 사전)

DNS 조회 단계

  1. 사용자가 웹 브라우저에 ‘google.com’을 입력하면 쿼리가 인터넷으로 이동해 재귀 DNS 확인자 에 의해 수신
  2. 확인자는 DNS 루트 이름 서버를 쿼리
  3. 루트서버는 해당 도메인에 대한 정보를 저장하는 TLD(최상위 도메인) DNS 서버의 주소로 확인자에게 응답
  4. 확인자는 .com TLD에 요청을 보냄
  5. TLD 서버는 도메인 이름 서버의 IP주소인 google.com으로 응답
  6. 재취 확인가자 도메인의 이름 서버에 쿼리를 보냄
  7. google.com의 IP주소가 네임서버에서 확인자로 반환
  8. DNS확인자는 처음에 요청한 도메인의 IP주소로 웹 브라우저에 응답
  9. 브라우저는 IP주소에 HTTP요청을 보냄
  10. IP서버는 브라우저에 렌더링할 웹페이지를 반환

image.png

DNS 캐싱

데이터 요청에 대한 성능과 안정성을 향상시키는 위치에 데이터(DNS레코드)를 임시로 저장하는 것

  • 요청 클라이언트에서 더 가까운 곳에 데이터를 저장하여 DNS쿼리를 더 일찍 해결
  • DNS조회 체인 아래 았는 추가 쿼리를 방지하여 로드시간 개선 및 대역폭/CPU소비를 줄임

HTTP, HTTPS

: 하이퍼텍스트 전송 프로토콜

  • 웹페이지를 로드하는데 사용됨
  • 애플리케이션계층의 프로토콜이며 네트워크 프로토콜 스택의 다른 계층 위에서 실행됨

요소

  1. HTTP버전 유형
  2. URL
  3. HTTP 메서드
    • GET과 POST
  4. HTTP 요청 헤더scheme : 어떠한 프로토콜을 사용
  5. scheme : 어떠한 프로토콜을 사용
  6. HTTP 본문(선택사항)
    • 사용자 이름 및 비밀번호 또는 양식에 입력된 기타 데이터와 같이 웹 ㅅ버에 제출되는 모든정보가 포함

HTTP 응답

  1. HTTP 상태코드
    • 1xx informational
    • 2xx 성공
    • 3xx 리디렉션
    • 4xx 클라이언트 오류 : 본문의 값이 다르거나 요청의 값이 이상할 때
    • 5xx server error : 서버에 문제가 있을 떄
  2. : HTTP요청이 성공적으로 완료되었는지 여부를 나타냄
  3. HTTP 응답 헤더
  4. image.png
  5. HTTP본문(선택사항)

SSL

: Secure Socket Layer, .암호화 기반 인터넷 보안 프로토콜 (현재 사용중인 TLS 암호화의 전신), HTTPS에 사용됨

  • 예를 들어 고객이 쇼핑 사이트를 방문하여 주문하고 신용카드 번호를 입력했다면 해당 신용카드 번호가 숨겨지지 않은 채 인터넷을 이동함. 타인이 가로채서 확인할 수 있는 문제가 생김
  • → 이러한 문제를 해결하기 위해 SSL이 등장
  • 특정한 유형의 사이버 공격 차단

image.png

  • SSL은 SSL 인증서가 있는 웹사이트만 실행 가능
  • SSL 인증서 종류
    • 단일 도메인 : 단 하나의 도메인에만 적용 ex) www.cloudflare.com
    • 와일드카드 : 단 하나의 도메인에만 적용되지만, 도메인의 하위 도메인도 포함 ex) www.cloudflare.com, blog.cloudflare.com
    • 멀티 도메인 : 관련되지 않은 다수의 도메인에 적용 가능
  • 도메인 유효성 검사
    • 도메인 유효성 검사 : 가장 덜 엄격하고 저렴, 기업이 도메인을 관리하고 있다는 것만 증명
    • 조직 유효성 검사 : CA가 담당자나 기업에 인증서를 직접 문의
    • 확장 유효성 검사 : 조직의 배경을 완전히 검사 한 후 인정서 발행