游客发表
我家那台老掉牙的器虚树莓派,一直当家庭服务器跑着几个小脚本。拟服内网有天在外面想连回去看个数据,实现发现死活连不上。穿透折腾半天,器虚最后在路由器设置页里翻到一个叫“虚拟服务器”的拟服内网选项,填了几个数字,实现居然就成了。穿透
所谓虚拟服务器,器虚说穿了就是拟服内网端口映射。你家路由器有个公网IP,实现但内网设备全是穿透私有IP,比如192.168.1.10。器虚外面来的拟服内网请求到了路由器,它不知道该往哪送。实现你手动指定一下:凡是访问我公网IP的8080端口,统统转给192.168.1.10的80端口。就这么简单粗暴。
具体操作也不复杂。先登录路由器管理界面,找到“虚拟服务器”或“端口映射”菜单。我用的华硕路由器,在“WAN”分类下面。填三项:服务端口(外部访问用的)、内网IP、内网端口。拿我的树莓派举例,我设的是外部端口8080,内网IP 192.168.1.10,内网端口80。保存重启,完事。
但这里有个坑,必须提醒你。你的运营商可能给你的是个大内网IP,不是真正的公网IP。怎么判断?看路由器WAN口IP是不是100.64.x.x到100.127.x.x段,或者干脆和你的局域网IP长得差不多。如果是,那恭喜你,端口映射直接失灵,因为外面根本找不到你家路由器。我有个朋友就栽在这上面,打电话问运营商要公网IP,对方还推三阻四,最后投诉才给换。
还有个动态DNS的问题。家用宽带的公网IP是动态的,今天和明天可能不一样。你总不能每次出门前先查一遍IP吧。我用的花生壳,免费版够用,把域名绑到路由器上,路由器会自动更新IP。这样我只要记住一个域名,比如"mypi.oicp.io",后面跟端口号就行。
安全性方面得唠叨两句。把端口暴露在公网上,等于给全世界开了扇门。我吃过亏,有次开了22端口没设密码保护,第三天就被人暴力破解了,日志里一堆SSH登录尝试。后来学聪明了,改成非标准端口,比如用2222代替22,再配上密钥登录,情况好很多。你如果只开个HTTP服务,建议加个简单的Token验证,别裸奔。
虚拟服务器这功能,其实很多路由器都自带,只是名字不一样。有的叫“端口转发”,有的叫“NAT映射”。本质都是那回事。如果你嫌路由器界面难用,也可以刷个OpenWrt之类的第三方固件,功能更细,但操作门槛高一点,不适合小白。
最后说个实际体验。自从配好这玩意儿,我在外面查资料方便多了。地铁上掏出手机连家里服务器,翻翻日志,改改配置,跟在家没区别。当然,速度取决于上传带宽,家用宽带一般就几十兆上行,传大文件会慢得让人抓狂。但临时应急,完全够用。你要是想跑个网站或者存电影,那还是老实买云服务器吧,别为难家里的老古董了。
友情链接