터널링은 한 네트워크에서 다른 네트워크로 패킷을 이동시키는 방법입니다. 터널링은 캡슐화를 통해 작동합니다. 패킷을 다른 패킷 안에 래핑하는 것입니다.
이 글을 읽은 후에 다음을 할 수 있습니다:
관련 콘텐츠
인터넷에서 가장 인기 있는 인사이트를 한 달에 한 번 정리하는 Cloudflare의 월간 요약본 theNET를 구독하세요!
글 링크 복사
물리적 세계에서 터널링은 일반적으로 가로지를 수 없는 지형이나 경계를 가로지르는 방법입니다.마찬가지로 네트워킹에서 터널은 해당 네트워크에서 지원하지 않는 프로토콜을 사용하여 네트워크를 통해 데이터를 전송하는 방법입니다.터널링은 패킷을 캡슐화하여 작동합니다. 패킷을 다른 패킷 내부에 래핑합니다.(패킷은 대상에서 더 큰 파일로 다시 조립할 수 있는 작은 데이터 조각입니다.)
터널링은 가상 사설망(VPN)에서 자주 사용됩니다.또한 네트워크 간에 효율적이고 안전한 연결을 설정하고, 지원되지 않는 네트워크 프로토콜을 사용할 수 있으며, 경우에 따라 사용자가 방화벽을 우회하도록 허용할 수 있습니다.
네트워크를 통해 이동하는 데이터는 패킷으로 나뉩니다. 일반적인 패킷은 패킷의 대상과 패킷이 사용하는 프로토콜을 나타내는 헤더와 패킷의 실제 내용인 페이로드의 두 부분으로 구성됩니다.
캡슐화된 패킷은 기본적으로 다른 패킷 내부의 패킷입니다. 캡슐화된 패킷에서, 첫 번째 패킷의 헤더 및 페이로드는 주변 패킷의 페이로드 섹션 내부로 들어갑니다. 원래 패킷 자체가 페이로드가 되는 것입니다.
모든 패킷은 네트워킹 프로토콜(표준화된 데이터 형식 지정 방법)을 사용하여 대상에 도달합니다. 그러나 모든 네트워크에서 모든 프로토콜을 지원하는 것은 아닙니다. 회사에서 사무실 A와 사무실 B를 연결하는 광역 네트워크(WAN)를 설정하려 한다고 가정해 보겠습니다. 회사에서는 최신 버전의 인터넷 프로토콜(IP)인 IPv6 프로토콜을 사용하지만, 사무실 A와 사무실 B 사이에는 IPv4만 지원하는 네트워크가 있습니다. IPv6 패킷을 IPv4 패킷 안에 캡슐화함으로써 회사는 사무실 간에 직접 데이터를 전송하면서 IPv6을 계속 사용할 수 있습니다.
캡슐화는 암호화된 네트워크 연결에도 유용합니다.암호화는 비밀 암호화 키를 사용해서만 변환을 해제할 수 있는 방식으로 데이터를 변환하는 프로세스입니다. 암호화를 실행 취소하는 프로세스를 암호 해독이라고 합니다.패킷이 헤더를 포함하여 완전히 암호화된 경우 네트워크 라우터는 키가 없고 헤더를 볼 수 없기 때문에 패킷을 대상으로 전달할 수 없습니다.암호화된 패킷을 암호화되지 않은 다른 패킷 안에 래핑하면 패킷을 평소처럼 네트워크를 통해 이동시킬 수 있습니다.
VPN은 공개적으로 공유된 네트워크를 통한 안전하고 암호화된 연결입니다. 터널링은 VPN 패킷이 의도한 대상(일반적으로 사설 네트워크)에 도달하는 프로세스입니다.
많은 VPN에서 IPsec 프로토콜 제품군을 사용합니다. IPsec은 네트워크 계층의 IP 위에서 직접 실행되는 프로토콜 그룹입니다. IPsec 터널의 네트워크 트래픽은 완전히 암호화되지만, 네트워크나 사용자 장치에 도달하면 해독됩니다. (IPsec에는 터널을 만들지 않는 "전송 모드"라는 모드도 있습니다.)
VPN에 일반적으로 사용되는 또 다른 프로토콜은 전송 계층 보안(TLS)입니다. 이 프로토콜은 모델이 해석되는 방식에 따라 OSI 모델의 계층 6 또는 계층 7에서 작동합니다. TLS는 SSL(보안 소켓 계층)이라고도 불리지만, SSL은 더 이상 사용되지 않는 이전 프로토콜을 지칭합니다.
일반적으로, 사용자가 장치를 VPN에 연결하면 모든 네트워크 트래픽이 VPN 터널을 통과합니다. 분할 터널링을 사용하면 일부 트래픽이 VPN 터널 외부로 이동할 수 있습니다. 본질적으로 분할 터널링을 사용하면 사용자 장치를 두 개의 네트워크(공용 네트워크와 사설 네트워크)에 동시에 연결할 수 있습니다.
일반 라우팅 캡슐화(GRE)는 여러 터널링 프로토콜 중 하나입니다. GRE는 한 라우팅 프로토콜을 사용하는 데이터 패킷을 다른 프로토콜의 패킷 내에 캡슐화합니다. GRE는 개별 네트워크 간의 연결을 단순화하기 위해 네트워크를 통해 직접 지점 간 연결을 설정하는 한 가지 방법입니다.
GRE는 각 패킷에 GRE 헤더와 IP 헤더라는 두 개의 헤더를 추가합니다. GRE 헤더는 캡슐화된 패킷에서 사용하는 프로토콜 유형을 나타냅니다. IP 헤더는 원래 패킷의 IP 헤더와 페이로드를 캡슐화합니다. GRE 터널의 양쪽 끝에 있는 라우터만 원래의 비 GRE IP 헤더를 참조합니다.
IP-in-IP는 다른 IP 패킷 내에 IP 패킷을 캡슐화하기 위한 터널링 프로토콜입니다. IP-in-IP는 패킷을 암호화하지 않으며 VPN에 사용되지 않습니다. IP-in-IP의 주요 용도는 일반적으로 사용할 수 없는 네트워크 경로를 설정하는 것입니다.
보안 셸(SSH) 프로토콜은 클라이언트와 서버 간에 암호화된 연결을 설정하며 보안 터널을 설정하는 데도 사용할 수 있습니다. SSH는 OSI 모델의 계층 7인 애플리케이션 계층에서 작동합니다. 반면 IPsec, IP-in-IP, GRE는 네트워크 계층에서 작동합니다.
GRE, IPsec, IP-in-IP, SSH 외에도 다른 터널링 프로토콜에는 다음이 포함됩니다.
Cloudflare Magic Transit은 온프레미스, 클라우드, 하이브리드 네트워크 인프라를 DDoS 공격 등의 위협으로부터 보호합니다.Magic Transit이 작동하려면 Cloudflare 네트워크가 고객의 내부 네트워크에 안전하게 연결되어 있어야 합니다.Cloudflare에서는 GRE 터널링을 사용하여 이러한 연결을 형성합니다.GRE 터널링을 사용할 경우 Magic Transit은 공용 인터넷을 통해 Cloudflare 고객의 네트워크에 안전하게 직접 연결될 수 있습니다.