[PR #4110] [CLOSED] nathole: upnp support #4920

Closed
opened 2026-05-05 14:51:18 -06:00 by gitea-mirror · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/fatedier/frp/pull/4110
Author: @slayercat
Created: 3/28/2024
Status: Closed

Base: devHead: dev-nathole-upnp-helpers


📝 Commits (1)

📊 Changes

10 files changed (+244 additions, -3 deletions)

View changed files

📝 client/proxy/xtcp.go (+19 -1)
📝 client/visitor/xtcp.go (+19 -1)
📝 conf/frpc_full_example.toml (+5 -0)
📝 go.mod (+3 -0)
📝 go.sum (+6 -0)
📝 pkg/config/v1/common.go (+5 -0)
📝 pkg/config/v1/proxy.go (+2 -0)
📝 pkg/config/v1/visitor.go (+2 -0)
📝 pkg/nathole/nathole.go (+10 -1)
pkg/nathole/upnp/upnp.go (+173 -0)

📄 Description

WHY

When a router supports UPnP, frpc can be configured to utilize the UPnP protocol to assist with tunnel traversal.

This method can circumvent issues associated with the lack of support for STUN, enhancing the possibility of establishing direct connections.

It is important to note that UPnP operates as a plaintext protocol. Therefore, it should be disabled in scenarios where secure, concealed communication is required.

By default, this configuration is disabled, and it requires the specification of the program name to be exposed to UPnP devices.

see also:

https://github.com/fatedier/frp/issues/1823
https://github.com/fatedier/frp/issues/3703


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/fatedier/frp/pull/4110 **Author:** [@slayercat](https://github.com/slayercat) **Created:** 3/28/2024 **Status:** ❌ Closed **Base:** `dev` ← **Head:** `dev-nathole-upnp-helpers` --- ### 📝 Commits (1) - [`5d87105`](https://github.com/fatedier/frp/commit/5d8710561958ecbbbf4d0c07c1e34b40781d6976) nathole: upnp support ### 📊 Changes **10 files changed** (+244 additions, -3 deletions) <details> <summary>View changed files</summary> 📝 `client/proxy/xtcp.go` (+19 -1) 📝 `client/visitor/xtcp.go` (+19 -1) 📝 `conf/frpc_full_example.toml` (+5 -0) 📝 `go.mod` (+3 -0) 📝 `go.sum` (+6 -0) 📝 `pkg/config/v1/common.go` (+5 -0) 📝 `pkg/config/v1/proxy.go` (+2 -0) 📝 `pkg/config/v1/visitor.go` (+2 -0) 📝 `pkg/nathole/nathole.go` (+10 -1) ➕ `pkg/nathole/upnp/upnp.go` (+173 -0) </details> ### 📄 Description ### WHY When a router supports UPnP, `frpc` can be configured to utilize the UPnP protocol to assist with tunnel traversal. This method can circumvent issues associated with the lack of support for STUN, enhancing the possibility of establishing direct connections. It is important to note that UPnP operates as a plaintext protocol. Therefore, it should be disabled in scenarios where secure, concealed communication is required. By default, this configuration is disabled, and it requires the specification of the program name to be exposed to UPnP devices. see also: https://github.com/fatedier/frp/issues/1823 https://github.com/fatedier/frp/issues/3703 --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
gitea-mirror 2026-05-05 14:51:18 -06:00
Sign in to join this conversation.
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference: github-starred/frp#4920
No description provided.