FTP Active mode, Passive mode 간단하게 이해하기
제 방식대로 이해하고 해설한거니 그려러니 하시길 바립니다 내용이 틀리거나 하지는 않을테니 참고해주시길... <Active mode> Client가 Server에게 D-port 21로 접속하며... [S-port는 랜덤. 위 그림에선 5150이네요] C : 야, 나 너한테 접속할건데 DATA port는 5151(TCP 1024이상의 숫자로 이것도 랜덤)이야 S : 응 알았다~ S : 야~ Data port open할테니깐 이리로 들어와 [서버가 Client가 알려준 5151을 D-port로 해서 Data 채널 연결을 시도합니다] C : 응. 알았다 지금 들어간다 [S-port 5151, D-port 20] <Passive mode> Client가 Server에게 D-port 21로 접속하며... [S-port는 랜덤. 위 그림에선 5150로 동일함] C : 야, 나 FTP할라고 하는데 이거 Passive mode다. 어여 도와줘 [Client기준으로 뭔가 소극적이죠. 그래서 passive라고 하나봅니다. 즉 클라이언트의 행동 기준으로 외우면 쉬움] S : 그래 알았다 이 passive한 자슥아. data port는 3267로 혀라. 내가 열어놓을께. [서버가 TCP 1024 이상의 랜덤한 포트를 열겠다고 클라이언트에게 알려줍니다] C : 알았다. 연결신청한다 받아라~ [S-port는 랜덤 (5151), D-port를 서버가 알려주느 3267로 해서 데이터채널 연결을 시도합니다] S : 그래 알았다. 이제 작업시작하자 이정도가 되겠네요. 두가지 모드에서의 차이점은 방화벽 이슈가 있습니다 방화벽이란 녀석은 IN -> OUT으로 나가는 패킷은 ALLOW, OUT -> IN 은 DENY로 설정되어 있는게 기본입니다 따라서 Client > Server로 들어오는 통신의 D-port에 대한 allow 정책이 필요합니다. 또, Active mode의 경우에는 서버