摘要

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

实现内网穿透的最大难点就在于拥有一个公网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记录中。

IPv6实现内网穿透,极低成本保姆级教程的更多相关文章

  1. 一款带Web面板的轻量级、高性能内网穿透工具:nps使用教程

    说明:内网穿透工具之前已经介绍了不少了,比如Frp.lanproxy.Holer等,现在再介绍个带Web面板的穿透工具nps,之前叫easyProxy,只是改名了而已,该工具是一款使用go语言编写的轻 ...

  2. NAT、端口映射、内网穿透、公网IP都是啥

    原文地址:https://wuter.cn/1756.html/ 一.IPv4地址 IP协议是为计算机网络相互连接进行通信而设计的协议,它是能使连接到网上的所有计算机网络实现相互通信的一套规则. 这里 ...

  3. 测试龙芯 LoongArch .NET之 使用 FastTunnel 做内网穿透远程计算机

    龙芯3A5000 已经上市,与龙芯3A5000配套的三大编译器GCC.LLVM.GoLang和三大虚拟机Java.JavaScript..NET均已完成开发,从老伙计哪里搞来一台3A5000 机器,安 ...

  4. 四、frp内网穿透服务端frps.ini各配置参数详解

    [必须]标识头[common]是不可或缺的部分 [必须]服务器IPbind_addr = 0.0.0.00.0.0.0为服务器全局所有IP可用,假如你的服务器有多个IP则可以这样做,或者填写为指定其中 ...

  5. 【新晋开源项目】内网穿透神器[中微子代理] 加入 Dromara 开源社区

    1.关于作者 dromara开源组织成员,dromara/neutrino-proxy项目作者 名称:傲世孤尘.雨韵诗泽 名言: 扎根土壤,心向太阳.积蓄能量,绽放微光. 拘浊酒邀明月,借赤日暖苍穹. ...

  6. 端口转发、Http Tunnel、内网穿透

    原文链接:https://www.yuque.com/tec-nine/architecture/mgxc71 SSH 命令帮助 命令行选项有: -a 禁止转发认证代理的连接. -A 允许转发认证代理 ...

  7. 内网穿透神器(ngrok)服务端部署【分享一台自己的ngrok服务器】【多平台】

    Ngrok为何物 “ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道.ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放.”这是百度百科上给Ng ...

  8. SSH 端口转发+内网穿透

    用最直白的语言对本文所有内容进行定义: 端口转发(-L):用A机器(内网)登录B机器(公网), 在A机器打开端口,将收到的所有请求转发到B机器的某个端口 (在代理机上执行) 内网穿透(-R):用A机器 ...

  9. Ngrok 内网穿透利器

    Ngrok是什么 Ngrok 是一个反向代理,通过在公共的端点和本地运行的 Web 服务器之间建立一个安全的通道.Ngrok 可捕获和分析所有通道上的流量,便于后期分析和重放 为什么要使用Ngrok ...

  10. Ngrok 内网穿透神器(转载)

    mac上配置web服务: http://note.rpsh.net/posts/2013/11/27/osx-10-9-apache-server-php-mysql/ Ngrok 内网穿透神器 由于 ...

随机推荐

  1. 6.swagger完善:界面显示注释+多版本控制

    周末,写点简单的水一下. 新版本的vs创建项目的时候可以选择自带一个swagger.然而这只是基本的swagger功能. 几个接口无所谓啦,随着接口越来越多,就这么丢给你,一时间也会懵逼,所以这篇文章 ...

  2. MySQL innoDB 间隙锁产生的死锁问题

    背景 线上经常偶发死锁问题,当时处理一张表,也没有联表处理,但是有两个mq入口,并且消息体存在一样的情况,频率还不是很低,这么一个背景,我非常容易怀疑到,两个消息同时近到这一个事务里面导致的,但是是偶 ...

  3. 其它——CGI,FastCGI,WSGI,uWSGI,uwsgi一文搞懂

    文章目录 CGI, FastCGI, WSGI, uWSGI, uwsgi一文搞懂 一 CGI 二 FastCGI 三 WSGI 四 uWSGI 五 uwsgi CGI, FastCGI, WSGI, ...

  4. Redis系列之——Redis-Sentinel

    文章目录 一 主从复制高可用 二 架构说明 三 安装配置 四 客户端连接 一 主从复制高可用 #主从复制存在的问题: #1 主从复制,主节点发生故障,需要做故障转移,可以手动转移:让其中一个slave ...

  5. [AHOI2002] Kitty猫基因突变

    我们不妨将所有权值打到一棵树上,这很容易想到. 考虑暴力,如果我们选择了 \(w\) 个点,修改后我们会从叶子节点依次合并去计算贡献. 很显然我们可以动态规划维护. \(f[p][w][0/1/2]\ ...

  6. CF339D

    题目简化与分析: 题目翻译说的还是太复杂了,其实只是给你 $ n $ 个数,奇数位 \(\operatorname{or}\),偶数位 \(\operatorname{xor}\). 会修改某个元素 ...

  7. Pandas 读取Eexcel - 间隔N行,读取某列数据

    间隔N行,读取某列数据 import pandas as pd def read_vertical(sheet_name, col_idx, gap): """ 竖着读数 ...

  8. 使用visualvm远程监控JVM

    参考:http://blog.sina.com.cn/s/blog_4e90b3ba0100muco.html 1.首先要修改JDK中JMX服务的配置文件,以获得相应的权限: 在jdk-1.6.0_2 ...

  9. 基于C# Socket实现的简单的Redis客户端

    前言 Redis是一款强大的高性能键值存储数据库,也是目前NOSQL中最流行比较流行的一款数据库,它在广泛的应用场景中扮演着至关重要的角色,包括但不限于缓存.消息队列.会话存储等.在本文中,我们将介绍 ...

  10. 一、Linux发展史

    一.Linux发展史及红帽认证 红帽授权培训合作伙伴 木兰宽松许可证 1. Linux系统发展史 1. Unix发展历程 上世纪六十年代贝尔实验室(Bell).麻省理工学院(MIT)以及通用电气(GE ...