IP 주소(Address)는 네트워크 번지(주소)
브라우저를 통해 웹 사이트에 접속할 때 우리에게 보이는 웹 페이지는 실제로 어느 주소에 존재 하는 '웹 사이트를 호스팅하는 서버(웹 서버)'에 접속해서 취득한 웹 페이지 정보 입니다.
웹 서버는 데이터 센터에 있을 수도 있고, AWS와 같은 클라우드 서비스에 있을 수도 있습니다. 이 때, 웹 서버에 접근하기 위해서는 웹 서버가 그곳에 있다는 특정 정보가 필요합니다. 이 정보를 IP 주소라고 합니다. 웹 사이트 접속할 때는 이 IP 주소를 바탕으로 위치를 특정해 그곳에 있는 웹 서버를 호출할 수 있습니다.
- IPv4와 IPv6가 존재합니다.
- IPv4 = 2^32개
- IPv6 = 2^128개
IP 주소의 주요 특징
- 고유성
- 각 장치는 네트워크 상에서 고유한 IP 주소를 가집니다. 이를 통해 특정 장치를 정확히 식별하고, 데이터를 올바르게 전달할 수 있습니다.
- 표준화된 형식
- IP 주소는 숫자와 점(.)을 사용하는 표준 형식을 가집니다. 예를 들어, 192.168.1.1과 같은 형식입니다.
- 동적 및 정적 할당
- IP 주소는 정적(고정) 또는 동적으로 할당될 수 있습니다.
- 정적 IP 주소
- 장치에 고정적으로 할당되어 변경되지 않는 주소입니다.
- 서버와 같이 항상 동일한 IP 주소가 필요한 장치에 사용됩니다.
- 동적 IP 주소
- 네트워크에 연결할 때마다 DHCP (Dynamic Host Configuration Protocol) 서버에 의해 장치에 할당되는 주소입니다.
- 정적 IP 주소
- IP 주소는 정적(고정) 또는 동적으로 할당될 수 있습니다.
- 네트워크 인터페이스 식별
- IP 주소는 장치가 연결된 특정 네트워크와 그 네트워크 내의 해당 장치를 식별합니다.
퍼블릭 IP 주소와 프라이빗 IP 주소
퍼블릭 IP주소는 글로벌 IP주소라고 하고 그 반대는 프라이빗 IP주소 입니다.
퍼블릭 IP주소는 전 세계에서 식별할 수 있는 주소지만, 프라이빗 주소는 닫힌 네트워크 (근거리 통신-LAN) 내에서만 식별할 수 있는 IP 주소 입니다.
퍼블릭 IP 주소
- 정의 및 사용
- 퍼블릭 IP 주소는 인터넷 전체에서 유일하며, 인터넷 상의 장치들이 서로를 식별하고 통신하기 위해 사용됩니다.
- 이 주소는 인터넷에 연결된 모든 장치에게 보이며, 외부 네트워크에서 접근이 가능합니다.
- 할당
- 퍼블릭 IP 주소는 인터넷 서비스 제공업체(ISP)에 의해 할당됩니다.
- 주소는 고정적(정적) 또는 임시적(동적)일 수 있습니다.
- 주요 용도
- 웹 서버, 이메일 서버 및 클라우드 서비스와 같이 인터넷 상에서 직접 접근 가능해야 하는 서비스에 사용됩니다.
프라이빗 IP 주소
- 정의 및 사용
- 프라이빗 IP 주소는 사설 네트워크 내에서만 사용되며, 인터넷 상에서는 유일하지 않습니다.
- 이 주소는 외부 인터넷과 직접적으로 통신할 수 없으며, 일반적으로 로컬 네트워크 내에서만 사용됩니다.
- 할당
- 프라이빗 IP 주소는 조직의 네트워크 관리자에 의해 할당되거나, DHCP 서버에 의해 자동으로 할당될 수 있습니다.
- 주요 용도
- 가정, 사무실, 학교 등의 내부 네트워크에서 사용되며, 컴퓨터, 프린터, 모바일 장치 등을 연결하는 데 사용됩니다.
- 특별한 IP 범위
- 프라이빗 IP 주소에는 특정 범위가 지정되어 있습니다
- 10.0.0.0 – 10.255.255.255
- 172.16.0.0 – 172.31.255.255
- 192.168.0.0 – 192.168.255.255
CIDR 블록으로 IP 주소 범위 결정
Classless Inter-Domain Routing. 클래스 없는 도매인 간 라우팅 기법으로 1993년에 도입이 되었습니다. '사이더'라고 발음 합니다.
- IP 주소를 나타내는 숫자열은 크게 네트워크 부분과 호스트 부분으로 나눌 수 있습니다.
- 네트워크 부분은 문자 그대로 네트워크를 정의하고 호스트 부분은 그 네트워크 내의 호스트, 즉 네트워크 안에서 접속할 수 있는 서버 등을 나타내는 부분 입니다.
- 16은 서브넷 마스크로 16번째 까지가 네트워크 부분 입니다.
- 즉 서브넷 마스크가 1인 부분 상위 16비트가 네트워크 부분 입니다.
- 0이 호스트에 해당 합니다. 지금 위의 예시에서 사용할 수 있는 호스트는 2^16 = 65536개 입니다.
네트워크 주소와 브로드캐스트 주소
172.31.0.0(호스트 부분이 모두 0인 주소)은 네트워크 주소 172.31.255.255(호스트 부분이 모두 1인 주소)는 브로드캐스트 주소라는 특별한 주소 입니다. 이 2개는 할당이 불가능한 주소 입니다.
모든 네트워크에는 네트워크 주소와 브로드캐스트 주소가 있으므로 할당할 수 있는 주소 수는 '네트워크 총 주소 수 - 2'개다.
방화벽에서 허용된 통신만 통과
인터넷을 통해 전 세계의 다양한 웹 사이트나 서비스에 접속할 수 있지만 전 세계와 연결된다는 것은 각종 악성 코드나 해커의 침입에 노출된다는 뜻과도 같습니다. 이런 보안 위협으로부터 시스템을 지키기 위해 사용하는 것이 방화벽 입니다.
방화벽은 보안 위협이 발생했을 때 시스템을 지키는 역할을 합니다. 하드웨어 형태의 방화벽도 있고 소프트웨어 형태로 서버에 설치돼 동작하는 방화벽도 존재합니다.
AWS에서는 보안 그룹이나 네트워크 ACL 같은 방화벽 기능을 가진 서비스가 있습니다.
부하 분산을 위해 여러 서버에 접속을 분배
서버 1대당 한 번에 처리할 수 있는 접속자 수는 정해져 있기 때문에 한 번에 많은 사람이 몰리면 CPU나 메모리의 사용량이 증가해 서버가 느려지고 최악의 경우 서버가 멈출 수도 있습니다. 이를 위해 부하 분산을 고려해야 합니다.
서버 부하 분산(Load Balancing)
네트워크 트래픽, 클라이언트 요청, 컴퓨팅 작업 등을 여러 서버로 분산시켜 처리하는 과정입니다. 이 방법은 단일 서버에 과부하가 걸리는 것을 방지하고, 네트워크의 효율성과 가용성을 향상시키는 데 중요합니다.
부하 분산의 주요 기능
- 효율성 향상
- 서버 부하 분산은 네트워크 트래픽과 요청을 여러 서버에 균등하게 분배하여, 각 서버가 과부하 없이 최적의 성능으로 운영될 수 있도록 합니다.
- 가용성 및 신뢰성 증가
- 단일 장애 지점(Single Point of Failure)을 제거하여 전체 시스템의 가용성을 향상시킵니다.
- 한 서버에 문제가 발생하더라도, 다른 서버가 트래픽을 처리하여 서비스 중단을 방지합니다.
- 확장성
- 트래픽이 증가하거나 요구 사항이 변경될 때, 쉽게 추가 서버를 네트워크에 통합할 수 있어 확장성이 좋습니다.
이렇게 부하를 분산시키기 위해서 일반적으로 로드 밸런서(Load Balancer)라는 장치를 사용 합니다.
라우팅 및 라우팅 테이블
라우팅은 네트워크 상에서 데이터 패킷이 소스에서 목적지까지 전달되는 경로를 결정하는 과정입니다. 라우터와 같은 네트워크 장비는 이 라우팅 과정을 관리하며, 이를 위해 라우팅 테이블을 사용합니다.
인터넷을 사용하는 사용자가 경로를 알 필요가 없습니다. 대신 라우터가 최적의 경로를 찾아서 경로를 결정하고 연결합니다. 라우터가 IP 주소까지의 경로를 결정하는 것을 라우팅이라고 합니다.
각 라우터는 소유한 경로 정보를 기반으로 목적지 IP 주소를 향해 이동해야 하는 네트워크를 결정 합니다. 이 경로 정보를 라우팅 테이블이라고 합니다. 라우팅 테이블은 라우터가 소유한 네트워크의 지도와 같은 것 입니다.
라우팅의 기본 개념
- 경로 결정
- 라우팅은 네트워크상의 노드(예: 라우터, 스위치)가 데이터 패킷의 출발지와 목적지 주소를 바탕으로 최적의 경로를 결정하는 과정입니다.
- 동적 & 정적 라우팅
- 정적 라우팅
- 경로가 수동으로 설정되며, 네트워크 변경 시 관리자가 경로를 업데이트해야 합니다.
- 동적 라우팅
- 경로가 네트워크 상태에 따라 자동으로 조정됩니다. 라우팅 프로토콜을 사용하여 네트워크 변화에 동적으로 대응합니다.
- 정적 라우팅
라우팅 테이블의 기본 개념
- 목적지 네트워크 주소
- 데이터 패킷이 전달될 최종 네트워크 또는 호스트의 주소입니다.
- 넥스트 홉(Next Hop)
- 패킷이 목적지로 가기 위해 다음으로 거쳐야 할 라우터나 네트워크 장치의 주소입니다.
- 인터페이스
- 패킷이 해당 네트워크로 전송되기 위해 사용되는 로컬 라우터의 인터페이스입니다.
- 메트릭(Metric)
- 목적지까지의 경로 비용을 나타내는 값입니다. 이 값은 라우터가 여러 가능한 경로 중에서 최적의 경로를 선택하는 데 사용됩니다.
AWS에서는 Amazon VPC의 라우팅 테이블이라는 기능이 이에 해당합니다. 라우팅 테이블에는 인터넷이나 각 AWS 서비스에 대해 어떤 엔드포인트를 경유할지와 같은 경로 정보를 관리할 수 있습니다.
도메인 이름과 IP 주소를 연결하는 DNS
웹 사이트에 접속하기 위해서 도메인을 입력하고 들어가야 합니다. 예를 들어 'www.naver.com'.
도메인은 점으로 연결된 문자열로 구성돼 있으면 기업 이름과 담체 이름을 표현하는 경우가 많습니다.
도메인 이름에는 IP 주소가 연결돼 있어 사용자는 도메인 이름만으로 사이트에 접속할 수 있습니다.
DNS(Domain Name System)가 우리 대신 도메인 이름에 연결된 IP 주소를 찾아 줍니다.
이러한 DNS의 기능을 이름 해석이라고 합니다.
출처
https://product.kyobobook.co.kr/detail/S000200882352
'클라우드&인프라 > AWS 구조와 서비스' 카테고리의 다른 글
VPC에서 VPC, 외부 서비스, 온프레미스와의 연결 (1) | 2023.12.24 |
---|---|
Amazon VPC (2) | 2023.12.23 |
가상 서버 데이터 저장을 위한 EBS (0) | 2023.12.18 |
Amazon S3에 대해 (2) (0) | 2023.12.11 |
Amazon S3에 대해 (1) (1) | 2023.10.12 |