[SK shieldus Rookies 19기][시스템/네트워크 보안 기술] 1일차

부재중입니다·2024년 4월 2일

ipconfig

https://learn.microsoft.com/ko-kr/windows-server/administration/windows-commands/ipconfig

Displays all current TCP/IP network configuration values and refreshes Dynamic Host Configuration Protocol (DHCP) and Domain Name System (DNS) settings. Used without parameters, ipconfig displays Internet Protocol version 4 (IPv4) and IPv6 addresses, subnet mask, and default gateway for all adapters.

c:\Users\crpark> ipconfig

Windows IP 구성


이더넷 어댑터 이더넷:

   미디어 상태 . . . . . . . . : 미디어 연결 끊김
   연결별 DNS 접미사. . . . :

무선 LAN 어댑터 로컬 영역 연결* 9:

   미디어 상태 . . . . . . . . : 미디어 연결 끊김
   연결별 DNS 접미사. . . . :

무선 LAN 어댑터 로컬 영역 연결* 10:

   미디어 상태 . . . . . . . . : 미디어 연결 끊김
   연결별 DNS 접미사. . . . :

무선 LAN 어댑터 Wi-Fi:

   연결별 DNS 접미사. . . . :
   링크-로컬 IPv6 주소 . . . . : fe80::622c:5a77:1e68:babd%14
   IPv4 주소 . . . . . . . . . : 192.168.0.143			(1)
   서브넷 마스크 . . . . . . . : 255.255.255.0			(2)
   기본 게이트웨이 . . . . . . : 192.168.0.1			(3)

(1) IP(Internet Protocol) 주소

  • 인터넷 공간에서 각 호스트의 고유한 식별자를 의미

  • 컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신을 하기 위해서 사용하는 특수한 번호(주소)

  • IPv4 주소를 표기할 때는 8비트 단위의 옥텟(octet)으로 나눠서 각 옥셋은 콤마(.)로 구분해서 표기

  • 10진수로 표기 ⇒ 1옥텟은 0~255 나타낼 수 있음
    192 . 168 . 0 . 143
    1100 0000 1010 1000 0000 0000 1000 1111
    ㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡㅡ 옥텟

네트워크 주소와 호스트 주소 구분

네트워크 주소 ⇒ 호스트를 모은 네트워크를 지칭하는 주소. 네트워크 주소가 동일한 네트워크를 로컬 네트워크라고 함
호스트 주소 ⇒ 하나의 네트워크 내에 존재하는 호스트를 구분하기 위한 주소

IP주소의 클래스 ⇒ Classful


특수 목적으로 예약된 IPv4 주소 ⇒ https://krnic.kisa.or.kr/jsp/resources/ipv4Info.jsp

특수 목적으로 예약된 것은 공인 IP 주소로 할당 받는 것이 불가능

(2) 서브넷 마스크(subnet mask)

IP 주소를 네트워크 ID와 호스트 ID로 구분하는 방법
서브넷 마스크 값을 조정해서 네크워크 영역을 조절

네트워크 ID ⇒ 많은 LAN 영역에서 자기 LAN 영역을 구분하기 위한 식별자
호스트 ID ⇒ 해당 LAN 영역에 속한 호스트 각각을 구분하기 위한 식별자

CIDR(Classless Inter-Domain Routing)

클래스의 제한을 두지 않고 필요한 호스의 수에 따라 적당한 크기의 IP 주소를 할당하는 방법
다양한 길이의 전치부를 이용한 할당 방법

(3) 게이트웨이(gateway) = 라우터(router)

각기 다른 네트워크 ID를 사용하는 LAN 영역 사이를 연결해 주는 기능
L3 (네트워크) 계증의 장비

게이트웨이는 소프트웨어적인 측면을 강조하고, 라우터는 하드웨어 측면을 강조

라우팅(routing) vs 스위칭(switching)

  • 라우팅

    • 다른 네트워크 ID를 사용하는 LAN 영역 사이트를 연결해 주는 기능
    • 인터넷상의 트래픽 단위인 패킷(packet)을 효율적이고 효과적으로 최단거리 또는 최단시간에 전달할 수 있도록 하는 것
    • 출발지부터 최종 목적지까지 논리적으로 주소가 부여된 패킷의 전달 과정
  • 스위칭

    • LAN 영역에서 MAC 주소에 기반해 내부 통신을 수행하는 과정

네트워크 계층별 장비

L1 (물리) 계층 - Repeater, Hub
L2 (데이터 링크) 계층 - Switch, Brdige
L3 (네트워크) 계층 - Router, L3 Switch

LAN

동일한 네트워크 ID를 공유하는 장치들의 집합
동일한 게이트웨이 주소를 사용하는 장치들의 집합

ipconfig/all

c:\Users\crpark> ipconfig/all

무선 LAN 어댑터 Wi-Fi:

   연결별 DNS 접미사. . . . :
   설명. . . . . . . . . . . . : Intel(R) Wi-Fi 6 AX201 160MHz
   물리적 주소 . . . . . . . . : D0-3C-1F-1F-E7-3F				(3) MAC
   DHCP 사용 . . . . . . . . . : 예						(2)
   자동 구성 사용. . . . . . . : 예
   링크-로컬 IPv6 주소 . . . . : fe80::622c:5a77:1e68:babd%14(기본 설정)
   IPv4 주소 . . . . . . . . . : 192.168.0.143(기본 설정)
   서브넷 마스크 . . . . . . . : 255.255.255.0
   임대 시작 날짜. . . . . . . : 2024년 3월 20일 수요일 17:36:41
   임대 만료 날짜. . . . . . . : 2024년 3월 21일 목요일 17:24:52
   기본 게이트웨이 . . . . . . : 192.168.0.1
   DHCP 서버 . . . . . . . . . : 192.168.0.1
   DHCPv6 IAID . . . . . . . . : 190344229
   DHCPv6 클라이언트 DUID. . . : 00-01-00-01-2D-68-5B-BC-8C-B0-E9-1C-CD-36
   DNS 서버. . . . . . . . . . : 192.168.0.1				(1)
   Tcpip를 통한 NetBIOS. . . . : 사용

(1) DNS(Domain Name System) 서버

도메인 이름과 IP 주소의 대응 관계를 데이터베이스 형태로 저장하고 제공하는 서비스
호스트의 도메인 이름을 호스트의 네트워크 주소로 바꾸거나 그 반대의 변환을 수행할 수 있도록 하기 위해 개발

도메인 주소 장점

하나의 IP 주소를 이용해 여러 개의 웹 서비스 운영이 가능
서비스 중인 IP 주소가 바뀌더라도 도메인 주소를 그대로 유지해 접속 방법 변경 없이 서비스를 유지할 수 있음
지리적으로 여러 위치에서 서비스가 가능

DNS 구조

  • 역트리 구조로 최상위 루트 부터 top-level 도메인, second-level 도메인, third-level 도메인과 같이 하위 레벨로 원하는 주소를 단계적으로 검색
  • 각 계층의 경계는 "."으로 표시하고 뒤에서 앞으로 해석
  • thrid.second.top. 과 같은 형태로 표현하고 맨 뒤의 루트(.)는 생략

DNS 명명 규칙

  • 도메인 계층은 최대 128계층까지 구성할 수 있음
  • 계층별 길이는 최대 63byte까지 사용할 수 있으며, 도메인 계층 구분자(".")를 포함해 전체 도메인 네임의 길이는 최대 255byte까지 사용할 수 있음
  • 문자는 알파벳, 숫자, "-" 만 사용할 수 있으며, 대소문자를 구분하지 않음

루트 도메인

  • 도메인을 구성하는 최상위 영역
  • DNS 서버는 사용자가 쿼리한 도메인에 값을 직접 갖고 있거나 캐시에 저장된 정보를 이용해 응답
  • DNS 서버에 해당 도메인의 정보가 없으면 루트 도메인을 관리하는 루트 DNS에 쿼리
  • 루트 DNS는 전 세계에 13개가 있고 DNS 서버를 설치하면 루트 DNS의 IP 주소를 기록한 힌트(hint) 파일을 가지고 있어 루트 DNS 관련 정보를 별도로 설정할 필요가 없음

https://www.iana.org/domains/root/servers

TLD(Top-Level Domain)

  • IANA(Internet Assigned Numbers Authority)에서 6가지 유형으로 구분
  • https://www.iana.org/domains/root/db
    • generic (gTLD)
      • 특별한 제한 없이 일반적으로 사용되는 최상위 도메인으로 세 글자 이상으로 구성
        1980년대 7개의 gTLD로 시작 ⇒ .com, .edu, .gov, .int, .mil, .net, .org
        필요에 의해 새로운 gTLD가 지속적으로 만들어지고 있음
        • com 일반 기업체
          edu 4년제 이상 교육 기관
          gov 미국 연방 정보 기관
          int 국제 기구, 기관
          mil 미국 연방 군사 기관
          net 네트워크 관리 기관
          org 비영리기관
    • country-code (ccTLD)
      • 일반적으로 ccTLD를 사용하는 경우, Second Level TLD에는 gTDL에서 구분한 것 처럼 사이트 용도에 따른 코드를 사용 ( 예: co.kr, go.kr )
      • 우리나라는 gTLD를 두 글자로 줄여 사용하는데, 호주나 대만 등은 gTDL를 그대로 사용하는 나라도 있음 ( 예: com.au, gov.au, com.tw, gov.tw 등)
    • sponsored (sTLD)
      • '특정 목적을 위한 스폰서를 두고 있는 최상위 도메인
      • 스폰서는 특정 민족공동체, 전문자 집단, 지리적 위치 등이 속할 수 있음
      • .aero, asia, .edu, .museum 등
    • infrastructure
      • 운용상 중요한 인프라 식별자 공간을 지원하기 위해 전용으로 사용되는 최상위 도메인
      • '.arpa ⇒ 인터넷 안정성을 유지하기 위해 새로운 모든 인프라 하위 도메인이 배칠될 도메인 공간 역할
    • generic-restricted (grTLD)
      • 특정 기준을 충족하는 사람이나 단체가 사용할 수 있는 최상위 도메인
      • .biz, .name, .pro
    • test (tTLD)
      • IDN(Internationalized Domain Name) 개발 프로세스에서 테스트 목적으로 사용하는 최상위 도메인
      • .test

DNS 캐시

c:\Users\crpark> ipconfig /flushdns			⇐ DNS 캐시 테이블을 삭제
c:\Users\crpark> ipconfig /displaydns		⇐ DNS 캐시 테이블을 조회
Windows IP Configuration				⇐ DNS 캐시가 모두 지워지고 없는 상태

C:\Users\User> curl https://www.google.com		⇐ DNS 쿼리 결과를 캐시에 반영 
C:\Users\User> ipconfig /displaydns

Windows IP Configuration

    www.google.com					⇐ 도메인 주소에 대한 IP 정보가 출력되는 것을 확인할 수 있음 
    ----------------------------------------
    Record Name . . . . . : www.google.com
    Record Type . . . . . : 1
    Time To Live  . . . . : 3
    Data Length . . . . . : 4
    Section . . . . . . . : Answer
    A (Host) Record . . . : 142.250.206.228

DNS 동작 방식 ⇒ 재귀적 쿼리(Recursive Query) + 반복적 쿼리(Iterative Query)

  • 재귀적 쿼리는 쿼리를 보낸 클라이언트에 서버가 최종 결과값을 반환하는 서버 중심 쿼리
  • 반복적 쿼리는 최종값을 받을 때까지 클라이언트에서 쿼리를 계속 진행하는 방식
  • 재귀적 쿼리는 클라이언트와 로컬 DNS 간에서 사용
  • 반복적 쿼리는 로컬 DNS 서버와 상위 DNS 구간에서 사용
    www.zigispace.net 을 호출했을 때

DNS 영역 파일(zone file) 주요 레코드

  • A IPv4 호스트 도메인 주소를 IP 주소(IPv4)로 매핑
  • AAAA IPv6 호스트 도메인 주소를 IP 주소(IPv6)로 매핑
  • CNAME 별칭 도메인 주소에 대한 별칭
  • SOA 권한 시작 본 영역 데이터에 대한 권한
  • NS 도메인 네임 서버 본 영역에 대한 네임 서버
  • MX 메일 교환기 도메인에 대한 메일 서버 정보
  • PTR 포인터 IP 주소를 도메인에 매핑(역방향)
  • TXT 레코드 도메인에 대한 일반 텍스트

0개의 댓글