네트워크 / NAT(Network Address Translation)

NAT는 네트워크 주소 변환을 의미하며, 네트워크 트래픽의 IP 주소를 변환하는 기술입니다. 주로 사설 네트워크(Private Network)와 공인 네트워크(Public Network) 간의 통신을 가능하게 하기 위해 사용됩니다. NAT는 보안, 주소 공간 절약, 그리고 네트워크 확장을 위해 필수적인 기능으로 널리 활용됩니다.

NAT의 주요 기능

  1. IP 주소 절약:

    • IPv4 주소의 고갈 문제를 해결하기 위해 사설 IP 주소(Private IP)와 공인 IP 주소(Public IP) 간 변환을 수행합니다.
    • 하나의 공인 IP 주소를 사용해 여러 기기가 인터넷에 접근할 수 있도록 합니다.
  2. 보안 강화:

    • 외부 네트워크에서 내부 네트워크의 사설 IP 주소를 알 수 없게 해 보안성을 높입니다.
    • 트래픽 필터링 및 특정 포트만 허용하는 NAT 설정으로 기본적인 방화벽 기능을 제공합니다.
  3. 네트워크 확장:

    • 사설 네트워크를 사용함으로써 대규모 네트워크 환경에서 공인 IP를 절약하고 효율적으로 확장할 수 있습니다.

NAT의 동작 방식

NAT는 트래픽이 네트워크 장치(라우터 또는 방화벽)를 통과할 때 IP 주소와 포트 정보를 변환하여 동작합니다. NAT가 수행되는 주요 단계는 다음과 같습니다:

  1. 패킷의 IP 주소와 포트 정보 확인:

    • 송신 트래픽의 출발지 주소(사설 IP)와 포트 번호를 확인합니다.
  2. 주소 변환:

    • 사설 네트워크의 출발지 주소를 공인 주소로 변환하거나, 반대로 공인 주소를 사설 주소로 변환합니다.
  3. 패킷 전달:

    • 변환된 패킷을 목적지 네트워크로 전달합니다.
  4. 역변환:

    • 응답 트래픽이 들어오면, 변환된 주소를 원래 주소로 역변환하여 내부 네트워크로 전달합니다.

NAT의 유형

  1. Static NAT (정적 NAT):

    • 하나의 사설 IP 주소를 하나의 공인 IP 주소에 고정 매핑합니다.
    • 주로 내부 서버가 외부에서 접근 가능해야 할 때 사용됩니다.
    • 예) 내부 웹 서버가 192.168.1.10일 때, 공인 IP 203.0.113.10로 매핑.
  2. Dynamic NAT (동적 NAT):

    • 사설 IP 주소를 공인 IP 주소 풀(pool) 중 하나로 변환합니다.
    • 공인 IP가 부족할 경우, NAT 할당이 실패할 수 있습니다.
  3. PAT (Port Address Translation):

    • 하나의 공인 IP 주소를 여러 사설 IP 주소가 포트 번호를 이용해 공유하도록 합니다.
    • 가장 일반적으로 사용되는 형태로, 일반적으로 **NAPT(NAT Overload)**라고도 합니다.
    • 예) 내부 네트워크의 여러 기기(192.168.1.x)가 공인 IP 203.0.113.1로 변환되며 포트를 통해 식별.
  4. Policy-Based NAT (정책 기반 NAT):

    • 트래픽의 조건(출발지 IP, 목적지 IP, 포트 등)에 따라 NAT 정책을 적용합니다.
    • 복잡한 네트워크 환경에서 유용합니다.

NAT의 장점과 단점

장점

  • IP 주소 절약: 여러 사설 IP가 하나의 공인 IP를 공유 가능.
  • 보안 강화: 내부 네트워크가 외부에 노출되지 않음.
  • 유연성: 네트워크 구성 변경 시 IP 주소 변경 없이 관리 가능.

단점

  • 성능 저하: NAT 변환 과정에서 추가적인 처리 시간이 발생.
  • 추적 어려움: 여러 내부 기기가 동일한 공인 IP를 사용하면 특정 기기를 추적하기 어려움.
  • 프로토콜 호환성 문제: 일부 응용 프로그램(예: P2P, VoIP)에서 NAT로 인해 통신 문제가 발생할 수 있음.
같은 카테고리의 다른 글
스팀 / 라이브러리(게임 설치 폴더) 추가하는 방법

스팀 / 라이브러리(게임 설치 폴더) 추가하는 방법

아무래도 SSD가 비싸다보니 C 드라이브의 용량이 크지 않습니다. 사무용으로 쓸 때는 괜찮은데, 개발이나 게임을 하면 용량의 한계를 느낍니다. 특히 요즘 게임은 수십 GB는 족히 넘거든요. 용량이 부족하면 SSD를 하나 더 사서 장착하면 되는데요, 그 SSD에 스팀 게임을 설치하려면 어떻게 해야 할까요? 스팀 라이브러리 폴더를 추가해주면 됩니다. 스팀을 실행합니다. 왼쪽 위에 있는 을 클릭하고 ...

OBS Studio / 디스플레이 캡쳐 / 특정 영역 녹화하는 방법

OBS Studio / 디스플레이 캡쳐 / 특정 영역 녹화하는 방법

OBS Studio로 녹화할 때, 모니터 전체가 아닌 특정 영역만 녹화할 수 있다. 디스플레이 캡처를 추가하고, 필요한 부분만 남기고 자르면 된다. 를 추가한다. 를 클릭한다. 를 클릭한다. 적당히 이름을 정하고 를 클릭한다. 영역 지정 방법은 상대적과 절대적이 있는데, 에 체크 되어 있으면 상대적으로 지정한다. 아래와 같이 하면 상하좌우 300px을 자르고 남은 부분을 지정한다. 아래와 ...

버추얼박스 / 가상 머신 PXE 네트워크 부팅 하는 방법

버추얼박스 / 가상 머신 PXE 네트워크 부팅 하는 방법

버추얼박스 가상 머신에 OS 설치용 ISO를 탑재하고 부팅하면 설치 화면으로 진입한다. 이유는 DVD로 부팅하는 것이 우선 순위로 설정되어 있기 때문이다.  그런데 PXE를 이용한 네트워크 설치를 하고 싶다면 어떻게 할까? 방법 1 가상 머신의 설정을 열고 으로 들어간다. 부팅 순서에 플로피, 광 디스크, 하드 디스크, 네트워크가 있고, 네트워크는 활성화되어 있지 않다. 네트워크 앞에 있는 체크 박스에 ...

Bitvise SSH Client / 사용법

Bitvise SSH Client / 사용법

다운로드 및 설치 아래 링크에 접속하여 Bitvise SSH Client Installer를 다운로드하고 설치한다. https://www.bitvise.com/ssh-client-download SSH로 서버에 접속하기 Bitvise SSH Client를 실행한다. 접속에 필요한 정보를 입력하고 을 클릭한다. 적절한 방식으로 Accept하면 접속이 완료된다. 을 클릭하면... 콘솔 창이 생기면서 필요한 작업을 할 수 있다. 모든 작업을 마치면 을 클릭한다. 프로파일 저장하기 Bitvise SSH Client는 PuTTY와는 달리 접속 정보를 파일로 저장할 ...

노트북 / HP 빅터스 / 15-FA0061TX 구입 후기

노트북 / HP 빅터스 / 15-FA0061TX 구입 후기

노트북을 구입하게 되었다. 용도는 그래픽과 동영상 편집용. 원활한 작업을 위해서는 다음의 사양이 필요했다. 외장 그래픽 카드 메모리 확장 또는 교체 가능 디스크 확장 또는 교체 가능 가격은 100만 원 대 초중반 색은 검정 또는 그레이 색에 신경 쓰는 이유는 변색 때문이다. 손 때 묻는 거야 닦으면 되지만, 하얀색 노트북은 누렇게 변색되는 경우가 많다. 이 조건으로 검색을 하니 ...

구글 애널리틱스 / GA4 / 애드센스 연결하는 방법

구글 애널리틱스 / GA4 / 애드센스 연결하는 방법

Google 애널리틱스 4(GA4) 속성에 애드센스를 연결하여, 애드센스 관리자 페이지에서는 볼 수 없는 여러 가지 통계를 볼 수 있다. 예를 들어 페이지별 수익 같은 거... 애드센스 계정과 애널리틱스 계정이 같다는 가정하에 연결하는 순서는 다음과 같다. 애드센스 관리자 페이지에서 을 클릭한다. 를 클릭한다. 연결하려는 속성을 선택하고 를 클릭한다. 완료가 ...

사진의 EXIF 정보 보는 방법, 수정하는 방법, 제거하는 방법

사진의 EXIF 정보 보는 방법, 수정하는 방법, 제거하는 방법

EXIF(Exchangeable Image File Format)는 디지털 카메라나 스마트폰 등으로 찍은 이미지 파일에 포함되는 메타데이터 형식입니다. 사진을 찍을 때 자동으로 저장되는 정보들이라고 할 수 있어요. 이 정보는 이미지 파일에 포함됩니다. EXIF에는 다음과 같은 정보들이 들어갑니다.

PuTTY / 사용법 / SSH / 자동 로그인하는 방법

PuTTY / 사용법 / SSH / 자동 로그인하는 방법

PuTTY로 리눅스 서버에 접속할 때 사용자 이름과 비밀번호를 입력합니다. 그 과정이 번거롭다면 Key를 이용하여 자동으로 로그인하도록 만들 수 있습니다. 그 방법을 정리합니다. 서버에서 Key 생성 서버에 root으로 로그인했고, 현재 디렉토리는 /root이라고 가정합니다. 다음과 같이 명령하여 Key를 생성합니다. 몇 가지 질문을 하는데 계속 엔터를 치면 됩니다. ssh-keygen .ssh 디렉토리로 이동합니다. cd .ssh id_rsa와 id_rsa.pub 두 개의 파일이 있습니다. id_rsa.pub 파일의 ...

당구 / 길 / 바운딩

당구 / 길 / 바운딩

상단 당점으로 밀어쳤을 때 수구가 휘어지는 현상을 이용하는 것을 바운딩이라고 한다. 밀어치는 정도와 회전을 이용하여 여러 가지 응용이 가능하다. 원 쿠션 투 바운딩 바운딩의 기초는 아래의 형태를 성공시키는 것이다. 수구를 쿠션에 붙여놓으면 밀어치기가 수월해진다. 두께 100%로 밀어치면, 단 쿠션에 두 번 맞고 장 쿠션에 한 번 맞는다. 위의 배치에 자신이 생기면, 수구를 쿠션에서 뗀다. ...

안드로이드 / 앱 / 카카오뱅크 / 체크카드 재발급 신청하는 방법

안드로이드 / 앱 / 카카오뱅크 / 체크카드 재발급 신청하는 방법

카카오뱅크 체크카드가 반으로 쪼개졌다. 그래도 결제가 될 줄 알았는데, 안되더라. 교통카드로 사용하는 것이어서 바로 재발급 신청을 했다.(삼성페이에 다른 교통카드를 등록해두기는 했는데, 오류가 잦아서 실물 카드를 주로 사용한다.) 카카오뱅크답게 앱에서 간편하게 신청 가능하다. 준비할 것은 주만등록증. 정확히는 주민등록증에 있는 발급 일자. 캡처를 막은 단계가 있어서 다 찍지는 못했는데, 다음과 같은 과정으로 재발급 신청을 ...