因为工作需要实现多个网络的文件管理,折腾了一下FTP内网穿透,本来前几年做过的一样的操作,但是这两天狂踩坑,找寻了半天都找不到解决方案,最后被人一语道破天机,记录一下防止未来还会出现这种情况。
首先,因为需要设置路由转发,所以你的网络拓扑图得是路由器拨号,然后在路由器设置转发才有效果,否则由电信猫拨号然后路由器获取动态IP的话就会出现问题。如果电信猫设置的是拨号,可以进192.168.1.1的后台,使用超级管理员账号登入后台。
账号telecomadmin
密码ne7ja%5m
(一般的账号密码都是这个,如果登不进去的话网上有教如何找到超级管理员账号密码的教程,这里就不细述。如果只能猫拨号的话需要在路由器内和猫内分别设置端口映射,做一个二次映射。)
以下我们默认为路由器拨号。
本机IP地址获取方式:
Win + R 输入CMD回车打开命令提示行,输入ipconfig回车。IPv4地址就是本机的地址。
IPv4 地址 . . . . . . . . . . . . : 192.168.166.249
子网掩码 . . . . . . . . . . . . : 255.255.255.0
默认网关. . . . . . . . . . . . . : 192.168.166.254
打开Serv-u后新建域,监听地址填本机的IP地址,端口一般设置默认,除非你的电脑有什么软件已经占用了此端口可以自己设置。
再自行新建一个用户即可。
新建好后打开花生壳,申请一个壳域名,然后分别开启两条内网映射。
FTP协议需要的原理上需要两条端口,其中21是命令端口,可以接收上传下载等命令,然后20是数据端口,用来在接收命令后传输数据,如果发现设置好后域活动或日志中,用户可以登录上,但是操作没有数据的情况下,一般就是数据端口没有设置好。
内网映射选择TCP协议。
第一条随机外网端口,然后内网地址设置成本机地址,内网端口设置成21。
第二条随机外网端口,然后内网地址设置成本机地址,内网端口设置成随机一个,保存后根据随机到的外网端口,将内网端口改成与外网端口一致。
设置好花生壳后,我们需要打开serv-u的全局——限制和设置——设置,往下翻,将pasv的端口前后都改成第二条获取到的外网端口,这样就开启了被动模式。
这时我们的花生壳和serv-u都设置完成了。
打开路由器管理页面,设置端口映射功能,各个路由器不同。
华硕路由器是外部网络——端口转发。
爱快路由器是网络设置——端口映射。
添加两条规则:
将第一条随机的外网端口映射到本地的21端口。
将第二条随机的外网端口映射到本地的相同端口。
保存。
现在就可以通过壳域名实现外网访问啦,其实设置还比较简单,我个人主要踩坑的地方还是猫拨号,路由器是动态IP模式,导致的只能登陆账户没法传输数据。
其实可以试一下wing ftpserver,相较于Serv-u更轻便便捷,设置大同小异。