들어오는 연결을 모두 차단하면 어떻게 인터넷을 계속 사용할 수 있습니까?


22

ISP 또는 방화벽이 들어오는 모든 연결을 차단하는 경우 웹 서버는 어떻게 데이터를 브라우저로 계속 보낼 수 있습니까? 요청을 전송 (발신)하고 서버가 데이터를 수신 (수신)합니다. 모든 수신을 차단하면 웹 서버가 어떻게 응답 할 수 있습니까?

UDP를 사용하는 비디오 스트리밍 및 멀티 플레이어 게임은 어떻습니까? UDP는 비 연결이므로 연결할 연결이 없습니다. 방화벽이나 ISP는 어떻게 처리합니까?


2
모든 수신 전화 차단 / 모든 수신 전화를 음성 메일로 전달 하시겠습니까? 당신이 누군가에게 전화하는 것을 막지 않습니다.
WernerCD 12

답변:


43

"들어오는 블록"은 들어오는 새 연결 은 차단되지만 설정된 트래픽은 허용됨을 의미합니다. 따라서 아웃 바운드 새 연결 이 허용되는 경우 해당 대화의 반이 괜찮습니다.

방화벽은 연결 상태를 추적하여이를 관리합니다 (이러한 방화벽을 "상태 저장 방화벽"이라고도 함). 나가는 TCP SYN을보고 허용합니다. 들어오는 SYN / ACK를보고 그것이 본 아웃 바운드 SYN과 일치하는지 확인할 수 있으며, 통과하는 등의 작업을 수행 할 수 있습니다. 3 방향 핸드 셰이크를 허용하는 경우 (예 : 방화벽 규칙에 따라 허용 된 경우) 해당 대화를 허용합니다. 그리고 대화의 끝 (FIN 또는 RST)이 보이면 허용 할 패킷 목록에서 해당 연결을 해제합니다.

UDP는 UDP와 연결 또는 세션 (UDP가없는)을 가장하는 방화벽을 기억하지만 UDP와 유사하게 수행됩니다.


1
UDP의 경우 실제 연결이 없기 때문에 방화벽은 일반적으로 발신 UDP 패킷의 대상 IP 및 포트를 추적하며 소스와 동일한 IP 및 포트를 가진 수신 패킷이있는 경우 응답으로 가정하여 응답합니다.
WhiteWinterWolf

17

@gowenfawr은 높은 수준의 그림을 가지고 있습니다. 그러나 연결 추적에 대한 "일치"가 수행되는 방법에 대한 세부 정보를 추가한다고 생각했습니다.

모든 TCP 연결에는 각 측면의 포트 번호가 있습니다. 대부분의 기술자들이 알고 있듯이 HTTP 서버는 포트 80에서 실행됩니다. 브라우저가 웹 서버에 연결되면 운영 체제에서 "로컬"포트 번호를 생성하도록 요청합니다.이 포트 번호는 다른 사람이 사용하지 않는 29672와 같은 임의의 숫자입니다. 해당 컴퓨터에서 TCP 연결 (및 모든 활성 TCP 연결에 대해 알고 있기 때문에 OS가이를 수행 할 수 있음) 그런 다음 초기 TCP 설정 패킷이 시스템의 IP (IP_YOURS) 및 포트 번호 29672에서 웹 서버의 IP (IP_WEBSERVER) 및 포트 번호 80으로 전송됩니다.이 시점에서 상태 저장 방화벽은 "aha, IP_WEBSERVER 포트의 향후 패킷 80 IP_YOURS로가는 포트 29672는 새 연결이 아니며 기존 연결에 대한 응답이므로 허용됩니다. " 상태 저장 방화벽은 테이블을 유지 관리합니다.


3
이것은 대부분 정확하지만, 포트 번호는 65535에서 정지합니다 (16 비트 부호없는 숫자 임). 타임 아웃 외에도 FIN 또는 RST 플래그가 설정된 패킷은 TCP를 알릴 수 있습니다. 연결이 닫힙니다.
reirab

@reirab 아, 그래, 포트 번호가 실패합니다. Wrt 닫기는 물론 TCP 플래그를 검사하는 것이 가능하지만 가능한 패킷 손실과 닫기 시퀀스의 재전송을 고려해야하는 것은 복잡하므로 대부분의 방화벽은 단순히 가장 최근에 사용되지 않은 테이블 항목을 그대로 유지하기보다는 용도를 변경한다고 가정합니다. 정확하게 추적하십시오.

@atsby 언제든지 게시물을 편집하고 포트 번호를 더 적합한 것으로 바꿀 수 있습니까?

이것들은 모두 훌륭한 정보입니다. 위의 주석에서 설명한 포트에 한 가지만 추가하고 싶었습니다. 그것들을 '일시적 포트'라고하며 범위는 각 OS에 특정한 커널에 의해 정의됩니다. Linux에서는 "cat / proc / sys / net / ipv4 / ip_local_port_range"를 통해이를 얻을 수 있습니다. 기본 범위는 "32768 ~ 61000"입니다.
Arul Selvan
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.