안녕하세요 오랜만에 C로 코딩할 일이 생긴 개발자 입니다.
개발 중에 도저히 풀리지 않아 이렇게 질문 드립니다..고수님들 길을 열어 주세요..
현재 ftp client를 만들고 있습니다.
os는 리눅스 레드핫 이구요..서로 다른 네트웍에 있는 ftp server에 정상적으로 접속(control connection)이 됩니다.
ftp server가 passive mode로 설정되어 있어서 다음과 같은 순서로 명령을 보냅니다..
1. 연결 -> 확인 응답 수신
2. USER -> 응답 수신
3. PASS -> 응답 수신
4. TYPE I -> 응답수신
5. PASV -> 응답 수신 (ip1,ip2,ip3,ip4,port1,port2)
6. 5에서 수신 받은 ip1.ip2.ip3.ip4, port1*256+port2 로 ip와 port를 설정하여 새로운 소켓으로 data connection을 연결하려 할때 이부분에서 연결이 되지 않고 connection time out이 발생합니다.