한대의 컴퓨터가 인터넷을 사용할 때는 통신사와 계약을 해서 회선을 받고 케이블이나 와이파이를 연결하는 순간 IP를 할당 받는다.
이때 IP는 공인 IP이다.
공인 IP를 공유기에 연결하고 이 공유기에 디바이스들을 물리면 한 공인 IP에서 여러 사설 IP를 사용할 수 있게 된다.
그리고 공인 IP는 WAN이고, 사설 IP는 LAN이다.
공유기도 디바이스이기 때문에 공인 IP를 가지고 있으면서 사설 IP를 가지고 있는데, 이는 192.168.0.1과 같은 형태로 Gateway Address 또는 Router Address이다.
사설 IP는 아래와 같이 범위가 있다.
10.0.0.0 ~ 10.255.255.25 | 16,777,216 대 |
172.16.0.0 ~ 172.31.255.255 | 1,048,576 대 |
192.168.0.0 ~ 192.255.255.255 | 65536 대 |
위의 표에 나와있는 IP 범위에 들어가면 사설 IP라고 판단하고, 범위에 들어가지 않으면 공인 IP라고 판단할 수 있다.
NAT(Network Address Translation)
A 공유기에 연결된 노트북에서 어떠한 사이트에 접속 요청을 보내면, 192.168.0.4 IP를 가진 내 노트북에서는 무조건 192.168.0.1 Gateway Address IP를 가진 공유기에 신호를 보낸다.
공유기가 신호를 받으면 먼저 내부 네트워크에 요청을 받을 IP를 가진 디바이스가 있는지 확인 후 없으면 요청을 받을 IP를 가진 해당 사이트에 요청을 보내기 위해 WAN 주소 즉, 공인 IP를 통해 외부로 나가 라우팅을 거쳐 요청을 보낸다.
이때 사설 IP를 가진 디바이스에서 요청을 보내고, 공인 IP 주소로 변환하여 요청을 보내게 되는데, 이 변환하는 작업을 NAT라고 한다.
위의 상황은 클라이언트에서 외부로 요청을 보낼 때이다.
Port forwarding
NAT는 사설 IP에서 공인 IP로 변환하여 클라이언트에서 외부로 요청이 나갈 때 사용한다고 했다.
Port forwarding은 위의 상황과는 반대로 외부에서 클라이언트로 공인 IP에서 사설 IP로 변환하여 요청이 들어오게 할 때 사용하는 기술이다.
port forwarding은 개인의 공유기 설정 페이지에서 설정할 수 있다.
Dynamic IP Address VS Static IP Address
ISP(통신사)에 돈을 주고 계약을 맺어 IP를 할당받으면 내 집에서는 해당 IP를 쓰게 된다.
하지만 ISP 입장에서 계약하는 집집마다 다 IP를 고정적으로 주면 IP는 부족하게 될 것이다.
그래서 A 집이 휴가를 갔다고 쳤을 때 A 집에서 사용하던 IP를 ISP에서 회수하여 B 집에 할당해주고 A 집이 휴가에서 돌아와 다시 인터넷을 사용할 때는 다른 휴가 간 집의 IP를 회수해 할당하는 것이다.
즉, 쉽게 말해 IP를 돌려막기 하는 것이다.
하지만 이렇게 되면 Home server를 사용시 IP가 유동적으로 바뀌므로 외부에서 클라이언트로 접속할 때 엉뚱한 대로 접속하게 되는 경우가 생길 수 있다.
그리하여 ISP에 돈을 더 주고 Static IP Address를 할당받으면 된다.
DHCP(Dynamic Host Configuration Protocol)
새 노트북을 사서 공유기에 연결하려면 원래는 직접 IP를 설정해야 하지만 이런 경우 다른 디바이스에 있는 IP를 설정할 경우가 생기고 이렇게 되면 IP 충돌이 일어나므로 제대로 된 통신이 안된다.
그리하여 DHCP를 사용하면 자동으로 사용 안되고 있는 IP가 할당된다.
보통 공유기에는 DHCP server가 기본적으로 설치되어 있고, 클라이언트 입장인 디바이스들에도 DHCP Client가 기본적으로 설치되어 있다.
그리고 통신 부품들은 공장에서 기록된 식별자가 할당되어 있는데 이 식별자를 MAC Address 또는 Physical Address 라고 한다.
DHCP 프로세스를 간단히 보면 아래와 같다.
- 클라이언트에서 DHCP Client를 이용해 자신의 MAC 주소는 이러한데 IP 주소가 필요하다고 DHCP Server에 요청을 보낸다.
- 그러면 공유기에 있는 DHCP Server에서는 자신의 MAC 주소는 이러하고, 사용 가능한 IP 주소는 이거이다 라고 DHCP Client에게 알려준다.
- DHCP Client는 해당 IP를 사용하겠다고 DHCP Server에 응답을 보낸다.
- 그러면 DHCP Server는 DHCP Client에게 해당 IP는 얼마동안 임대 가능하다고 알려준다.
- 그리고 DHCP Client는 할당받은 IP와 여러 정보들을 컴퓨터 시스템에 기록한 후 사용가능하게 된다.
(from. 생활 코딩)
'Network > Network Note' 카테고리의 다른 글
[Network] Network 관련 용어 (0) | 2022.06.29 |
---|---|
Network Attack Process (0) | 2022.06.27 |