ip

agnusdei·2024년 11월 8일
0

Hardware & Software

목록 보기
105/136

IP(Internet Protocol) 주소 하나로 특정 PC를 식별할 수 있는 원리는 고유성과 네트워크 경로 설정에 기반합니다. IP 주소는 전 세계의 네트워크 장치에 대해 고유하게 할당되어, 패킷이 해당 주소를 따라 정확한 위치에 도달할 수 있도록 설계되었습니다. IP 주소를 통해 특정 PC를 식별하는 방법과 제한점을 아래에서 설명하겠습니다.

  1. IP 주소의 고유성

(1) 공인 IP (Public IP)

공인 IP 주소는 인터넷 상에서 유일한 주소로, 주로 인터넷 서비스 제공 업체(ISP, Internet Service Provider)에 의해 할당됩니다. 각 공인 IP 주소는 네트워크에 연결된 하나의 장치(예: 라우터, 서버) 또는 네트워크를 대표하며, 인터넷 상에서 특정 네트워크 또는 장치를 유일하게 식별할 수 있습니다.

(2) 사설 IP (Private IP)

사설 IP 주소는 네트워크 내에서 고유하게 사용되는 IP 주소로, 라우터와 같은 네트워크 장치가 내부 네트워크에서 장치를 구분하기 위해 할당합니다. 사설 IP는 내부 네트워크에서만 유효하고, 인터넷 상에서는 공인 IP 주소로 변환되어 사용됩니다. 이 과정을 NAT(Network Address Translation)라고 합니다.

  1. IP 주소를 통한 특정 PC 식별 방식

    1. 라우팅 및 주소 매핑: 인터넷에서 특정 장치에 데이터를 보내려면 그 장치의 공인 IP 주소가 필요합니다. 인터넷 상의 패킷은 라우터를 거치며, IP 주소에 따라 최적의 경로로 전달됩니다. 이렇게 IP 주소에 따라 경로가 설정되므로, 특정 IP 주소를 통해 해당 장치가 위치한 네트워크까지 도달할 수 있습니다.
    2. NAT(Network Address Translation): 많은 가정이나 사무실에서는 사설 IP 주소를 통해 여러 장치가 하나의 공인 IP 주소를 공유해 인터넷에 연결됩니다. NAT를 통해 특정 장치로 들어온 패킷을 사설 IP 주소로 변환하여 목적지까지 전달합니다. 이 과정에서 공인 IP는 라우터와 연결된 네트워크 전체를 식별하지만, 최종적으로 각 장치로 패킷이 도달할 수 있습니다.
    3. 포트 번호 사용: 공인 IP 하나로 여러 장치를 식별하기 위해 포트 번호(Port Number)를 활용합니다. NAT는 포트 번호를 이용하여 패킷을 정확한 사설 IP 주소의 장치에 연결하는 역할을 합니다. 예를 들어, 특정 포트 번호로 들어오는 패킷은 네트워크 내의 특정 장치로 전달됩니다.
    4. MAC 주소 활용: IP 주소만으로 완전히 고유한 장치를 특정하기 어렵기 때문에, 네트워크 내부에서는 각 장치의 MAC(Media Access Control) 주소를 함께 사용하여 완전히 고유한 장치를 식별합니다. MAC 주소는 네트워크 카드에 할당된 고유한 식별자이며, 네트워크 장치들은 IP 주소와 MAC 주소를 매핑하여 패킷을 정확히 전달합니다.
  2. IP 주소만으로 특정하기 어려운 경우

    • 동적 IP 할당: ISP에 따라 가정용 공인 IP 주소는 DHCP(Dynamic Host Configuration Protocol)를 통해 할당되며, 일정 시간마다 IP 주소가 변경됩니다. 이는 특정 시간대에만 해당 IP 주소로 특정 장치를 식별할 수 있음을 의미합니다.
    • 프록시와 VPN 사용: 프록시 서버나 VPN(Virtual Private Network)을 사용하여 인터넷에 접속할 경우, 사용자의 실제 IP 주소 대신 프록시 서버나 VPN 서버의 IP 주소로 나타납니다. 이는 실제 사용자의 위치와 장치를 숨기는 효과가 있으며, 특정 장치를 IP 주소만으로 식별하기 어렵게 만듭니다.
    • 내부 네트워크 구조: NAT를 통해 공인 IP 하나에 여러 사설 IP 주소를 연결하는 경우, 외부에서 공인 IP 주소만으로 내부 네트워크의 특정 장치를 알 수 없습니다. 공인 IP는 외부와의 연결을 위한 식별자로 사용될 뿐, 내부 네트워크 장치의 구체적인 위치나 정보를 포함하지 않습니다.

결론

IP 주소는 공인 IP 주소를 통해 외부에서 네트워크에 접근할 수 있도록 하지만, NAT와 같은 기술을 통해 네트워크 내 여러 장치를 연결하기도 하므로 IP 주소만으로 특정 장치를 식별하는 데는 제한이 있습니다. 네트워크 내부에서는 IP와 MAC 주소를 함께 사용하여 최종 장치를 특정합니다.

IP 주소를 이용해 인터넷 상에서 특정 PC로 데이터를 전달하는 과정을 예시와 함께 순서대로 설명하겠습니다. 이 과정은 공인 IP 주소를 통해 데이터를 전송하는 외부 네트워크의 요청이 특정 PC에 도달하기까지의 전체 흐름을 포함하며, NAT와 포트 매핑 과정도 설명합니다.

예시 상황

•	외부 장치(예: A라는 컴퓨터)가 특정 웹사이트 서버에 있는 리소스에 접근하려고 합니다.
•	이 웹사이트 서버는 사설 네트워크에 위치한 특정 PC입니다.
•	이 사설 네트워크는 라우터에 연결되어 있으며, 라우터에는 공인 IP 주소가 할당되어 있습니다.
•	라우터는 내부 네트워크 장치들에게 사설 IP 주소를 할당하여 연결을 관리합니다.

1단계: 외부 장치에서 요청을 생성

과정:
1. A 컴퓨터는 특정 웹 리소스에 접근하기 위해 HTTP 요청을 생성합니다.
2. 요청 패킷에는 A 컴퓨터의 출발지 IP 주소와 포트 번호, 그리고 목적지 IP 주소와 포트 번호가 포함됩니다.
• 여기서 목적지 IP 주소는 웹사이트 서버가 위치한 네트워크의 공인 IP 주소입니다.

예시:
• 출발지: IP 주소: 203.0.113.10, 포트: 50000
• 목적지: 공인 IP 주소: 198.51.100.20, 포트: 80

2단계: 인터넷 라우터를 통해 목적지 IP 주소로 패킷 전달

과정:
1. A 컴퓨터에서 발송된 패킷은 인터넷을 거쳐 해당 IP 주소(198.51.100.20)로 전달됩니다.
2. 인터넷 라우터들은 목적지 IP 주소에 따라 최적의 경로를 찾아 패킷을 전송합니다.

결과:
• 이 과정에서 패킷은 여러 네트워크 라우터를 거쳐, 최종적으로 198.51.100.20이라는 공인 IP 주소를 가진 네트워크에 도착합니다.

3단계: 라우터에서 패킷 수신 및 NAT 변환

과정:
1. 패킷이 공인 IP 주소를 가진 라우터에 도착하면, 라우터는 패킷을 내부 네트워크의 특정 장치로 전달하기 위해 NAT(Network Address Translation)을 수행합니다.
2. 이때 라우터는 목적지 포트 번호를 기반으로 사설 네트워크의 어느 장치로 패킷을 전달할지 결정합니다.
• 예를 들어, 포트 번호 80이 포함된 요청은 사설 IP 주소를 가진 192.168.1.10이라는 장치로 전달되도록 설정할 수 있습니다.

결과:
• 라우터는 패킷의 목적지 IP 주소를 198.51.100.20에서 사설 IP 주소 192.168.1.10으로 변환합니다.
• 이렇게 외부에서 요청된 공인 IP 주소와 사설 IP 주소를 매핑하여 특정 장치로 전달하는 것을 포트 포워딩(Port Forwarding)이라고 합니다.

4단계: 내부 네트워크 장치에서 요청 처리

과정:
1. 192.168.1.10이라는 사설 IP 주소를 가진 PC(웹 서버 역할을 하는 PC)가 패킷을 수신합니다.
2. 이 장치는 패킷을 확인한 후 요청된 리소스를 찾고, 응답 데이터를 준비합니다.

예시:
• 예를 들어, 192.168.1.10은 웹 서버로 설정된 PC이며, 클라이언트가 요청한 웹 페이지를 찾아 HTTP 응답 패킷을 생성합니다.

5단계: 라우터를 통해 응답 패킷 반환 (NAT 변환)

과정:
1. 웹 서버 PC(192.168.1.10)는 A 컴퓨터로 응답 패킷을 전송하기 위해 다시 라우터로 패킷을 보냅니다.
2. 라우터는 응답 패킷의 출발지 주소를 사설 IP 주소 192.168.1.10에서 공인 IP 주소 198.51.100.20으로 변경하여 A 컴퓨터로 전달합니다.
3. 이 과정에서 A 컴퓨터의 포트 번호(50000)도 그대로 유지되므로, 응답 패킷이 정확히 A 컴퓨터에 도달할 수 있습니다.

6단계: A 컴퓨터에서 응답 수신 및 처리

과정:
1. A 컴퓨터는 라우터를 통해 전달된 응답 패킷을 수신하고, 응답의 포트 번호를 확인하여 해당 응답을 요청에 매칭합니다.
2. 이렇게 매칭된 응답 데이터는 A 컴퓨터의 웹 브라우저에 표시됩니다.

전체 과정 요약

1.	A 컴퓨터에서 특정 IP 주소(198.51.100.20)로 HTTP 요청 생성
2.	인터넷 라우터를 통해 목적지 IP로 패킷 전달
3.	공인 IP 주소를 가진 라우터에서 패킷 수신 후 NAT 변환하여 내부 장치로 포트 포워딩
4.	내부 네트워크의 웹 서버 PC가 요청 처리 후 응답 패킷 생성
5.	라우터에서 응답 패킷의 출발지 주소를 공인 IP로 변환하여 외부로 전달
6.	A 컴퓨터가 응답 패킷을 수신하고 요청에 맞게 처리

이렇게 IP 주소와 포트 번호를 기반으로 하는 NAT와 포트 포워딩 과정을 통해, 공인 IP 주소 하나로도 내부 네트워크의 특정 PC를 특정하여 통신할 수 있습니다.

0개의 댓글