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

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

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

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

답변1

"들어오는 블록"은 들어오는 것을 의미합니다.새로운 연결차단되어 있지만확립된교통이 허용됩니다. 그래서 아웃바운드라면새로운 연결허용되면 해당 대화의 들어오는 절반은 괜찮습니다.

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

UDP도 유사하게 수행되지만 UDP에는 연결 또는 세션이 있는 것처럼 가장할 만큼 충분히 기억하는 방화벽이 포함됩니다(UDP에는 없음).

답변2

@gowenfawr는 높은 수준의 그림을 가지고 있습니다. 그러나 연결 추적을 위한 "일치"가 수행되는 방법에 대해 몇 가지 세부 정보를 추가해야겠다고 생각했습니다. 초보자에게는 마술처럼 들릴 수 있기 때문입니다.

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

답변3

방화벽은 승인되지 않은 수입 연결을 차단하기 위한 것일 뿐입니다. DNS에 요청을 보내면 DNS는 승인되지 않은 수신 연결이 아니라고 응답합니다.

답변4

저는 서버를 운영하지 않고 특정 서버에 액세스합니다. 연결이 더 안전해지기를 바랍니다. 내 생각은 항상 주어진 포트를 통해 서버를 호출하는 것입니다. 서버가 귀하에게 전화하는 것을 절대 허용하지 마십시오

관련 정보