728x90
맨 아래의 참고자료들을 바탕으로 작성하는 글입니다
IP(Internet Protocol)
인터넷에서 다른 컴퓨터와 통신할 때 사용하는 프로토콜
- 프로토콜 = 통신 규약, 규칙
IP주소(Internet Protocol Adress)
컴퓨터 네트워크에서 장치들이 서로를 인식하고 통신하기 위해 사용하는 특수번호
- 인터넷 규약에서의 주소이며, 네트워크의 host에 대한 식별자
- 컴퓨터의 논리적인 주소를 구분함
- 흔히 사용 IP 주소는 32비트 체계를 사용 -> 약 40억 개의 주소를 표현가능
- 192.168.0.1 형태로 호스트의 주소를 정할 수 있음
비유
- 대한민국 행정체계에서 국민을 식별하기 위한 주민등록번호
- 컴퓨터 네트워크에서 host를 식별하기 위한 IP주소
* naver.com으로 접속하더라도 내부적으로는 IP주소를 이용해 통신한다
* DNS서버와 통신하여 IP주소를 받아옴
IP주소의 버전
IPv4 (가장 많이 사용)
- 32 bit(2^5) 주소체계
- 2^32 개의 경우의 수 = 43억 개
- 현재(2023) 인터넷에서 IPv4 주소체계를 많이 씀
- 주소가 모자라기 때문에 여러 기술들이 있음
- 공인 IP 주소 43억 개로는 현재 전 세계의 모든 컴퓨터를 처리할 수 없음
- 다양한 방법으로 이런 한계를 극복함
IPv6
- 128 bit(2^7) 주소체계
- 2^128 개의 경우의 수
- 43억개만 저장할 수 있는 IPv4의 문제를 해결하기 위해 등장
IPv6 주소 보유 (2023년 10월)
- 대한민국 5276개
- IPv4 주소 112,502,016에 비해 현저히 적은 수
IP의 분류
1. 공인 IP
세계에서 단 하나만 존재할 수 있는 IP주소
- 고정, 유동 가능
2. 사설 IP
공유기를 이용해 만들 수 있는 가상의 IP주소
- 고정, 유동 가능
3. 고정 IP
해당 컴퓨터의 IP주소를 고정적으로 사용
4. 유동 IP
IP번호가 수시로 변화한다
사설 IP의 등장이유
IPv4주소체계의 경우 43억개의 공인 IP만 할당할 수 있기 때문에 주소가 부족함. 그래서 사설 IP가 등장함
- 사설 IP = 공유기로 연결된 내부망에 적용되는 IP주소
- 각 라우터(공유기) 안에 기기들은 사설 IP가 부여 됨
- 가상의 IP주소 만든다
- 인터넷에 있는 다른 컴퓨터와 통신하고자 하면 해당 라우터가 가진 공인 IP를 거침
- 외부에서 사설 IP를 사용하는 컴퓨터에 접속할 때도 반드시 공인 IP거쳐야함
- 한 번에 사설 IP에 접속 불가능
- 라우터(공인IP) -> 인터넷 -> 수많은 라우터, 내부망 -> 라우터 도달(공인IP) -> 사설 IP 도달
서버구축 시 공인IP와 유동 IP
- 서버와 클라이언트 개념
- 네이버 접속 -> IP를 통해 접속함
- IP가 유동, 사설 IP라면 이전에 접속하던 IP주소 접근 시 오류가 남
- 네이버의 서버주소에 클라이언트 접속불가능
- 서버역할을 하는 컴퓨터는 반드시 고유한 주소가 필요함
- 유동 IP경우도 DDNS로 서버 구축 가능
- 사용자가 도메인주소로 해당 서버 접근할 때 해결가능
- naver.com 으로 dns서버 요청 -> IP주소 얻어서 -> 접근
- dns서버 자체가 실시간으로 네이버 서버 주소 가지고있으면 된다. 실시간으로 바뀐 ip주소 가지고있으면 상관 x
- 서버가 특정주기로 DNS서버에게 바뀐 IP주소를 알려준다
- 서버 구축 시 공인 IP주소 사용하는 게 일반적
도메인 네임 시스템(DNS)
IP주소를 일일이 기억하기 어렵기 때문에 사람이 쉽게 기억할 수 있는 도메인네임을 통해 다른 컴퓨터에 접속할 수 있음
- DNS에 도메인 네임을 요청하면 해당 도메인을 가진 서버의 IP를 반환하고, 이를 통해 웹서버의 콘텐츠를 받아올 수 있다
- DNS서버 거쳐 IP주소를 받고 그걸로 IP주소로 통신함
DDNS의 원리
- 서버가 다른 IP주소로 변경 시
- DDNS서버에게 현재 바뀐 주소 알려줌
- 클라이언트는 도메인 주소 접근 -> 바뀐 IP주소 알려줌
- 바뀐 IP주소 접근가능
인터넷 설치법
- ISP업체 = 인터넷 서비스 제공 업체
- 한국 kt skt
- 일반적으로 ISP 업체에게 돈 내고 인터넷 설치함
- 이 경우 ISP에게 한 개의 유동 IP 할당받음
- 고정 IP도 받을 수 있지만 kt에게 내야하는 돈 비싸
- 유동 IP는 ISP업체가 공인 IP주소를 유동적으로 고객에게 부여해주는 거 ㅇㅇ
- 가정집 사용방식
가장 쉽게 개인이 서버를 구축하는 방법
- 서버용 컴퓨터를 호스팅 업체에 신청해서 사용함
- 이렇게 하면 고정 공인 IP하나 할당받을 수 ㅇ
- 완전히 자기 자신만의 IP주소가 하나 생기므로 하나의 서버 운용가능
유동 IP의 변경 방식
유동 IP의 경우 MAC주소를 토대로 IP를 할당한다. 장치마다 IP주소가 바뀌는 이유이다
- 인터넷 신청하고 유동 아이피 받음
- 공유기 연결 시 121.129.86.55 아이피를 받음
- 해당 회선을 랜선으로 PC에 연결 시 168.126.35.122 아이피를 받음
- 다른 이유??
- MAC주소 = 모든 컴 장치마다 있는 고유 주소 = 물리적 주소라고도 함
- 각 컴퓨터마다 가지고있는 특성
- 공유기 PC는 네트워크 관련 장치가 다름 -> 서로 다른 MAC주소
- kt인터넷 서비스에서 순식간에 다른 유동 IP 아이피할당한다.
- 고정 IP에서는 발생하지 않음
사설 IP 대역
- 사설 IP는 대역이 정해져있음 -> 약속이다
- A클래스는 B, C에 비해 큰 기관에서 사용
- 일반적으로 c가 가장 많이 사용됨(웬만해서 공유기로 인터넷 사용하니까)
- DNS서버의 경우 ISP마다 차이가 있음
사설 IP의 단점
외부에서 내 컴퓨터를 찾을 수 없음(서버로 바로 사용 불가능)
- 사설 IP는 세게에서 하나만 존재하는 공인 IP주소가 아니기 때문
- 내부에서만 의미가 있고 외부접속 불가능
- 외부통신 시 많은 제약이 존재함
비유
- 공중전화 -> 전화번호는 세계 하나만 있는 고유 번호 입력해야함
- 공중전화는 전화를 받을 수 없음. 고정 전화번호가 없기 때문
- 하지만 전화 거는 건 가능함
- 클라이언트는 공인 IP주소 안가지고 있어도 접속가능하지만, 네이버는 공인 IP주소를 가지고 있어야함
사설 IP로 서버 운영법
포트 포워딩 사용하기
- 포트 포워딩 이용하면 사설 IP로 서버를 운영가능
- 회사 부여받은 공인 IP(공유기)로 패킷을 받는다
- 하나의 컴퓨터를 웹서버로 운영
- 공유기는 80번 포트로 패킷을 받고, 해당 패킷을 서버컴퓨터로 보냄
- 웹서버로 사용가능
- 특정 포트로 들어오는 패킷을 내부 컴퓨터로 넘겨주는 것 = 포트포워딩
- 특정 포트를 내부 컴퓨터에 매칭함
- 포트포워딩을 이용하면 사설 IP도 서버 운영가능 & 다양한 서버 운영도 가능
- 공유기가 하나의 공인 아이피를 내부 사설 IP로 나누는 기술 = NAT
NAT(Network Address Transiation)
공유기가 하나의 공인 IP를 내부 사설 IP로 나누는 기술을 NAT라고 함
- 사설 IP를 할당하고 포트포워딩 등의 기법을 이용하여 관리하는 기술의 총칭
- 사설 IP 사용으로 내부망 보호가능
- 연결된 pc관리가 쉬워진다
- 기본적으로 한정된 40억개 공인 ip주소를 사설 IP로 늘려서 수없이 많은 컴이 실제로 연결가능
- IPv4 주소체계의 한게를 해결
하나의 공인 IP에서 2대 이상의 웹 서버를 운용하는 방법
- 웹 서버는 80번이라는 정해진 포트를 사용함
- 공인 IP주소 하나에 두 개의 내부 IP주소가 있다면
- 호스트 2개를 각각 80번 포트, 81번 포트에 연결한다
- 포트를 다르게 분배하면 한 개의 공인 IP에서 여러 개의 웹 서버 운용이 가능하다
- DNS서버 등록 시 도메인 주소는 다르게 설정해야함
- 특정도메인 주소 들어왓을 때 서로 다른 웹서버로 연결하도록 ㅇ
IP대역의 중복
내부망 컴이 사설 안사용하고 공인 IP주소 사용중
일반적 사용 사설 IP 대역 사용 ㄴㄴ 다른 IP주소 사용 ㅅ...
다른 컴으로 접속해야할 때
동일 iP주소 2개 존재, 내부망 컴터로 접속한다.
사설망 내부에서 공인IP주소 사용 시 외부 접근 못하는 문제점이 있다
실제로 공유기 내부에서 IP주소를 임의로 설정가능하긴 하지만, 이런 문제때문에 설정안함 ㅇㅇ
사설 IP대역 해당하는 주소만을 내부 컴에 할당해주는 게 합리적 ㅇㅇ 다양한 문제 발생가능하니까 확실하게 이해 ㄱ
IP 추적
공인 IP 주소를 가진다면 추적이 쉽고, 사설 IP라고 하더라도 수사권이 있는 경찰을 ISP 업체를 통해 추적할 수 있음
- 사설 IP주소 사용 시 공인IP 확인가능
- 네이버에 아이피 주소 검색 -> 자신이 쓰는 공인 IP주소 나와
- 공인 IP주소 알면 IP주척 가능
- find IP로 IP주소 위치 알 수 ㅇ
- KT가 나온다!
- KT에서 부여해주는 하나이 사설 IP사용하기 때문에 KT가 나옴
- kt에서 할당해준 공인 IP주소가 나옴
- 실제 위치 공간은 아님. 사설 IP주소이기 때문
- 과거 실제 공인 IP주소 많이 사용한하면... 해당 컴 위치 추적되기도 했지만
- 현재는 ISP업체별로 관리법 달라.. IP주소만으로 찾아내는거 불가능
- 법적인 문제... ISP업체 통해 어떤 사용자~ 위치 알 수 있다. 경찰 ㅇㅇ
- 공인 IP주소 추적 간단/ 경찰은 어벷ㅊ에게 정보요청 가능
- 어떤 IP주소든.. 나를 나타내는 고유주소니 나쁜 짓 하지말자!
IP주소의 구조
>> ipconfig
IPv4 주소 . . . . . : 192.235.60.14
서브넷 마스크 . . : 255.255.255.0
192.235.60.14
- IP주소는 8bit씩 끊어서 표시함
- 각 칸에서 나올 수 있는 숫자는 값 범위는 0~255
- 2^8
- 192 = 11000000(2진수) = c0
- IPv4주소는 network id + host id 로 나뉨
- Network ID = 모든 호스트를 관리하기 어렵기 때문에 한 네트워크의 범위를 지정
- Host ID = 각각의 호스트를 관리하기 위해 사용
- IP주소에서 네트워크ID의 길이가 얼만지 나타내는 것 = 넷마스크
서브넷 마스크(Subnet Mask)
- 255.255.255.0
- 255 이진수는 0xFF, 11111111
- 이 서브넷 마스크를 IP주소와 비트 AND연산 시 네트워크 ID를 얻을 수 있음
11000000 (= 192)
11111 111
= 11000000
00001110 (= 14)
00000000
= 00000000
14의 경우 결과가 0이다
CIDR 표기법
192.235.60.14 / 24
- 서브넷 마스크를 개수로 표현하는 방식을 CIDR 표기법이라고 한다
- 24비트가 네트워크 ID의 길이이고, 32-24비트가 호스트 ID의 길이이다
- 사설 IP주소를 바로 웹서버로 사용 불가능
- 포트포워딩 기법을 사용한다면 웹서버로 사용 가능하다
- 일반적인 가정집은 유동 IP로서 공인 IP를 받는 경우가 많음
- 해외 사이트에서 IP가 차단된다면 효력이 있까 -> 있음
- 유동 IP라도 ISP에서 가정집에 공인 IP 부여 시 일반적으로 정해진 대역폭 안에서 유동IP부여하는 경우 많음
- 게임회사 -> 특정 대역폭 자체를 찾아내면 ip차단 큰 효력
- 공인 유동 IP주소를 이용해 서버구축하는 방법 -> DDNS
- 사설 IP주소를 이용해 서버를 구축하는 방법 -> 포트포워딩
- 사설 IP대역을 공인 IP대역으로 설정가능하지만, 권장되지 않음
- 가정집에서 인터넷에 연결할 때 공유기를 사용할 때와 pc에 바로 연결할 때 주소 다른 이유 -> MAC주소가 달라 다른 유동 IP를 할당받음
참고자료
https://www.youtube.com/watch?v=gOMljj6K2V0
https://sjquant.tistory.com/59
https://www.youtube.com/watch?v=pRWD7oTeuFw&t=764s
728x90