
누군가의 라우터로 패킷을 보내면 라우터 방화벽이나 라우터의 NAT(포트가 전달되지 않는 경우)에 의해 거부될 가능성이 높습니다. 그러나 짧은 시간 동안 라우터는 방금 패킷을 보낸 라우터의 주소에서 들어오는 모든 패킷을 수락합니다.
즉, 라우터가 NAT를 사용하는지 또는 모든 들어오는 연결을 차단하도록 방화벽을 설정했는지 여부에 관계없이 라우터의 방화벽은 "홀 펀치"입니다.
Windows 방화벽이 일부 프로그램에 대한 들어오는 연결을 허용하지 않을 수 있으므로 Windows 방화벽도 동일한 방법을 사용하여 홀 펀치할 수 있습니까?
배경 읽기
- P. Srisuresh, B. Ford 및 D. Kegel(2008년 3월)."P2P 애플리케이션이 NAT를 통과하기 위해 사용하는 기술".NAT(Network Address Translator)를 통한 P2P(Peer-to-Peer) 통신 상태. RFC 5128. IETF.
- 구멍 뚫기. 위키피디아.
답변1
그럴 수 있을 것 같습니다. 제가 작성 중인 애플리케이션에서 들어오는 UDP가 명시적으로 차단되어 있는 경우 이러한 현상이 발생하는 것을 확인했습니다.
타사 방화벽이 다른 기능을 수행할 수도 있습니다.
홀펀칭 Windows 방화벽을 언급하는 이 stackoverflow 게시물도 참조하세요.
https://stackoverflow.com/questions/14856639/udp-hole-punching-timeout