FTP activex mode와 passive mode 비교

FTP는 방화벽과 상관관계가 깊다.
FTP를 연결할때 보통 Active mode와 passive mode를 설정하며 연결하게 된다.
그 이유는 뭘까?

FTP를 연결할때 PORT는 2개이상잡히게 된다.
PORT 1나는 세션연결용 이며 다른하나는 데이타 전송용 PORT를 사용하게 된다.

Active Mode

위의 그림을 참조하자..
1. FTP클라이언트는 SERVER에 21번 포트로 접근을 시도한다. 클라이언트가 사용할 데이타포트 정보를 서버에게 알려준다.
2. 서버는 ACK를 응답
3. 서버의 20번 데이타포트는 클라이언트가 알려준 PORT정보로 접속을 시도한다.
4. 클라이언트 ACK를 응답

위는 정상적인 상황을 설명한것이다.
문제는 서버->클라이언트로 접속시 클라이언트의 방화벽이나 공유기를 이용하여 외부에서 접속을 허용
하지 못하는경우 접속을 못하는경우가 발생하게 된다. 그럼 데이타전송관련 포트는 막히게 되는것이다.
그리하여 우회적으로 Passive mode를 디자인하게 됐다.


Passive Mode

1. 클라이언트는 서버에 21번 포트로 접속을 시도한다.
2. 서버에서는 데이타포트를 클라이언트에게 알려준다.
3. 클라이언트는 서버가 알려준 포트로 접속을 시도한다.
4. 서버는 ACK를 응답한다. Passive mode에서는 20번포트가 아닌 1024이회의 특정포트를 사용하게 된다.
이런 특정포트가 만약 막히게 된다면 이 또한 데이타 전송이 막힐 소지가 있다. 방화벽에서 해당포트를 열어야 한다.

댓글

댓글 쓰기

가장 많이 본 글