dsh-ipv6-gate: Remote Access to DeepSeek Harness via Public IPv6 on Home Broadband

Preface

Want to continue adjusting DSH at home during the commute? The common approach is intranet penetration: either hand the traffic over to a third-party relay, or install a tunnel client on the router and desktop with scheduled tasks. dsh-ipv6-gate is a DSH plugin maintained by fzcohq, taking a different path: domestic home broadband generally already allocates public IPv6 addresses. The plugin directly exposes DSH via IPv6, completing the domain, certificate, DDNS, and authentication entirely within the plugin; data does not go through third-party relays. Below is an introduction to its capabilities, the installation and configuration process, and the applicable prerequisites.

What is this

One-sentence positioning: Exposes DeepSeek Harness remote access gateway directly to the public internet via home broadband IPv6, zero relay, zero cost, zero system configuration.

Item Value
Plugin Name fzcohq/dsh-ipv6-gate
Maintainer fzcohq
Category Networking Tools
License MIT
package.json Version 0.1.1
Node Requirement engines >=22.19.0
Directory Page https://www.skillhub.cn/plugins/fzcohq/dsh-ipv6-gate
Source Code https://github.com/fzcohq/dsh-ipv6-gate

The specific problem it solves is: mobile cellular networks have IPv6 natively, and home computers also have public IPv6 addresses; what is truly missing is the domain, certificate, and entry authentication. The plugin bundles these three things; installing one plugin and filling in one DuckDNS Token is sufficient. There is no need for external binaries like Caddy/cloudflared, nor system-level configurations like scheduled tasks or the registry.

Core Features

All features come from the README description.

Feature Description
HTTPS Remote Access Let’s Encrypt certificate automatic issuance/renewal (DNS-01 via DuckDNS)
DDNS Detect local IPv6 change → automatically update DNS AAAA record (hourly)
Settings Page UI “Mobile IPv6 Remote Access” tab appears in DSH settings
QR Code Scan Scan to direct, password embedded in URL, auto-authentication, no browser history
Dual Channel HTTPS (8787, encrypted) + HTTP (8788, plaintext, default off), independent password/switch
Security PIN authentication + Cookie + Lockout + IP rate limiting

The reverse proxy layer handles Host rewriting, PIN authentication, and WebSocket passthrough. The scan entry auto-authenticates via ?key=. HTTP/2 ALPN handles protocol splitting. The architecture does not depend on any external processes:

┌─────────────────────────────────────────────┐
│  DSH Settings Page "Mobile IPv6 Remote Access" │
│  ├─ IPv6 Address Detection (excluding Temporary addresses) │
│  ├─ HTTP Connection (port 8788, default off) │
│  ├─ DuckDNS Domain Management (subdomain + Token) │
│  └─ HTTPS Connection (port 8787, TLS cert auto-managed) │
├─────────────────────────────────────────────┤
│  gate-manager (Dual channel lifecycle + persistence) │
├─────────────────────────────────────────────┤
│  Reverse Proxy Layer: Host rewriting + PIN auth + WS passthrough │
│  + ?key= Scan auto-auth + HTTP/2 ALPN splitting │
├─────────────────────────────────────────────┤
│  ACME DNS-01 (DuckDNS API) + Cert renewal │
│  DDNS Timer (stable address → AAAA record, hourly) │
└─────────────────────────────────────────────┘

Installation and Enablement

Execute in the terminal; this is the official command provided in the README:

dsh plugin add github:fzcohq/dsh-ipv6-gate

If using the desktop version and the plugin does not appear on the settings page after installation, try the command with --profile desktop:

dsh plugin --profile desktop add github:fzcohq/dsh-ipv6-gate

Then restart the desktop. Restart DSH after installation, and the “Mobile IPv6 Remote Access” tab will appear in the settings. The dependency requirement is node >=22.19.0; you can verify with node -v first.

Configuration: Three Steps

First, register a DuckDNS domain (free). Open https://www.duckdns.org, log in with a GitHub account, enter a subdomain (e.g., myhome) and click Add Domain, then copy the Token (36-bit UUID) from the top right of the page.

Return to the DSH settings page to configure. The path is DSH -> Settings -> “Mobile IPv6 Remote Access”; first confirm that the IPv6 address detection shows green, then enter “Domain Zone” -> “Config”, fill in the subdomain and Token, save, and wait for “Configuring domain…” to complete. Automatic DDNS + certificate issuance takes about 30 seconds.

Finally, enable HTTPS. Open the “HTTPS Connection” switch, expand the panel, and scan the QR code with your phone to reach DSH directly. If you prefer manual input, the address looks like:

https://<subdomain>.duckdns.org:8787

Daily operations are all completed on the settings page:

Operation Method
Change Password Settings page → Expand HTTP/HTTPS → “Custom” password, takes effect immediately
Close Remote Access Close the corresponding switch on the settings page; the port stops listening and is unreachable externally
Temporary Test Enable HTTP connection, plaintext, only recommended for LAN debugging

Applicable Scenarios and Notes

Suitable for users who have public IPv6 on home broadband, have IPv6 on mobile cellular, and are willing to register a DuckDNS domain. The prerequisites are:

Condition Description
Computer has public IPv6 Domestic Telecom/Mobile/Unicom home broadband generally allocates this; check in the settings page
Mobile has IPv6 4G/5G cellular default supports this; WiFi requires router IPv6 to be enabled
Router Firewall Needs to allow inbound 8787/8788 ports (most home broadband allow high ports by default)

A few points to note. The plugin runs with the permissions of the current dsh process; it holds the DuckDNS Token, TLS private key, and listens on ports 8787/8788. Read the source code and MIT license before installing. HTTPS uses DNS-01 for certificate issuance, and the domain and Token are required inputs. The HTTP plaintext channel is default off, only temporarily opened for LAN debugging. IPv6 address changes are backed by an hourly DDNS timer, not real-time switching. Currently, GitHub shows 0 stars; it is a small project, so you can directly open an issue in the repository if you encounter problems.

Conclusion

The value of this plugin lies in: without introducing relays or installing external binaries, compressing DSH remote access to one plugin plus a free domain. Installation, configuration, and verification all go through the DSH settings page; turn off the switch after use and the port stops listening. The directory page and source code are respectively:

  • https://www.skillhub.cn/plugins/fzcohq/dsh-ipv6-gate
  • https://github.com/fzcohq/dsh-ipv6-gate
羽毛球分组比赛记分
小程序二维码

欢迎使用《羽毛球分组比赛记分》微信小程序

Xiaoye