네트워킹 터널을 설명하는 데 "터널"이라는 비유가 사용되는 이유를 이해할 수 없습니다.
처음에는 전송된 데이터가 암호화되어 있어서 도청자가 데이터를 볼 수 없기 때문이라고 생각했습니다(그는 터널에 싸인 데이터를 봅니다!).
하지만 암호화를 사용하지 않는 터널링 프로토콜은 어떻습니까? 이 프로토콜을 "터널"이라고도 부르는 이유는 무엇입니까?
답변1
도로의 경우, 실제 터널은 속도를 늦추게 하는 더 길거나 더 많은 경로를 택하는 대신 A에서 B로 직접 지나갈 수 있도록 구성된 통로입니다. 예를 들어, 돌아야 할 산을 통과하는 터널, 걸어서 건너지 않고도 길 반대편으로 갈 수 있는 지하도, 도로와 건물과 충돌하지 않고 기차가 도시를 이동할 수 있게 해주는 지하철 터널 등이 있습니다.
이러한 각 경우에 터널은 처리해야 하는 일부 유형의 복잡성을 방지하는 직접 경로를 제공합니다. 네트워킹에서도 같은 방식으로 사용됩니다.
IPv6 터널을 통한 IPv4를 사용하면 IPv4가 IPv6 네트워크를 통해 다른 IPv4 네트워크로 전달할 수 있습니다. 이는 원래 컴퓨터가 IPv6 네트워크를 이해하지 않으면 불가능합니다.
VPN은 각 끝의 개인 주소와 공용 주소 간에 IP 주소를 변환하는 오버헤드 없이 두 개의 개인 네트워크를 연결하기 위해 특별히 고안된 터널입니다.
두 가지를 결합한 예로는 IPX와 같은 오래된 프로토콜을 사용하거나 로컬 검색에 의존하여 다른 플레이어를 찾는 인터넷 게임을 통해 플레이하는 데 사용할 수 있는 Hamachi와 같은 게임 VPN 소프트웨어가 있습니다.
답변2
터널을 "터널"이라고 부르는 이유는 무엇입니까?
이 문구는 (내가 아는 한) 다음에서 처음 사용되었습니다.RFC 1075 거리 벡터 멀티캐스트 라우팅 프로토콜, 여기서는 다음과 같이 정의됩니다.
또한 멀티캐스팅을 지원하지 않는 네트워크를 통과하는 실험을 허용하기 위해 "터널링"이라는 메커니즘이 개발되었습니다.
...
- 터널
터널은 멀티캐스팅 라우팅을 지원하지 않는 게이트웨이로 분리된 라우터 간에 데이터그램을 전송하는 방법입니다. 두 라우터 사이의 가상 네트워크 역할을 합니다. 예를 들어 Stanford에서 실행되는 라우터와 BBN에서 실행되는 라우터는 멀티캐스트 데이터그램이 인터넷을 통과할 수 있도록 터널로 연결될 수 있습니다. 우리는 터널을 과도기적 해킹으로 간주합니다.
터널링은 약하게 캡슐화된 일반 멀티캐스트 데이터그램을 사용하여 수행됩니다. 약한 캡슐화는 특별한 두 요소 IP 느슨한 소스 경로를 사용합니다[5]. (이러한 형태의 캡슐화는 터널 종단점이 서로의 최대 리어셈블리 버퍼 크기를 알 필요가 없기 때문에 전체 새 IP 헤더 앞에 추가하는 "강력한" 캡슐화보다 바람직합니다. 또한 다음과 같은 올바른 동작이라는 이점도 있습니다. 발신자의 TTL(Time-to-Live) 값 및 기타 IP 옵션이 존재합니다.)
터널에는 이와 관련된 로컬 끝점, 원격 끝점, 메트릭 및 임계값이 있습니다. 터널의 각 끝에 있는 라우터는 로컬 및 원격 끝점에만 동의하면 됩니다. 터널 구성 방법에 대한 자세한 내용은 섹션 8을 참조하세요. 터널 끝점 사이의 중간 게이트웨이 수를 알 수 없기 때문에 적절한 측정 기준과 임계값을 결정하려면 추가 연구가 필요합니다.
위의 내용에는 "우리는 터널을 과도기적 해킹으로 간주합니다."라고 명시되어 있습니다. 터널링은 오늘날에도 여전히 사용되며 본질적으로 동일한 의미로 사용됩니다. 터널을 통해 전송된 데이터는 캡슐화되어 전송을 지원하지 않는 프로토콜을 통해 전송될 수 있습니다.
터널은 일반적으로 지원하지 않는 네트워크를 통해 외부 프로토콜을 전달하는 데 사용되는 메커니즘입니다. 터널링 프로토콜을 사용하면 IP를 사용하여 IP 데이터그램의 "데이터" 부분에 다른 프로토콜을 보낼 수 있습니다. 대부분의 터널링 프로토콜은 레이어 4에서 작동합니다. 즉, TCP 또는 UDP와 같은 프로토콜을 대체하는 프로토콜로 구현됩니다.
답변3
터널의 한쪽 끝에 넣은 것은 무엇이든 다른 쪽 끝으로 나오기 때문입니다.