티스토리 뷰
1. DNS란?
- Domain Name System
- 사람이 읽을 수 있는 도메인 이름(예: google.com)을 컴퓨터가 이해하는 IP 주소(예: 192.168.0.1)로 바꿔
1) nslookpup
- Name Server Lookup
- DNS 정보를 직접 조회할 수 있게 해주는 명령줄 도구
- 역할: 특정 도메인의 IP 주소, MX 레코드, TXT 레코드 등을 확인, 네트워크 문제 진단이나 메일 서버 설정 확인 시 유용
nslookup google.com
142.250.207.110 입력 시 google.com으로 접속됨
2) MX레코드
- 도메인으로 메일을 보낼 때, 실제로 어떤 메일 서버로 보내야 할지를 알려주는 DNS 레코드
- set type=mx : 메일 수신용 서버 주소
nslookup
> set type=mx
> google.com
google.com MX preference = 10, mail exchanger = smtp.google.com
# 메일 받을 도메인/DNS레코드타입/우선순위/실제 메일을 수신하는 메일 서버 주소
# google.com이라는 도메인으로 이메일이 보면, 우선순위 10번인 smtp.google.com이라는 메일 서버가 그 메일을 처리하라
3) TXT 레코드
- DNS에서 텍스트 정보(text)를 저장하기 위한 레코드(도메인에 대한 부가적인 설명 또는 인증 정보를 저장하는 DNS 레코드)
nslookup
> set typ=txt
> tistory.com
v=spf1 include:_spf.daum.net ~all
# 메일 서버가 수신 시, 이 txt를 조회해서 메일 보낸 서버IP가 spf.daum.net에 포함되는지 확인
google-site-verification=abc123XYZ456def789
# google이 이 값을 DNS에 올려야 "당신이 진짜 이 도메인 주인이다"라고 인정해줌
용도 | 설명 |
SPF(Sender Policy Framework) | 이 도메인에서 메일을 보낼 수 있는 서버IP 목록 |
DKIM(DomainKeys Identified Mail) | 이메일 위조 방지용 전자서명 공개키(발신 메일의 DKIM 서명 검증용) |
DMARC(메일 위조 대응 정책) | SPF/DKIM 검사 결과에 따른 처리 지침(DRARC 정책정보, 검사 실패시 reject하라) |
도메인 소유 인증 | Google, Microsoft 등이 도메인 소유 확인 시 사용 |
커스텀 설명 | 임의의 정보 저장도 가능("Hello world" 등) |
4) ipconfig /all
- 내 PC가 사용하는 DNS 확인
5) ping google.com
- DNS 해석 확인 및 응답 확인
- 서버와의 연결 상태를 테스트
ping google.com
# 구글 서버에 테스트 신호를 보냄(ICMP 요청)
# [172.217.25.174] 도메인(google.com)이 해석된 실제 IP 주소
# 응답= 바이트=32 => 구글이 32바이트짜리 응답을 보냈음
# 시간= 33~34ms => 왕복 시간(내 컴퓨터 ↔ 구글)
# TTL=117 => Time to Live: 패킷이 통과할 수 있는 최대 라우터 수
# 패킷 손실 없음 = 연결이 안정적이다
6) tracert google.com
경로를 추적하는 중: google.com [142.250.206.206]
1 <1 ms <1 ms <1 ms 192.168.0.1 ← 공유기
2 10 ms 9 ms 11 ms 10.1.1.1 ← ISP(통신사)
3 20 ms 21 ms 19 ms 112.174.32.1 ← 백본망(전 세계 인터넷을 연결하는 고속 통신망)
...
12 35 ms 34 ms 35 ms 142.250.206.206 ← 구글 서버
# * * * 가 뜨면 응답 없음(라우팅 오류 또는 방화벽 차단 등 경로 끊김)
[예시]
내 컴퓨터
↓
공유기 (192.168.0.1)
↓
지역 ISP (10.x.x.x / 112.x.x.x)
↓
국내 백본망 (e.g., KT backbone)
↓
국제 백본망 (Google, Akamai 등)
↓
목적지 서버 (google.com)
* ICMP(Internet Control Message Protocol)
- 인터넷 제어 메시지 프로토콜, 네트워크 상태를 확인하거나, 오류를 알려주는데 사용하는 프로토콜
- 데이터를 보내는 게 목적이 아니라 지금 통신이 가능한지, 문제가 있는지 알려주는 메시지!
- 통신 실패 시, 어디서 문제가 생겼는지 알려준다. 대상이 연결되어있는지 확인 가능, 경로에 문제가 있으면 오류 메시지 전달
명령어 | 설명 | 사용된 ICMP 메시지 |
ping | 상대가 응답 가능한지 테스트 | Echo Request / Echo Reply |
tracert(Windows) traceroute(Linux) |
패킷이 목적지까지 가는 경로 추적 | TTL 초과 시 Time Exceeded 메시지 받음 |
** TTL(Time To Live)란?
- 패킷이 인터넷을 떠돌 때 몇 개의 라우터를 통과할 수 있는지 제한하는 숫자
- 구글 서버에서 보내온 응답이 117만큼 남았다는 뜻(보통 128에서 시작 → 11개 라우터 통과한 것일 수 있음)
2. IP 주소란?
- Internet Protocol, 인터넷에 연결된 장비(컴퓨터, 서버, 스마트폰 등)의 위치를 식별하고 통신하기 위해 부여된 번호
1) IPv4
- 192.168.0.1처럼 숫자 4개(0~255 사이)로 구성
* ISP(Internet Service Provider, 인터넷 서비스 제공자): 인터넷에 접속할 수 있게 해주는 회사나 기관(인터넷 회선(집, 회사 랜선이나 와이파이 연결)+ 공인 IP주소부여+인터넷 연결), 예: KT, SK Broadband, LG U+ 등
구분 | 설명 |
공인 IP (Public IP) | 전 세계 인터넷에서 고유하게 식별 가능한 IP 주소 (예: 구글은 8.8.8.8), 인터넷에 직접 연결된 장비에 할당, ISP(인터넷 서비스 제공자)가 부여 |
사설 IP (Private IP) | 내부망(가정, 회사 등)에서만 사용, 전 세계 누구나 동일한 사설 IP 대역 사용 가능(예:192.168.0.0), 외부와 통신하려면 NAT가 필요 |
** NAT(Network Address Translation): 사설IP와 공인IP를 변환해주는 기술, 사설 IP주소는 외부 인터넷에서 인식되지 않아 인터넷과 통신하려면 반드시 공인 IP가 필요하다. 하지만 공인 IP는 수가 한정되어 있어, 공유기(라우터)가 NAT로 사설 IP를 공인 IP로 변경해준다.(하나의 공인 IP에 포트를 다르게 붙여서 구분)
구분 | 목적 | 설정 필요 | 포트매핑 | 관계 |
NAT | 내부 → 외부 통신 | 자동 | 동적으로 매핑 | |
포트포워딩 | 외부 → 내부 통신 | 사용자가 직접 설정 | 정적으로 고정 매핑 | NAT의 하위 기능 |
- NAT를 왜 쓸까? : 모든 장치마다 공인 IP가 필요하면 IP가 고갈되는 문제가 발생할 수 있기 때문! (+내부 망 보호)
***포트포워딩이란? 외부에서 들어오는 요청을 공유기(라우터)가 내부 사설 IP의 특정 장치로 전달해주는 설정
구분 | 설명 |
외부포트 | 외부 사용자가 접속할 때 사용하는 포트 번호(공유기-공인IP기준) |
내부포트 | 공유기가 요청을 전달할 내부 장비의 포트 번호(사설IP기준) |
**** 공유기(=라우터 포함 장치)
구분 | 구분 | OSI | 설명 |
공유기 | 웹관리 UI | 7계층 | 설정 변경(포트포워딩, 무선 비번 등), 예: http://192.168.0.1 접속 |
DHCP | 클라이언트가 Discover 메시지 생성 후 서버로 요청(IP주소 할당 결과는 3계층에 반영됨) | ||
라우터 | 3계층 | 공인 IP ↔ 사설 IP 변환, 인터넷과 내부 네트워크 간 연결(NAT), 네트워크 경로를 설정 | |
스위치 | 2계층 | 내부 장치(MAC 주소) 간 연결 및 통신, (예:노트북 ↔ 프린터 ↔ NAS) | |
무선 AP | 1계층 | 와이파이 전파 송수신(스마트폰 무선 연결 등) |
3. 게이트웨이(Gateway)
- 내 컴퓨터가 다른 네트워크(예: 인터넷)로 나갈 때 통과하는 출입문
- 내부 네트워크 → 외부(인터넷)로 나갈 때 중간에 반드시 거쳐가야 하는 장치
- 대부분 공유기 또는 라우터가 게이트웨이 역할을 한다.
4. 서브넷 마스크(Subnet Mask)
- IP 주소 중에서 네트워크 주소와 호스트 주소를 구분하기 위한 값
- 같은 네트워크인지, 다른 네트워크 인지 판단할 기준 선
- 일반적으로 255.255.255.0과 같이 생김
# IP 주소 = 네트워크 주소 + 호스트 주소
192.168.1.10 / 255.255.255.0(= /24)
# 네트워크 주소는 192.168.1.0
# 호스트 범위는 192.168.1.1 ~ 192.168.1.254
- 255.255.255.0 은 이진수로 보면 11111111. 11111111. 11111111.00000000
- 즉 192.168.1이 네트워크 주소, .10이 호스트 주소
'AI > CS' 카테고리의 다른 글
[CS] MAC (0) | 2025.05.08 |
---|---|
[CS] 이메일 프로토콜과 보안 기술 (0) | 2025.05.07 |
[CS] 자료구조 - 스택, 큐, 트리, 힙 (0) | 2025.04.04 |
[CS] BFS - 너비 우선 탐색(최단거리) (0) | 2025.04.01 |
[CS] sort, in, remove의 시간 복잡도 (0) | 2025.03.27 |
- Total
- Today
- Yesterday
- 고득점 Kit
- 경제
- C언어
- 줄넘기
- 스크랩
- 오블완
- 아침
- 뉴스
- 기초
- 30분
- 프로그래머스
- 아침운동
- Ai
- SQL
- 루틴
- Python
- 갓생
- ChatGPT
- opic
- 빅데이터 분석기사
- 영어회화
- IH
- 습관
- 티스토리챌린지
- 미라클모닝
- 오픽
- 운동
- 다이어트
- llm
- 실기
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |