[GH-ISSUE #4343] [Feature Request] Support UDP in socks5 proxy plugin #3428

Closed
opened 2026-05-05 14:12:32 -06:00 by gitea-mirror · 7 comments
Owner

Originally created by @Balder1840 on GitHub (Jul 16, 2024).
Original GitHub issue: https://github.com/fatedier/frp/issues/4343

Describe the feature request

I'm trying to use frp's socks5 proxy and tun2socks to proxy the internet access in my local network, i.e., computer A has internet but computer B do not, and only A can access B, B can't access A.
Everything looks fine except the DNS resolving. DNS resolving using UDP by default.
I finally got it work with nps, but which is not updated for long time.

I find currently the socks5 plugin is built on top of armon/go-socks5, but which is not support UDP ASSOCIATE command introduced in socks5.
Is there any plans to support UDP in frp, or do we have any workarounds?
Thanks.

Describe alternatives you've considered

No response

Affected area

  • Docs
  • Installation
  • Performance and Scalability
  • Security
  • User Experience
  • Test and Release
  • Developer Infrastructure
  • Client Plugin
  • Server Plugin
  • Extensions
  • Others
Originally created by @Balder1840 on GitHub (Jul 16, 2024). Original GitHub issue: https://github.com/fatedier/frp/issues/4343 ### Describe the feature request I'm trying to use frp's socks5 proxy and tun2socks to proxy the internet access in my local network, i.e., computer A has internet but computer B do not, and only A can access B, B can't access A. Everything looks fine except the DNS resolving. DNS resolving using UDP by default. I finally got it work with [`nps`](https://github.com/ehang-io/nps), but which is not updated for long time. I find currently the socks5 plugin is built on top of [`armon/go-socks5`](https://github.com/armon/go-socks5), but which is not support `UDP ASSOCIATE` command introduced in socks5. Is there any plans to support `UDP` in frp, or do we have any workarounds? Thanks. ### Describe alternatives you've considered _No response_ ### Affected area - [ ] Docs - [ ] Installation - [ ] Performance and Scalability - [ ] Security - [ ] User Experience - [ ] Test and Release - [ ] Developer Infrastructure - [X] Client Plugin - [X] Server Plugin - [ ] Extensions - [ ] Others
gitea-mirror 2026-05-05 14:12:32 -06:00
Author
Owner

@fatedier commented on GitHub (Jul 17, 2024):

We currently have no plans to improve the socks5 proxy, it is only provided as a plugin to offer some basic capabilities. It is recommended to use it in conjunction with professional tools unless the changes are very minor and do not have any side effects.

<!-- gh-comment-id:2232292941 --> @fatedier commented on GitHub (Jul 17, 2024): We currently have no plans to improve the socks5 proxy, it is only provided as a plugin to offer some basic capabilities. It is recommended to use it in conjunction with professional tools unless the changes are very minor and do not have any side effects.
Author
Owner

@github-actions[bot] commented on GitHub (Aug 8, 2024):

Issues go stale after 21d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.

<!-- gh-comment-id:2274623164 --> @github-actions[bot] commented on GitHub (Aug 8, 2024): Issues go stale after 21d of inactivity. Stale issues rot after an additional 7d of inactivity and eventually close.
Author
Owner

@Balder1840 commented on GitHub (Aug 13, 2024):

We currently have no plans to improve the socks5 proxy, it is only provided as a plugin to offer some basic capabilities. It is recommended to use it in conjunction with professional tools unless the changes are very minor and do not have any side effects.

Thanks for the clarification.
I'm try to develop a new proxy to handle it.
Do you accept it if I finish it and create a PR?

<!-- gh-comment-id:2286094007 --> @Balder1840 commented on GitHub (Aug 13, 2024): > We currently have no plans to improve the socks5 proxy, it is only provided as a plugin to offer some basic capabilities. It is recommended to use it in conjunction with professional tools unless the changes are very minor and do not have any side effects. Thanks for the clarification. I'm try to develop a new proxy to handle it. Do you accept it if I finish it and create a PR?
Author
Owner

@fatedier commented on GitHub (Aug 13, 2024):

I'm not sure what you mean by "new proxy"?

As mentioned in the comment above, for the plugin system, we don't aim to continuously iterate and meet all user needs, but rather to provide a basic version that covers most requirements.

However, if there is a widely used library and it doesn't add too much complexity, we may consider supporting some widely requested features.

<!-- gh-comment-id:2286118828 --> @fatedier commented on GitHub (Aug 13, 2024): I'm not sure what you mean by "new proxy"? As mentioned in the comment above, for the plugin system, we don't aim to continuously iterate and meet all user needs, but rather to provide a basic version that covers most requirements. However, if there is a widely used library and it doesn't add too much complexity, we may consider supporting some widely requested features.
Author
Owner

@Balder1840 commented on GitHub (Aug 13, 2024):

A new proxy maybe named socks5 like what we have now under \server\proxy\.
I don't want to introduce complexity to the existing tcp proxy.
I will be happy if you can accept it and if not, I will keep it for my own.
But anyway, I understand your concern.
Thank you very for building so great a tool!

<!-- gh-comment-id:2286170758 --> @Balder1840 commented on GitHub (Aug 13, 2024): A new proxy maybe named socks5 like what we have now under `\server\proxy\`. I don't want to introduce complexity to the existing `tcp` proxy. I will be happy if you can accept it and if not, I will keep it for my own. But anyway, I understand your concern. Thank you very for building so great a tool!
Author
Owner

@fatedier commented on GitHub (Aug 13, 2024):

That shouldn't be part of the project; our goal is not to include all the features in this project.

We are unlikely to have enough energy to maintain it continuously.

<!-- gh-comment-id:2286185870 --> @fatedier commented on GitHub (Aug 13, 2024): That shouldn't be part of the project; our goal is not to include all the features in this project. We are unlikely to have enough energy to maintain it continuously.
Author
Owner

@Balder1840 commented on GitHub (Aug 13, 2024):

Sure, thanks.
I will close it.

<!-- gh-comment-id:2286190705 --> @Balder1840 commented on GitHub (Aug 13, 2024): Sure, thanks. I will close it.
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#3428
No description provided.