방화벽이 들어오는 연결을 허용하지 않을 때 p2p 소프트웨어(스카이프, 토렌트 ..)는 어떻게 작동합니까?

방화벽이 들어오는 연결을 허용하지 않을 때 p2p 소프트웨어(스카이프, 토렌트 ..)는 어떻게 작동합니까?

주니퍼 방화벽에는 인터넷에서 로컬 네트워크까지의 정책이 없지만 스카이프나 토렌트 같은 소프트웨어는 문제 없이 작동합니다. 들어오는 정책이 없으면 이러한 프로그램은 어떻게 작동합니까?

답변1

일반적으로 방화벽의 상태 저장을 (ab) 사용합니다.

전부는 아니더라도 요즘 대부분의 방화벽은 상태 저장 방식입니다. 그들은 들어오고 나가는 트래픽을 추적하여 패킷 간의 '관계'를 알 수 있습니다. 예를 들어, 네트워크 내부의 호스트가 외부 어딘가로 SYN 패킷을 보내는 경우 방화벽은 이를 알고 원래 SYN이 전송된 주소에서 해당 SYN ACK 패킷을 기대한다는 것을 알고 있습니다.

따라서 내부의 호스트가 외부 연결을 설정하는 한 반환 트래픽에 대한 "수문은 열려 있습니다".

다른 더 복잡한 방법도 사용할 수 있습니다. 간단한 예시 목록에는 다음이 포함됩니다.

  • 터널링(예: 내부HTTPS또는ICMP)
  • UPnP(Juniper와 같은 기업 방화벽에는 실제로 적용되지 않음)
  • 충격

답변2

P2P 애플리케이션은 기술을 사용하여NAT대부분의 사람들이 주거용 게이트웨이에 가지고 있는 것입니다. 사용되는 트릭은 나가는 연결이 허용된다는 사실을 기반으로 하며, 이것이 동일한 정책을 가진 방화벽에서 작동하는 이유입니다.

가장 간단하고 성공적인 방법은UDP 홀 펀칭.

그것은TCP 변형조금 더 복잡하지만 실패하면 소프트웨어는 UDP를 통한 TCP 터널링으로 대체를 시도할 수 있습니다.

또한 있습니다ICMP 홀 펀칭이는 제3자를 통하지 않고 초기 접촉을 허용하는 또 다른 접근 방식을 사용합니다.

관련 정보