Loading the catalog…
Loading the catalog…
📘 혼자 공부하는 네트워크 — 복습 DAY 4 학습 범위: 네트워크 DAY 1 ~ DAY 11 복습 방식: 20문제 풀이 및 해설 학습 내용: Proxy, TCP 제어, DNS, IPv4 단편화, Wireshark, HTTP 상태 코드, Load Balancing, TLS, DHCP, CIDR, HTTP Cache, TCP/UDP, CA, SPoF, BGP 기존에 공부했던 네트워크 내용을 다시 복습해보자. 이번 복습도 하루에 20문제씩 풀면서 기억이 나지 않거나 헷갈리는 부분을 다시 정리하는 방식으로 진행한다. Q1. Forward Proxy 회사 내부 직원들의 인터넷 요청을 대신 외부 서버로 전달하고 접속 기록이나 접근 정책을 관리하려고 한다. 어떤 프록시를 사용해야 할까? 1 Forward Proxy 2 Reverse Proxy 3 Load Balancer 4 Default Gateway 풀이 정답은 1 Forward Proxy Forward Proxy는 클라이언트 측에서 클라이언트를 대신하여 외부 서버에 요청을 전달 한다. 내부 사용자 | v Forward Proxy | v 외부 인터넷 반대로 Reverse Proxy는 외부 요청을 받아 내부 서버에 전달한다. 외부 사용자 | v Reverse Proxy | v 내부 Server 로드 밸런서는 특정 위치에 고정되는 개념이라기보다 여러 서버로 요청을 분산하는 역할이 핵심이다. Forward Proxy → Client를 대신 Reverse Proxy → Server를 대신 Load Balancer → 여러 Server로 요청 분산 Q2. 흐름 제어와 혼잡 제어 다음 두 상황은 각각 어떤 제어가 필요할까? 상황 A 송신자가 너무 빠르게 데이터를 전송하여 수신자의 버퍼가 거의 가득 찼다. 상황 B 송신자와 수신자는 데이터를 충분히 처리할 수 있지만 중간 네트워크에 패킷이 너무 많이 몰려 지연과 손실이 발생한다. 풀이 상황 A → Flow Control 상황 B → Congestion Control Flow Control(흐름 제어) 은 수신자가 처리할 수 있는 양보다 송신자가 너무 많은 데이터를 보내는 것을 방지한다. Flow Control → 수신자가 감당할 수 있는가? Congestion Control(혼잡 제어) 은 네트워크 자체에 패킷이 지나치게 많이 몰리는 것을 방지한다. Congestion Control → 네트워크가 감당할 수 있는가? 관련 윈도우는 다음과 같이 구분할 수 있다. 수신 윈도우 rwnd → Flow Control 혼잡 윈도우 cwnd → Congestion Control Q3. DNS 조회 순서 DNS 재귀 리졸버가 도메인의 IP 주소를 찾을 때 일반적인 조회 순서는? 1 TLD → Root → Authoritative 2 Root → Authoritative → TLD 3 Root → TLD → Authoritative 4 Authoritative → Root → TLD 풀이 처음에는 2번 이라고 생각했다. 정답은 3 Root → TLD → Authoritative DNS Resolver | v Root Name Server | v TLD Name Server | v Authoritative Name Server | v DNS Record Root Name Server 해당 최상위 도메인(TLD)을 담당하는 서버를 알려준다. "example.com?" → .com 담당 서버는 저쪽이야. TLD Name Server 해당 도메인을 담당하는 권한 있는 네임 서버를 알려준다. "example.com?" → example.com 담당 서버는 저쪽이야. Authoritative Name Server 실제 도메인의 DNS 레코드를 제공한다. example.com → IP Address 따라서 Root → TLD → Authoritative 순서로 기억한다. 단, DNS Cache가 있다면 일부 조회 과정은 생략될 수 있다. Q4. IPv4 단편화 필드 다음 중 역할이 잘못 연결된 것은? 1 Identification → 같은 원본 패킷의 조각인지 구분 2 Fragment Offset → 원본 데이터에서 해당 조각의 위치 확인 3 MF → 뒤에 단편이 더 있는지 확인 4 Sequence Number → 같은 원본 IP 패킷의 단편인지 구분 풀이 정답은 4번 Sequence Number는 IPv4 단편화가 아니라 TCP 데이터 순서 관리 와 관련되어 있다. IPv4 단편화에서는 다음 세 가지를 함께 기억한다. Identification → 같은 원본 Packet인가? Fragment Offset → 원본에서 어느 위치인가? MF → 뒤에 Fragment가 더 있는가? 반면 TCP Sequence Number → TCP 데이터 순서 관리 에 사용된다. Q5. Wireshark Display Filter 다음 조건의 패킷만 표시하고 싶다. 출발지 IP 192.168.10.50 TCP 목적지 Port 443 풀이 처음에는 다음과 같이 작성했다. sip:192.168.10.50 & TCP.443 하지만 Wireshark Display Filter 문법으로는 올바르지 않다. 정확한 필터는 다음과 같다. ip.src == 192.168.10.50 && tcp.dstport == 443 각 항목의 의미는 다음과 같다. ip.src → Source IP ip.dst → Destination IP tcp.srcport → TCP Source Port tcp.dstport → TCP Destination Port && → AND || → OR 따라서 Wireshark에서는 단순히 sip 와 같은 형태가 아니라 정해진 Display Filter 문법을 사용해야 한다. Q6. HTTP 502 Bad Gateway Reverse Proxy가 뒤쪽 WAS 서버에 요청을 전달했는데 유효하지 않은 응답 을 받았다. 어떤 HTTP 상태 코드가 적절할까? 1 404 2 500 3 502 4 504 풀이 정답은 3 502 Bad Gateway Client | v Reverse Proxy | v WAS Reverse Proxy 또는 Gateway가 상위 서버로부터 정상적이지 않은 응답을 받으면 502 Bad Gateway 가 발생할 수 있다. 502와 504 502 Bad Gateway → 상위 Server에서 유효하지 않은 응답 504 Gateway Timeout → 상위 Server가 제한 시간 내 응답하지 않음 Q7. L4와 L7 Load Balancer 다음과 같이 요청 경로에 따라 서로 다른 서버로 보내고 싶다. /images → Image Server /api → API Server 어떤 로드 밸런서를 사용해야 할까? 1 L2 2 L4 3 L7 4 DNS Round Robin 풀이 정답은 3 L7 Load Balancer URL 경로는 HTTP 애플리케이션 계층의 정보이다. 따라서 HTTP 요청 내용을 보고 서버를 선택하려면 L7이 필요하다. L4 → IP → TCP/UDP Port L7 → URL → HTTP Header → Cookie 구조를 보면 다음과 같다. Client | v L7 Load Balancer | +---- /images → Image Server | +---- /api → API Server Q8. TCP Fast Retransmit TCP 송신자가 같은 ACK 번호를 반복해서 받았다. 재전송 타이머가 만료되기 전에 손실된 것으로 판단되는 세그먼트를 다시 전송하는 기능은? 1 Slow Start 2 Fast Retransmit 3 Flow Control 4 Selective Repeat 풀이 처음에는 4 Selective Repeat 라고 생각했다. 정답은 2 Fast Retransmit Fast Retransmit은 동일한 ACK가 반복될 때 패킷 손실을 추정하여 재전송 타이머가 끝나기 전에 빠르게 재전송 하는 방식이다. 일반적으로 TCP에서는 동일한 ACK를 3번 중복해서 받는 경우 손실 가능성을 판단한다. Data 1 → 정상 Data 2 → 정상 Data 3 → 손실 Data 4 → 도착 Data 5 → 도착 Duplicate ACK Duplicate ACK Duplicate ACK ↓ Data 3 빠른 재전송 비슷한 용어들을 구분해야 한다. Fast Retransmit → Duplicate ACK 기반 빠른 재전송 Go-Back-N → 손실 지점부터 이후 데이터 재전송 Selective Repeat → 손실된 데이터만 선택적으로 재전송 Slow Start → Congestion Control Q9. TLS와 대칭 키 암호화 TLS에서 실제 애플리케이션 데이터를 암호화할 때 대칭 키 암호화 방식을 사용하는 주된 이유는? 1 공개 키 방식보다 일반적으로 처리 속도가 빠르다. 2 대칭 키는 키가 필요 없다. 3 대칭 키가 Server 인증까지 자동 수행한다. 4 공개 키 방식은 인터넷에서 사용할 수 없다. 풀이 처음에는 4번 이라고 생각했다. 정답은 1번 대칭 키 방식은 공개 키 방식과 비교했을 때 일반적으로 연산 비용이 적고 빠르기 때문에 실제 데이터를 암호화하는 데 적합하다. TLS에서는 각각의 기술을 대략 다음과 같이 나눠서 이해할 수 있다. 공개 키 기술 → 인증 → 안전한 Key Exchange 지원 대칭 키 → 실제 Application Data 암호화 즉, TLS Handshake → Server 인증 → 공유할 Session Key 마련 이후 실제 통신 → Session Key를 이용한 대칭 키 암호화 방식으로 이해할 수 있다. Q10. DHCP DORA DHCP로 IP 주소를 할당받는 올바른 순서는? 1 Discover → Offer → Request → ACK 2 Discover → Request → Offer → ACK 3 Offer → Discover → ACK → Request 4 Request → Offer → Discover → ACK 풀이 정답은 1번 순서는 앞글자를 이용하여 DORA 라고 기억할 수 있다. D Discover O Offer R Request A ACK Discover 처음에는 사용하지 않는 IP 주소를 찾는 과정이라고 생각했다. 정확히는 클라이언트가 DHCP 서버를 찾는 과정 이다. Client "DHCP Server 있나요? IP 주소가 필요합니다." Offer DHCP 서버가 사용할 수 있는 IP 주소를 제안한다. Server "이 IP를 사용하는 것은 어때?" Request 클라이언트가 제안받은 주소를 사용하겠다고 요청한다. Client "그 주소를 사용하겠습니다." ACK DHCP 서버가 최종적으로 승인한다. Server "확인. 그 IP를 사용해." Q11. CIDR 계산 다음 IP 주소의 Network Address Broadcast Address 사용 가능한 Host 범위 를 구해보자. 172.16.10.70/27 풀이 /27 이므로 Host Bit는 32 - 27 = 5bit 이다. 전체 주소 수는 2^5 = 32개 따라서 32개 단위로 Subnet이 나뉜다. 0 ~ 31 32 ~ 63 64 ~ 95 96 ~ 127 ... 70 은 64 ~ 95 구간에 포함된다. 따라서 Network Address 172.16.10.64 Broadcast Address 172.16.10.95 Host Range 172.16.10.65 ~ 172.16.10.94 사용 가능한 Host 수는 2^5 - 2 = 30개 이다. Q12. DNS A Record 도메인 이름을 IPv4 주소와 연결하는 DNS Record 는? 1 AAAA 2 A 3 MX 4 CNAME 풀이 처음에는 4 CNAME 이라고 생각했다. 정답은 2 A Record DNS Record는 다음과 같이 구분한다. A → IPv4 Address AAAA → IPv6 Address MX → Mail Server CNAME → 다른 Domain Name의 Alias 예를 들어 example.com → A → 192.0.2.10 처럼 A 레코드가 IPv4 주소를 가리킬 수 있다. CNAME은 IP 주소를 직접 나타내는 것이 아니라 다른 도메인 이름을 가리킨다. www.example.com | v CNAME | v example.com Q13. HTTP Cache와 304 Browser가 Server에 리소스 변경 여부를 확인했는데 다음 응답을 받았다. 304 Not Modified Browser는 어떻게 할까? 1 기존 Cache 삭제 후 다시 다운로드 2 기존 Cache 사용 3 404 오류 표시 4 TCP 연결 종료 풀이 정답은 2 기존 Cache 사용 Not Modified 라는 이름 그대로 서버의 리소스가 기존과 비교하여 변경되지 않았다는 의미이다. Browser "이 파일 변경됐어?" Server "변경 안 됐어. 304 Not Modified" Browser "그러면 기존 Cache 사용할게." 캐시를 사용하면 Network Traffic 감소 Response 속도 향상 Server 전송 부담 감소 와 같은 장점이 있다. Q14. Reverse Proxy 외부 사용자가 웹사이트에 접속한다. 요청은 먼저 Proxy Server가 받고 내부 WEB Server로 전달한다. 사용자는 내부 WEB Server의 실제 주소를 알 필요가 없다. 어떤 Proxy일까? 1 Forward Proxy 2 Reverse Proxy 3 NAT 4 DHCP 풀이 처음에는 1 Forward Proxy 라고 생각했다. 정답은 2 Reverse Proxy Reverse Proxy는 Server 측을 대신하여 외부 요청을 받는다. 외부 Client | v Reverse Proxy | v 내부 WEB Server 외부 사용자는 Reverse Proxy와 통신하고 실제 내부 서버의 구조나 주소를 직접 알 필요가 없다. Forward Proxy는 반대 방향이다. 내부 Client | v Forward Proxy | v 외부 Internet 따라서 다음처럼 기억한다. Forward Proxy → Client를 대신 Reverse Proxy → Server를 대신 Q15. TCP와 UDP 다음 중 UDP의 특징이 아닌 것은? 1 3-Way Handshake가 없다. 2 기본적으로 순서를 보장하지 않는다. 3 기본적으로 재전송을 통해 신뢰성을 보장한다. 4 실시간 음성/영상에 활용될 수 있다. 풀이 정답은 3번 UDP는 TCP처럼 기본적으로 재전송을 통해 신뢰성을 보장하지 않는다. UDP의 주요 특징은 다음과 같다. 비연결형 3-Way Handshake 없음 순서 보장 없음 기본 재전송 없음 상대적으로 작은 Overhead 반면 TCP에서는 Connection 설정 재전송 순서 보장 Flow Control Congestion Control 등의 기능을 제공한다. Q16. MTU와 DF 크기가 2000 Byte 인 IPv4 패킷이 MTU = 1500 Byte 인 구간을 지나야 한다. 그런데 DF = 1 로 설정되어 있다. 어떻게 처리될까? 1 단편화하여 전송 2 패킷 폐기 후 일반적으로 ICMP 메시지 전달 3 MTU를 2000으로 변경 4 TCP로 변환 풀이 처음에는 DF가 단편화 가능한 횟수 와 관련된 값인지 생각했다. 하지만 DF는 Don't Fragment 의 약자이다. DF = 0 → Fragmentation 허용 DF = 1 → Fragmentation 금지 현재 패킷은 2000 Byte이고 구간의 MTU는 1500 Byte이다. 따라서 단편화가 필요하지만 DF가 1이므로 라우터는 단편화할 수 없다. 결과적으로 패킷을 폐기하고 일반적으로 ICMP 관련 메시지를 전달한다. DF = Don't Fragment = 단편화하지 마 Q17. CA HTTPS에서 CA의 주요 역할은 무엇일까? 1 모든 HTTPS Data를 직접 암호화 2 인증서를 발급하고 서명하여 Server 신뢰성을 검증할 수 있게 함 3 TCP 연결을 대신 수행 4 DNS를 IP로 변환 풀이 정답은 2번 CA는 Certificate Authority 즉, 인증 기관이다. 주요 역할은 Digital Certificate 발급 Certificate 전자 서명 공개 키와 신원 정보 연결 신뢰 체계 제공 등이다. Client는 Server가 보낸 인증서를 확인하면서 인증서 유효기간 Domain 일치 여부 Certificate Chain CA 신뢰 여부 전자 서명 등을 확인할 수 있다. CA가 HTTPS 통신 데이터를 모두 직접 암호화하는 것은 아니다. Q18. SPoF 다음 구조에서 WEB Server는 두 대로 이중화되어 있지만 Load Balancer는 한 대이다. Client | v Load Balancer | +---- WEB A | +---- WEB B Load Balancer에 장애가 발생하면 어떻게 될까? 풀이 정답은 Load Balancer가 SPoF가 될 수 있고 서비스 접근이 중단될 수 있다. WEB A와 WEB B 자체는 정상이어도 Client 요청이 Load Balancer를 통과해야 한다면 Load Balancer 장애로 서비스에 접근하지 못할 수 있다. SPoF는 Single Point of Failure 의 약자이다. 처음에는 Simple Path Objective Failure? 와 비슷하게 기억하고 있었다. 정확한 의미는 하나의 구성 요소에 장애가 발생했을 때 전체 시스템이나 서비스에 큰 영향을 줄 수 있는 단일 장애 지점 이다. Client | v Load Balancer ← SPoF 가능 | +---+---+ | | v v WEB A WEB B 따라서 고가용성을 구성할 때는 서버뿐 아니라 중간 장비에도 SPoF가 남아 있는지 확인해야 한다. Q19. eBGP와 iBGP 서로 다른 AS 사이에서 BGP 정보를 교환할 때 사용하는 방식은? 1 iBGP 2 eBGP 3 OSPF 4 RIP 풀이 정답은 2 eBGP eBGP는 External BGP 로, 서로 다른 AS 사이에서 BGP 경로 정보를 교환한다. AS 100 | eBGP | AS 200 iBGP는 Internal BGP 로, 같은 AS 내부의 BGP Router 사이에서 BGP 정보를 교환한다. AS 100 Router A | iBGP | Router B 여기서 주의할 것은 iBGP ≠ IGP 라는 것이다. IGP는 RIP와 OSPF처럼 AS 내부 라우팅에 사용하는 라우팅 프로토콜 계열이다. IGP ├─ RIP └─ OSPF BGP ├─ iBGP └─ eBGP 또한 eBGP의 기준은 단순히 다른 Network 가 아니라 다른 AS 라는 점을 기억한다. Q20. 502와 504 다음과 같은 구조가 있다. 사용자 | v Reverse Proxy | v WEB Server 사용자가 웹사이트에 접속했는데 504 Gateway Timeout 응답을 받았다. 어떤 상황일까? 풀이 정답은 Reverse Proxy가 WEB Server로부터 제한 시간 안에 응답을 받지 못했을 가능성이 있다. 504 Gateway Timeout 은 Gateway나 Proxy가 뒤쪽 Server에 요청을 전달했지만 정해진 시간 내에 응답하지 않은 경우 발생할 수 있다. 반면 502 Bad Gateway 는 뒤쪽 Server에서 응답은 받았지만 유효하지 않은 응답인 경우와 관련된다. 502 Bad Gateway → 상위 Server의 응답에 문제 504 Gateway Timeout → 상위 Server의 응답 시간이 초과 쉽게 기억하면 502 → 응답이 이상함 504 → 응답을 기다리다가 시간 초과 📌 DAY 4 — 오답 및 헷갈렸던 개념 문제 개념 핵심 복습 Q3 DNS 조회 Root → TLD → Authoritative Q5 Wireshark ip.src == IP && tcp.dstport == Port Q8 TCP 재전송 Duplicate ACK → Fast Retransmit Q9 TLS 대칭 키는 실제 데이터 암호화에 효율적 Q12 DNS Record A = IPv4, AAAA = IPv6, CNAME = Alias Q14 Proxy Forward는 Client 측, Reverse는 Server 측 Q16 IPv4 단편화 DF = Don't Fragment Q18 SPoF Single Point of Failure 🔥 오늘 특히 기억해야 할 내용 Proxy Forward Proxy → Client를 대신 Reverse Proxy → Server를 대신 TCP 제어 Flow Control →
What RADAR observed and classified to build this opportunity. It is what the source published, not a verification that the offer is still active.
혼자공부하는 네트워크 복습 DAY4. 📘 혼자 공부하는 네트워크 — 복습 DAY 4 학습 범위: 네트워크 DAY 1 ~ DAY 11 복습 방식: 20문제 풀이 및 해설 학습 내용: Proxy, TCP 제어, DNS, IPv4 단편화, Wireshark, HTTP 상태 코드, Load Balancing, TLS, DHCP, CIDR, HTTP Cache, TCP/UDP, CA, SPoF, BGP 기존에 공부했던 네트워크 내용을 다시 복습해보자. 이번 복습도 하루에 20문제씩 풀면서 기억이 나지 않거나 헷갈리는 부분을 다시 정리하는 방식으로 진행한다. Q1. Forward Proxy 회사 내부 직원들의 인터넷 요청을 대신 외부 서버로 전달하고 접속 기록이나 접근 정책을 관리하려고 한다. 어떤 프록시를…
Open source