打杂程序员之ftp换成外网ip咋就登陆不上?
主动模式ftp N连接到ftp的21端口。然后客户端开端口监听,并通过N+1端口发送命令给FTP服务器。服务器反过来连接用户本地端口。
被动模式解决从服务器到客户端数据端口的入口反向连接被防火墙过滤掉得问题。
如果外面一层路由DHCP,只映射了21端口,那么被动肯定不行啊!
pasv_min_port=64000
pasv_max_port=64321
上面是vsftpd.conf中被动模式服务器端口设置,所以路由器端口也要同样映射一下。
被动模式下需要映射出这些服务端口才行,但主动模式不知道为什么还不行;肯定也和nat下端口每影射出去有关系。不打个洞怎么能穿过nat呢?
客户端不映射出要被连接的端口,服务器怎么去连它?而在局域网就不存在这样的问题。