IPv6实现内网穿透,极低成本保姆级教程

摘要

一直想实现内网穿透从而达到随时随地可以连接到自己电脑的目的。尝试过使用一些付费的现成方案,但是价格偏高,而流量少得可怜,只能开放几个固定端口。

实现内网穿透的最大难点就在于拥有一个公网IP,但是目前各家运营商IPv4的公网IP都很难申请到了(前几年打个电话还是有机会的),就想到不妨用IPv6将主机暴露在公网上。当然这么做有一定的风险,虽然IPv6地址不容易被扫描且会动态改变,但是当我们绑定域名之后也是存在一些安全问题。本文章只提供实现内网穿透的方案,并不对其造成的安全隐患进行处理。

另外,校园网等特殊网络的用户是否能开启IPv6并从外部访问请自行探索。因为即使关闭光猫、路由器、服务器的所有防火墙,外部流量的访问仍有可能被光猫拦截,因此我们需要将光猫设置为桥接模式,使用路由器进行PPPOE拨号上网,显然校园网用户是没有光猫的操作权限的(大佬另说)。

目前大部分地区的网络运营商都已经支持IPv6,但是关于路由器是否支持IPv6就要自己查询或者咨询客服了。路由器不支持IPv6的读者看到这里就可以退出了。

思路

  1. 将光猫改为桥接模式,并开启支持IPv6
  2. 将路由器设置为拨号上网模式,开启IPv6
  3. 开启电脑网卡IPv6服务,检查是否获取IPv6公网地址
  4. 使用cloudflare进行域名解析
  5. 使用ddns-go进行IP地址动态绑定到cloudflare

实践

一、 将光猫改为桥接模式

注意:以下操作会造成在暂时无法连接因特网!!!在操作前请确保你拥有宽带的账号密码
是宽带的账号密码!!!
是宽带的账号密码!!!
是宽带的账号密码!!!
不是路由器或者WIFI或者光猫的账号密码

进入光猫后台并登录,如果以下账号密码都无法登录,可以联系宽带师傅问一下。

1、电信超级密码 telecomadmin nE7jA%5m
2、移动超级密码 CMCCAdmin aDm8H%MdA
3、联通超级密码 CUAdmin CUAdmin
4、广电超级密码 admin aDm8H%MdA

对原来的连接进行修改,改为桥模式,并选择IP协议为IPv4/v6,端口绑定就选择光猫上连接到路由器的那个端口(如果是在原来的连接上进行修改的话一般不用动)。

对原来的连接进行修改,改为桥模式,并选择IP协议为IPv4/v6,端口绑定就选择光猫上连接到路由器的那个端口(如果是在原来的连接上进行修改的话一般不用动)。

接下来将光猫中的防火墙关闭

至此光猫上的操作全部结束,若操作成功,局域网内的所有设备已经无法上网了。


二、 设置路由器

登录路由器后台,路由器选择拨号上网模式

输入自己的宽带账号密码,应用后等待1分钟左右就可以重新连上因特网了。

接下来就只要打开路由器的IPv6支持就可以了,各个品牌路由器的后台差异较大,请读者自行查找

注意IPv6单线模式不要开启,将DS-lite修改为自动配置,如果没有这个选项请忽略。

保存生效后路由器上的操作就全部结束了。

三、 设置电脑网卡,开启IPv6

控制面板\网络和 Internet\网络连接中选择你连接网络的网卡,打开属性,确保Internet协议版本6是打勾的,然后确定即可。

接下来验证是否获得IPv6公网地址,访问:https://test-ipv6.com/index.html.zh_CN

检查这里的IPv6地址与ipconfig获取的临时IPv6地址是否一致,若一致则成功获得公网IPv6地址。

注意:临时IPv6地址才是真正的公网IP,我们后面要用的所有IP地址都是这个

四、 验证是否能通过IPv6地址访问

1. 检查本机能否通过IPv6地址访问

开启apache或者nginx,然后访问你的IPv6地址加上端口号,检查是否能访问到你的网站。
注意:尽管我们关闭了所有的防火墙,但是很大概率80端口会被ban掉,因此我们需要修改网站的端口号

这里我的网站使用8085端口号,成功登录

2. 检查手机流量能否通过IPv6地址访问

因为我们要测试是否能通过公网访问,因此我们要关闭WIFI连接,使用流量进行访问,若访问成功,则我们已经成功将我们的主机暴露在公网上。

剩下要解决的就是IPv6会动态变化,我们使用ddns解决这个问题。以下步骤需要一个域名,便宜的域名一年在7元左右,若没有通过固定域名访问的读者到此就可以结束阅读了。

五、 购买域名

这里不展开讲解,国内的域名购买较为繁琐,需要各种实名认证等步骤,我是在namesilo上购买的,一年花费7.2元。

六、 CloudFlare添加DNS解析

我们通过CloudFlare可以免费将域名解析到主机,当然namesilo也有自己默认的DNS解析服务器,但是我们后续要动态添加我们的IPv6地址,所以就选择了CloudFlare。

CloudFlare官网:hhttps://dash.cloudflare.com/

输入自己的域名并搜索,添加两条AAAA记录,名称分别为@www,内容填入IPv6临时地址
注意:代理状态选择仅DNS

添加记录后CloudFlare会给出两个DNS解析服务器,我们需要到我们购买域名的网站后台对我们的域名进行管理,将DNS服务器设置为这两个。

namesilo后台管理地址:https://www.namesilo.com/account_domains.php

从其他平台购买的读者请登录到各自的域名后台管理平台

将上面的两个DNS服务器将原来的DNS服务器进行覆盖即可

保存后一两分钟内我们就可以在CloudFlare看到域名已成功激活,至此域名绑定已经完成,下面我们要解决IPv6的动态改变问题。

七、 使用ddns-go管理CloudFlare记录

ddns-go项目地址:https://github.com/jeessy2/ddns-go

选择自己的平台进行下载,Windows用户下载解压后双击exe文件,按照提示操作即可

使用管理员权限安装服务,然后浏览器访问127.0.0.1:9876即可进行配置。

添加一个配置

Token是从CloudFlare获取的

使用模板:编辑区域 DNS。选择所有区域

创建后即可获得令牌。将其复制到ddns-go的配置选项中即可。

至此我们就可以通过域名访问主机了,且ddns-go会自动获取最新的IPv6地址添加到CloudFlare记录中。