近期家里换成了移动宽带,移动宽带便宜,但是有个致命问题,没有外网ip,这就导致外面几乎没办法访问家里的服务器。基于以前的了解,所以去了解下内网穿透。后来发现移动的IPV6是很容易开的,IPV6一旦用起来,就是外网。但是IPV4的公司没办法访问,只能解决手机移动网可以直接访问。所以综上所述,我研究这2大问题,主要还是解决没有外网ipv4的移动宽带,访问内网服务器的问题。如果是电信或者联通就不存在问题了。(失败,早知道但是就买联通了,便宜而且不用这么麻烦)
1:内网穿透(免费版)
现成有成熟产品,我找个三家,主要就是看其免费,但是带宽不大,稳定性也不高:
花生壳,(老毛子padavan,自带内网花生壳,直接绑定即可),蜻蜓映射,网云穿 。其中网云穿前期带宽还是蛮高的,但是后面都是1M带宽一个月1G流量。无法满足需求。所以只能继续研究。
2:内网穿透(自建版本)
以前也搭建过frp,蛮好用的,但是自建的有个问题,必须要P2P穿透,否则我买的服务器肯定要不是在海外,要不就是低带宽的机器。后来发现老毛子上面推荐 用nps。看里面也有p2p穿透,不用服务器的流量,后来测试是可以的。实际后面还要观察。这也就是我目前的主要解决办法。
服务端一键安装脚本:bash <(curl -L -s https://opt.cn2qq.com/opt-script/nps.sh)
官方文档:https://ehang-io.github.io/nps/#/?id=nps
P2P穿透参考文章:https://maizer.pw/index.php/archives/50/
3:IPV6
因为移动很好的支持IPV6,而且没做成私有的内网那种,所以直接配置路由就可以获取外网的IPV6,也能解决我的问题,但是后来发现公司这类的只有ipv4的网络无法访问,只能解决用移动网的手机可以访问。
参考视频:https://www.youtube.com/watch?v=Hm7kOsmbuyI&t=437s
PS:杭州的移动 443,80和8080端口都无法访问。也就是只能用到类似之前电信的外网映射情况。同时要注意防火墙的配置。IPV6没有内网的概念,所以每台机器都需要配置IPV6防火墙,如果要让外面访问,还需要路由配置ipv6的转发。ipv6的ddns 视频里面也有实现,我用的是docker版本(真的docker很好用,未来的趋势啊),命令:docker pull jeessy/ddns-go,另外还研究了ipv6的转发(socat),还研究了 ipv4怎么去连ipv6。参考:https://www.cnblogs.com/sunada2005/p/3146944.html。windows其实自带的Teredo比较好用,可以参考https://github.com/XX-net/XX-Net/wiki/IPv6-Win10 几行命令就能实现。但是实际测试下来卡的要死,也不稳定,看来ipv6的发展会很慢。因为ipv4尾大不掉。影响了ipv6的推广。
最终解决方案:
自建nps做p2p内网穿透+ipv6
p2p内网穿透,主要是给公司这样没有ipv6的办公网络使用。
ipv6,就是映射,使用方法跟以前的ipv4的电线外网使用一样,主要就是给有ipv6的网络使用,譬如手机网络。
至此就这样吧,后面实际使用下来看情况如何,但是移动没外网ip是真的坑啊。