2022.09.19 - [소소한 CS 지식/면접을 위한 CS 전공지식 노트] - 1-1. 디자인 패턴(1)
2022.09.20 - [소소한 CS 지식/면접을 위한 CS 전공지식 노트] - 1-1. 디자인 패턴(2)
2022.09.20 - [소소한 CS 지식/면접을 위한 CS 전공지식 노트] - 1-2. 프로그래밍 패러다임(함수형,객체지향,절차적프로그래밍)
2022.09.22 - [소소한 CS 지식/면접을 위한 CS 전공지식 노트] - 2-1. 네트워크의 기초(토폴로지&성능분석 명령어)
2022.09.23 - [소소한 CS 지식/면접을 위한 CS 전공지식 노트] - 2-2. TCP/IP 4계층 모델
네트워크는 여러 개의 네트워크 기기를 기반으로 구축되고, 네트워크 기기는 또 계층별로 처리 범위를 나눌 수 있다.
상위 계층을 처리하는 기기는 하위 계층을 처리할 수 있지만 그 반대는 불가능하다.
ex) L7 스위치는 애플리케이션 계층을 처리하는 기기로 밑의 모든 계층의 프로토콜을 처리할 수 있지만 AP는 물리 계층밖에 처리하지 못한다.
애플리케이션 계층 | L7 스위치 | 인터넷 계층(네트워크&전송계층) | 라우터, L3 스위치 |
데이터링크 계층 | L2 스위치, 브리지 | 물리 계층 | NIC, 리피터, AP |
스위치: 패킷을 보내는 역할을 하는 장비
L2 스위치 | Layer2 데이터 링크 계층, 즉 맥 주소를 보고 데이터를 전달하는 방식 | L3 스위치 | Layer3 네트워크 계층, 즉 IP를 보고 데이터를 전달하는 장비 |
L4 스위치 | Layer4 전송 계층, 즉 L4는 IP + Port(session or connection)을 보고 데이터를 전달하는 장비 | L7 스위치 | Layer7 응용계층, 즉 클라이언트로부터 받은 요청(메시지)을 보고 데이터를 전달하는 장비 |
3-1. 애플리케이션 계층을 처리하는 기기
1) L7 스위치(Layer 7 Switch)
여러 장비를 연결(1)하고 데이터 통신을 중재(2)하며 목적지가 연결된 포트로만 전기신호를 보내 데이터를 전송(3)하는 통신 네트워크 장비
로드밸런서[서버에 가해지는 부하(=로드)를 분산(=밸런싱)해주는 장치]라고도 한다.
클라이언트로부터 오는 요청들을 뒤쪽의 여러 서버로 나누는 역할을 하며 시스템이 처리할 수 있는 트래픽 증가를 목표로 한다. | 바이러스, 불필요한 외부 데이터 등을 걸러내는 필터링 기능 또한 가지고 있고 응용 프로그램 수준의 트래픽 모니터링도 가능하다. |
URL, 서버, 캐시, 쿠키들을 기반으로 트래픽을 분산한다. | 장애가 발생한 서버가 있다면 이를 트래픽 분산 대상에서 제외해야 하는데, 이것은 정기적으로 헬스 체크(health check)를 이용해 감시하면서 이루어진다. |
2) L4 스위치와 L7 스위치 차이
로드밸런서로는 L7 스위치 뿐만 아니라 L4 스위치도 있다.
L4 스위치 | L7 스위치 | |
계층 | 네트워크 계층, 전송 계층 | 애플리케이션 계층(응용 계층) |
특징 | 네트워크 계층(IP), 전송 계층(TCP/UDP)의 정보를 바탕으로 트래픽 분산처리(로드밸런싱) | TCP/UDP 정보는 물론HTTP의 URI, FTP 쿠키 정보 및 바이러스 패턴을 분석해 보안에 더 유리하고 정교한 로드밸런싱이 가능하다. |
IP 주소나 포트번호, MAC 주소, 전송 프로토콜에 따라 트래픽을 나누는 것이 가능하다. | 사용자의 요청을 기준으로 특정서버에 트래픽을 분산하는 것이 가능하다. | |
장점 | 데이터 안을 들여다보지 않고 패킷 레벨에서만 로드를 분산하기 때문에 속도가 빠르고 효율이 높다. | 상위 계층에서 로드를 분산하기 때문에 훨씬 더 섬세한 라우팅이 가능하다. |
데이터의 내용을 복호화할 필요가 없어서 안전하다. | 캐싱 기능을 제공한다. | |
L7 로드밸런서보다 가격이 저렴하다. | 비정상적인 트래픽을 사전에 필터링 할 수 있어 서비스 안전성이 높다. | |
단점 | 패킷의 내용을 살펴볼 수 없기 때문에 섬세한 라우팅이 불가능하다. | 패킷의 내용을 복호화해야 해서 높은 비용을 지불해야 한다. |
사용자의 IP가 수시로 바뀌는 경우라면 연속적인 서비스를 제공하기 어렵다. | 클라이언트가 로드밸런서와 인증서를 공유하기 때문에 공격자가 로드밸런서를 통해서 클라이언트 데이터에 접근할 보안 상의 위험성이 존재한다. | |
클라우드 서비스 | 클라우드 서비스(AWS 등)에서 L4 스위치를 이용한 로드밸런싱은 NLB(Network Load Balancer) 컴포넌트로 한다. | 클라우드 서비스(AWS 등)에서 L7 스위치를 이용한 로드밸런싱은 ALB(Application Load Balancer) 컴포넌트로 한다. |
NLB: OSI 모델의 네 번째 계층에서 작동한다. ( IP 주소 및 TCP/UDP 포트 정보를 보고 스위칭 ) | ALB: OSI 모델의 일곱번째 계층인 애플리케이션 계층에서 작동한다. |
L4 스위치 | L7 스위치 |
둘의 공통점은 스위치로 들어온 패킷을 적절한 목적지(서버)로 전송해주는 것이지만, L4와 L7의 동작은 근본적으로 다르다고 할 수 있다.
3) 헬스 체크
로드밸런싱 서비스를 제공하는 다수의 서버의 상태를 점검하기 위해 사용되는 기술로 서버의 상태를 주기적으로 체크해 서버의 상태가 통신이 불가능할 때 서버를 서비스에서 제외해 서비스를 원활하게 제공하기 위해 이용하는 방법
- 전송 주기와 재전송 횟수 등을 설정한 이후 반복적으로 서버에 요청을 보낸다. 이때 서버에 부하가 되지 않을 만큼 요청 횟수가 적절해야 한다.
- TCP, HTTP 등 다양한 방법으로 요청을 보내고 이 요청이 정상적으로 이루어졌다면 정상적인 서버로 판별한다.
- ex) TCP 요청을 보냈는데 3-웨이 핸드셰이크가 정상적으로 일어나지 않았다면 정상이 아닌 것이다.
4) 로드밸런서를 이용한 서버 이중화
- 로드밸런서의 대표적인 기능: 서버이중화
- 이중화: 시스템의 가용성을 높이기 위해 장비를 다중화 시키는 방법
- 가용성: 여러 개의 서버 장비 중 하나의 서버 장비가 문제가 생겨도 다른 장비에서 서비스가 될 수 있도록 구현해 서비스가 다운되지 않고 정상적으로 유지된 시간이 길어지는 것
- 서비스를 안정적으로 운용하기 위해서는 2대 이상의 서버는 필수적이어서 로드밸런서는 2대 이상의 서버를 기반으로 가상 IP를 제공하고 이를 기반으로 안정적인 서비스를 제공한다.
위 처럼 로드밸런서가 제공한 0.0.0.12010이란 가상 IP에 사용자들이 접근하고 뒷단에 사용 가능한 서버인 0.0.0.12011과 0.0.0.12012를 기반으로 서빙한다.
이렇게 하면 0.0.0.12011 서버에 장애가 발생해도 0.0.0.12012 서버를 기반으로 서비스를 운용할 수 있다.
3-2. 인터넷 계층을 처리하는 기기
1) 라우터(router)
여러 개의 네트워크를 연결, 분할, 구분시켜주는 역할
다른 네트워크에 존재하는 장치끼리 데이터를 주고 받을 때 패킷 소모를 최소화(1)하고 경로를 최적화(2)하여 최소 경로로 패킷을 포워딩하는 라우팅을 하는 장비
라우터 | 소프트웨어 기반의 라우팅을 함 | L3 스위치 | 하드웨어 기반의 라우팅을 함 |
라우팅: 어떤 네트워크 안에서 통신 데이터를 보낼 때 최적의 경로를 선택하는 과정(IP 주소를 찾아가는 과정)
2) L3 스위치(Layer 3 Switch)
L2 스위치의 기능과 라우팅 기능을 갖춘 장비 (L3 스위치를 라우터, 공유기라고 해도 무방하다.)
- 라우터를 스위치 내에 수용시켜 계층 3(네트워크 계층)에서 동작시켰다.
- 전통적인 라우터와 비교하면, 라우팅 속도가 훨씬 빠르지만 장거리 통신망을 연결하는 포트가 없는 것이 많다. (빠른 동작을 하는 라우터)
- L3 스위치는 수신된 패킷에서 네트워크 계층에 해당하는 IP 정보 부분을 보고있다가, 이미 알고 있는(캐시되어 있는) 주소이면 굳이 라우터를 통하지 않고 자신이 직접 하드웨어적으로 곧바로 전송하는 방식이다.
3-3. 데이터 링크 계층을 처리하는 기기
1) L2 스위치
장치들의 MAC 주소를 MAC 주소 테이블을 통해 관리하며,연결된 장치로부터 패킷이 왔을 때 패킷 전송을 담당한다. 즉, MAC 주소를 읽어 스위칭 역할을 하는 장비
- IP 주소를 이해하지 못해 IP 주소를 기반으로 라우팅은 불가능하다.
- 목적지가 MAC 주소 테이블에 없다면 전체 포트에 전달하고 MAC 주소 테이블의 주소는 일정 시간 이후 삭제하는 기능도 있다.
L3 스위치와 L2 스위치 비교
구분 | L2 스위치 | L3 스위치 |
참조 테이블 | MAC 주소 테이블(브리지 테이블) | 라우팅 테이블 |
참조 PDU | 이더넷 프레임 | IP 패킷 |
참조 주소 | 목적지 MAC 주소 | 목적지 IP 주소 |
PDU: 데이터 통신에서 상위 계층이 전달한 데이터에 붙이는 제어정보
2) 브리지(bridge)
두 개의 근거리 통신망(LAN)을 상호 접속할 수 있도록 하는 통신망 연결 장치
- 포트와 포트 사이의 다리 역할을 하며 장치에서 받아온 MAC 주소를 MAC 주소 테이블로 관리한다.
- 브리지는 통신망 범위를 확장하고 서로 다른 LAN 등으로 이루어진 '하나의' 통신망을 구축할 때 쓰인다.
3-4. 물리 계층을 처리하는 기기
1) NIC(Network Interface Card)
LAN에 연결 지점을 제공하기 위해 컴퓨터에 설치하는 장치 어댑터로 LAN 카드라고 한다.
- 2대 이상의 컴퓨터 네트워크를 구성하는 데 사용하며 네트워크와 빠른 속도로 데이터를 송수신할 수 있도록 컴퓨터 내에 설치한다.
- 각 LAN 카드에는 주민번호처럼 각각을 구분하기 위한 고유의 식별번호인 MAC 주소가 있다.
2) 리피터(repeator)
전기 신호를 정형(일그러진 전기 신호를 복원)하고 증폭하는 기능을 가진 네트워크 중계 장비
- 리피터를 통해 패킷이 더 멀리 갈 수 있다.
- 통신하는 상대방이 멀리 있을 때 리피터를 사이에 넣어 사용해, 즉 멀리 있는 상대방과도 통신할 수 있도록 파형을 정상으로 만드는 기능을 한다.
- 요새는 다른 네트워크 장비가 리피터 기능을 지원하기 때문에 현재는 잘 쓰이지 않는 장치이다.
3) AP(Access Point)
유선랜과 무선랜을 연결시켜주는 장치, WAP(Wireless Access Point)이라고도 한다. 무선AP라고도 부른다.
- AP에 유선 LAN을 연결한 후 다른 장치에서 무선 LAN 기술(와이파이 등)을 사용해 무선 네트워크 연결을 할 수 있다.
- 일반적으로 유선망을 거치는 라우터 연결되며 컴퓨터, 프린터와 같은 무선 장치와 네트워크 상의 유선 장치 간 데이터를 중계할 수 있다.
- 무선 장비 연결중 블루투스를 이용할 때는 일반적으로 1:1로 연결을 하게 되므로 이때는 무선 액세스 포인트라고 하기보다는, 1:1 근거리 무선 통신 장비라고 한다.
3-5. IP 주소
1) ARP(Address Resolution Protocol)
IP 주소로부터 MAC 주소를 구하는 IP와 MAC 주소의 다리 역할을 하는 프로토콜
컴퓨터와 컴퓨터 간의 통신은 흔히 IP 주소 기반으로 통신한다고 알고 있지만 실제론 IP주소에서 ARP를 통해 MAC 주소를 찾아 MAC 주소를 기반으로 통신한다.
- ARP를 통해 가상 주소인 IP 주소를 실제 주소인 MAC 주소로 변환한다. 이와 반대로 RARP(Reverse Address Resolution Protocol)를 통해 실제 주소인 MAC 주소를 가상 주소인 IP 주소로 변환하기도 한다.
- ARP Table: IP 주소와 MAC 주소를 일대일 매칭시킨 정보를 정리해둔 Table
- 위의 그림처럼 장치 A가 'ARP Request 브로드캐스트'를 보내서 IP 주소인 120.70.80.3에 해당하는 MAC 주소를 찾는다. (브로드캐스트를 하는 이유는 목적지의 물리주소를 모르기 때문에 모두에게 요청한다.)
- 해당 주소에 맞는 장치 B가 'ARP reply 유니캐스트'를 통해 MAC 주소를 변환하는 과정을 거쳐 IP 주소에 맞는 MAC 주소를 찾게 된다.
브로드캐스트: 송신 호스트가 전송한 데이터가 네트워크에 연결된 모든 호스트에 전송되는 방식
유니캐스트: 고유 주소로 식별된 하나의 네트워크 목적지에 1:1로 데이터를 전송하는 방식
2) 홉바이홉 통신
홉바이홉(hop by bop) 통신: IP 주소를 통해 통신하는 과정
- 홉(hop)이란? : 건너뛰는 모습, 즉 통신망에서 각 패킷이 여러 개의 라우터를 건너가는 모습을 비유적으로 표현한 것이다.
- 즉, 통신 장치에 있는 '라우팅 테이블'의 IP를 통해 시작 주소부터 시작해 다음 IP로 계속해서 이동하는 '라우팅' 과정을 거쳐 패킷이 최종 목적지까지 도달하는 통신
- 각각의 라우터에 있는 라우팅 테이블의 IP를 기반으로 패킷을 전달하고 다시 전달해나간다.
2) - 1 라우팅 테이블(routing table)
송신지에서 수신지까지 도달하기 위해 사용되며 라우터에 들어가 있는 목적지 정보들과 그 목적지로 가기 위한 방법이 들어 있는 리스트
- 라우팅 테이블에는 게이트웨이와 모든 목적지에 대해 목적지에 도달하기 위해 거쳐야 할 다음 라우터의 정보를 가지고 있다.
2) - 2 게이트웨이(gateway)
서로 다른 통신망, 프로토콜을 사용하는 네트워크 간의 통신을 가능하게 관문 역할을 하는 컴퓨터나 소프트웨어를 두루 일컫는 용어
- 즉 다른 네트워크로 들어가는 입구 역할을 하는 네트워크 포인트이며 넓은 의미로는 종류가 다른 네트워크 간의 통로의 역할을 하는 장치이다.
- 인터넷에 접속하기 위해 수많은 게이트웨이를 거쳐야 하며 게이트웨이는 다른 네트워크상의 통신 프로토콜을 변환해주는 역할을 하기도 한다.
- BUT! 게이트웨이를 지날 때마다 트래픽도 증가하기 때문에 속도가 느려질 수 있다.
- 게이트웨이에도 중복되지 않는 IP 주소가 필요한데 일반적으로 해당 네트워크 내 컴퓨터에 할당된 IP 주소 증 끝 자리만 다른 형태로 보통 1을 지정한다. ( ex IP 주소가 123.123.123.123이면 게이트웨이 주소는 123.123.123.123.1이 된다.)
- ex) 해외여행을 들 수 있는데 해외로 나가기 위해서 꼭 통과해야 하는 공항이 게이트웨이와 같은 개념이다.
게이트웨이를 확인하는 방법은 라우팅 테이블을 통해 볼 수 있고, 라우팅 테이블은 윈도우의 명령 프롬프트에서 netstat -r 명령어를 실행해 확인할 수 있다.
위 처럼 IPv4 경로 테이블, IPv6 경로 테이블이 있는데 이것이 바로 라우팅 테이블이며 게이트웨이, 인터페이스 등이 나오는 것을 볼 수 있다.
3) IP 주소 체계
IP 주소는 IPv4와 IPv6으로 나뉜다.
IPv4 | IPv6 | |
주소 길이 및 표시 방법 |
32비트 8비트씩 4부분 10진수 표시 ex) 203.252.53.55 |
128비트 16비트씩 8부분 16진수로 표시 ex) 2002:0221:ABCD:DCBA:0000:0000:FFFF:4002 |
주소 개수 | 약 43억개 | 2^128개 (약 43억x43억x43억x43억) |
주소할당 방식 | A,B,C,D 등의 클래스 단위 비순차 할당 | 네트워크 규모, 단말기수에 따라 순차 할당 |
브로드캐스트 주소 | 있음 | 없음(대신, 로컬범위 내에서 모든 노드에 대한 멀티캐스트 주소 사용) |
헤더 크기 | 가변 | 고정 |
추세는 IPv6으로 가고 있지만 현재 가장 많이 쓰이는 주소 체계는 IPv4이다.
3) - 1 클래스 기반 할당 방식(Classless Inter-Domain Routing)
클래스 기반 할당 방식(CIDR)은 IP 주소를 할당하고 패킷을 라우팅하는 방식 중 하나
- 1993년 이전엔 IP 주소를 할당하는 방식으로 클래스 기반 방식을 사용했지만, 호스트의 수가 늘어남에 따라 할당 가능한 IP 주소의 수가 고갈되는 것(1)과 라우팅 테이블의 크기가 커지는 문제(2)를 해결하기 위해 IETF에서 1993년부터 도입한 표준 IP 주소 할당 방식
- 앞에 있는 부분을 네트워크 주소, 그 뒤에 있는 부분을 컴퓨터에 부여하는 주소인 호스트 주소로 놓아서 사용한다.
클래스 A,B,C | 일대일 통신 | 클래스 D | 멀티캐스트 통신 | 클래스 E | 앞으로 사용할 예비용 |
구분 비트: 맨 왼쪽에 있는 비트
위 그림처럼 클래스 A의 경우 맨 왼쪽에 있는 비트가 0 이고, 클래스 B의 경우 10, 클래스 C의 경우 110 이다. 이를 통해 클래스 간의 IP가 나뉘어진다.
네트워크의 첫 번째 주소는 네트워크 주소로 사용되고 가장 마지막 주소는 브로드캐스트용 주소로 네트워크에 속해 있는 모든 컴퓨터를 데이터를 보낼 때 사용된다.
ex) 클래스 A로 12.0.0.0이란 네트워크를 부여받았다.
- 그러면 12.0.0.1 ~ 12.255.255.254의 호스트 주소를 부여받은 것이다.
- 이때 첫 번째 주소인 12.0.0.0은 네트워크 구별 주소로 사용하면 안되고 가장 마지막 주소인 12.255.255.255의 경우도 브로드캐스트용으로 남겨둬야 해서 사용하면 안된다.
- 그래서 그 사이에 있는 12.0.0.1 ~ 12.255.255.254를 컴퓨터에 부여할 수 있는 호스트 주소로 사용할 수 있다.
- 하지만 이 방식은 사용하는 주소보다 버리는 주소가 많아서 이를 해소하기 위해 DHCP, IPv5, NAT이 만들어졌다.
다음 IP의 클래스, 네트워크 부분, 호스트 부분
1. 10.3.4.3
=> 클래스: A 클래스 / 네트워크 부분: 10.0.0.0 / 호스트 부분: 3.4.3
2. 132.12.11.4
=> 클래스: B 클래스 / 네트워크 부분: 132.12.0.0 / 호스트 부분: 11.4
3. 203.10.1.1
=> 클래스: C 클래스 / 네트워크 부분: 203.10.1.0 / 호스트 부분: 1
4. 192.12.100.2
=> 클래스: C 클래스 / 네트워크 부분: 192.12.100.0 / 호스트 부분: 2
4. 130.11.4.1
=> 클래스 : B 클래스 / 네트워크 부분: 130.11.0.0 / 호스트 부분: 4.1
>> 이런 IP 주소는 없고 참고용입니다,,
3) - 1. DHCP(Dynamic Host Configuration Protocol)
주소 및 기타 통신 매개변수를 자동으로 할당하기 위한 네트워크 관리 프로토콜
- 이 기술을 통해 네트워크 장치의 IP 주소를 수동으로 설정할 필요 없이 인터넷에 접속할 때마다 자동으로 IP 주소를 할당할 수 있다.
- 네트워크 안의 컴퓨터에 자동으로 네임 서버 주소, IP 주소, 게이트웨이 주소를 할당한다.
- 많은 라우터와 게이트웨이 장비에 DHCP 기능이 있고, 이를 통해 대부분의 가정용 네트워크에서 IP 주소를 할당한다.
장점 | 단점 |
PC의 수가 많거나 PC 자체 변동사항이 많을 때 IP 설정이 자동으로 되기 때문에 효율적으로 사용 가능하다. | DHCP 서버에 의존되기 때문에 서버가 다운되면 IP 할당이 제대로 이루어지지 않는다. |
IP 충돌을 막을 수 있다. |
3) - 2. NAT(Network Address Translation)
패킷이 라우팅 장치를 통해 전송되는 동안 패킷의 IP 주소 정보를 수정해 IP 주소를 다른 주소로 매핑하는 방법 (사설 IP를 공인 IP로 변경에 필요한 주소 변환 서비스)
- 라우터 등의 장비를 사용해 다수의 사설 IP를 하나의 공인 IP 주소로 변환하는 기술
- NAT는 다수의 주소 변환 정보에 대해 IP 주소와 Port 번호로 구성된 NAT Forwarding Table을 보관하고 이에 맞게 주소 변환 서비스를 제공한다.
- 인터넷 회선 하나를 개통하고 공유기를 달아서 여러 PC를 연결해 사용할 수 있는 것은 인터넷 공유기에 NAT 기능이 탑재되어 있기 때문이다.
- NAT의 단점: 여러 명이 동시에 인터넷을 접속할 때 접속하는 호스트 숫자에 따라 속도가 느려질 수 있다.
- NAT를 사용하는 이유
공인 IP 주소의 절약 | 보안의 목적 |
인터넷 상의 공인 IP 주소는 한정되어 있다. IPv4 주소 체계만으로는 많은 주소들을 감당하지 못하기에 NAT로 공인 IP와 사설 IP로 나눠서 많은 주소를 처리한다. |
사설 IP를 사용하는 것은 외부에서 개인 PC나 인터넷 장비로 직접적인 접근을 하지 못하게 한다. NAT 장비는 Firewall(방화벽) 형태일 수 있고 Router일 수도 있다. |
주로 여러 대의 호스트가 하나의 공인 IP 주소를 사용해 인터넷에 접속하려고 하기 위해 NAT를 사용한다. | NAT를 이용하면 내부 네트워크에서 사용하는 IP 주소와 외부에 드러나는 IP 주소를 다르게 유지할 수 있기 때문에 내부 네트워크에 대한 어느 정도의 보안이 가능해진다. |
NAT Table의 특징
- 내부 네트워크에 위치한 호스트들의 사설 IP와 포트 번호에 대한 정보를 가지고 있다.
- 외부로 나갈 때의 동일한 IP와 각기 다른 포트 번호를 가지고 있다.
- 목적지 주소의 공인 IP와 서비스에 사용된 동일한 서비스 포트 번호를 가지고 있다.
공인 IP는 같으나, 포트 번호를 다르게 할당하여 각각의 호스트를 구분 짓는 구조
ex) 첫 번째 호스트 192.168.1.1:9688가 외부 호스트 68.1.31.1에 접속한다.
- 사설 IP - 192.168.1.1을 사용하는 호스트가 68.1.31.1에 접속을 원한다.
- 라우터는 NAT 기술을 사용해 이 요청에 공인 IP - 101.89.101.12와 포트번호 8801을 할당한다.
- 요청은 인터넷을 통해 68.1.31.1에 도달한다.
- 서버는 요청의 클라이언트 IP를 공인 IP - 101.89.101.12, 포트 8801로 인식하고 응답한다.
- 서버의 응답이 라우터에 도착한다. 라우터는 포트 번호 8801을 응답 패킷에서 인식한다.
- 라우터는 사설 IP - 192.168.1.1:9688 호스트에 할당된 포트임을 NAT 테이블에서 찾아 응답을 돌려준다.
3) - 3. IP 주소를 이용한 위치 정보
IP 주소는 인터넷에서 사용하는 네트워크 주소이기 때문에 이를 통해 동 또는 구까지 위치 추적이 가능하다.
https://thebook.io/080326/ch02/03/02/
https://blog.naver.com/bizblocklll/222152306690
https://m.post.naver.com/viewer/postView.naver?volumeNo=27046347&memberNo=2521903
https://devmoony.tistory.com/124
https://doctorson0309.tistory.com/575
http://www.ktword.co.kr/test/view/view.php?m_temp1=2724
https://brownbears.tistory.com/195
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=hai0416&logNo=221566797342
https://limkydev.tistory.com/168
https://jwprogramming.tistory.com/35
https://brunch.co.kr/@sangjinkang/61
'cs > 면접을 위한 CS 전공지식 노트' 카테고리의 다른 글
3-1. 운영체제의 구조와 역할 및 컴퓨터의 구조 (0) | 2022.10.04 |
---|---|
2-4.HTTP (0) | 2022.10.02 |
2-2. TCP/IP 4계층 모델 (0) | 2022.09.23 |
2-1. 네트워크의 기초(토폴로지&성능분석 명령어) (0) | 2022.09.22 |
1-2. 프로그래밍 패러다임(함수형,객체지향,절차적프로그래밍) (0) | 2022.09.20 |