IPv6 + DDNS + RDP 实现内网穿透

IPv6 + DDNS + RDP 实现内网穿透

当外出时,我需要用笔记本电脑或者手机通过远程桌面(微软的 RDP)连接到家里台式机。众所周知,RDP 需要一个 IP 地址才能连接。虽然我家的宽带没有 IPv4 公网地址,但是 IPv6 已开通,所以我可以通过 RDP 直连我家台式机的 IPv6 地址。然而,运营商分配给我家宽带的 IPv6 地址是动态的,所以还需要通过 DDNS (动态 DNS 解析)将这个动态 IPv6 地址解析到一个域名,在 RDP 中连接这个域名。以下是操作步骤。

一、准备工作

  1. 找电信运营商开通 IPv6。

  2. 在光猫中将连接方式改为桥接。

  3. 需要支持 IPv6 的路由器。我的路由器是小米 AX1800 路由器,打开了 SSH,并且用 iptables 命令控制 IPv6 防火墙。(该路由器无法用图形界面控制 IPv6 防火墙)。

  4. 购买域名,注册 Cloudflare 账号,并将域名添加到 Cloudflare。

  5. 在家里的台式机上启用远程桌面。

二、安装并配置 ddns-go

DDNS-GO 是动态 DNS 解析工具。下载DDNS-GO到本地并解压,使用管理员权限运行 Windows 终端,在 PowerShell 中执行以下命令安装并设置 DDNS-GO:

1
2
3
cd "c:\program files\ddns-go"
.\ddns-go.exe -s install
Set-Service -Name "ddns-go" -StartupType Automatic

在浏览器中打开 127.0.0.1:9876 ,配置 DDNS-GO。

  1. DNS 服务商设置为 Cloudflare。

  2. 在 Cloudflare 中创建一个 Token(令牌),模板为“编辑区域 DNS”,在“区域资源”中选择“所有区域”,然后点击“创建”。把创建的 Token 复制到 DDNS-GO 中,点击“保存”。

  3. 在 DDNS-GO 中,取消勾选“IPv4”,保持勾选“IPv6”,把“获取 IP 方式”设置为“通过网卡获取”,“Domains”输入域名,此处假设为 rdp.kukmoon.com

  4. DDNS-GO 会在 Cloudflare 中自动新建一条 DNS 解析记录,域名为 rdp.kukmoon.com,IP 地址为“通过网卡获取”的 IP 地址。

  5. 配置路由器防火墙,允许访问 3389 端口的流量通过。

三、为了安全,更改 RDP 端口

  1. 打开注册表,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp,导出 RDP-Tcp 为 reg 文件。

  2. 复制 reg 文件,然后编辑这个复制的reg文件。找到 [HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Terminal Server\WinStations\RDP-Tcp] 这行,把最后的RDP-Tcp改成RDP-Tcp-1。再把 PortNumber 这行的值改成 0000d431(对应十进制的 54321)。

  3. 将这个reg文件导入注册表,重启电脑,就可以通过 3389 和 54321 端口访问本机的远程桌面了。

  4. 配置本机防火墙和路由器防火墙,开启 54321 端口。

注意:路由器不开启 3389 端口,这样就不允许外网访问 3389 端口,3389 仅在我家内部的局域网中使用。

四、测试

手机(网络为中国电信 4G)开热点共享给笔记本电脑,在笔记本上新建远程连接,地址为“rdp.kukmoon.com:54321”,连接很顺利,操作比较流畅。

五、图片版权

题图:By Rawpixel from Negativespace.co

头图:Photo by urbex clan on StockSnap


求扫码打赏
“我这么可爱,请给我钱 o(*^ω^*)o”

IPv6 + DDNS + RDP 实现内网穿透
https://blog.kukmoon.com/45daf17f6cf7/
作者
Kukmoon谷月
发布于
2025年10月13日
许可协议