这个方法适用于没有公网ip或具有公网ip的服务器的情形
一、nat123的端口映射
nat123对Linux、Windows、Android都适用,在其官网上都有相应的教程:
Linux版教程: http://www.nat123.com/pages_8_206.jsp
Windows版教程:http://www.nat123.com/Pages_17_291.jsp
Android版教程:http://www.nat123.com/pages_17_613.jsp
nat123提供了比较丰富的端口映射功能,有http映射(80端口)、https映射(443端口)、非80端口、非网站(其他端口)、全端口映射、全映射等。提醒大家注意,除全端口映射外,其他服务是不需要在访问侧(外网)加装p2p访问者软件的,可以方便使用【全映射是全端口映射的面p2p访问者软件版本】。nat123有免费线路,也有收费服务,具体的收费情况大家自己再行了解。
我简单说一下全端口映射,以树莓派的vnc服务为例,首先你需要在nat123官网注册一个账号,然后树莓派上安装好nat123软件,并在本地APP上登录账号。nat123的端口映射管理功能在官网上【而不是在本地进行,或者说它只是没有告诉我们如何在本地进行管理】,所以你需要在nat123官网上添加端口映射时选择全端口映射(仅p2p),然后在安卓手机或Windows上安装p2p访问者(nat123官网下载),运行端口映射服务与vnc服务,对vnc来说,端口号=5900+桌面号,例如桌面号为1,那么端口号就是5901,打开p2p访问者,添加访问端口5901,注意p2p访问者要在后台运行,不要关掉,然后打开vncviewer,输入域名和端口号5901,即可访问树莓派了。
nat123配置较为简单,容易上手;有开放免费线路且使用体验较好;Linux/Windows/Android皆可使用,可能适合较多的人。
二、花生壳内网穿透
说到内网穿透,网上很多人都会提到花生壳的内网穿透。很多年前我使用花生壳的时候,这个服务确实还是可以的,免费,而且连接速度OK,现在用的人太多,速度自然降下来了,也开始提供付费服务了。大家浏览花生壳官网即可,我点到为止。
三、Holer
Holer是基于SSH的内网穿透服务。在Holer仓库的readme文档下有使用指南,没什么技术难度,我就简单说说:例如你想远程SSH登陆你的树莓派,将conf/holer.conf文件中原有的HolerAccessKey修改为针对SSH服务的HolerAccessKey,再启动Holer即可,服务端就配置完成了。Holer提供的SSH服务的映射端口是holer.org:65534,则在客户端的连接方式是:
sshpi@holer.org-p65534
可以看到,Holer的配置确实简单,但是其问题也十分明显,只有一个HolerAccessKey作为唯一标识,大家都是用这个Key,下一个人使用了,上一个人就被踢下来了,所以体验相当糟糕。想使用Holer的人就要注意了。