CreatorEXM Posted November 24, 2024 Share Posted November 24, 2024 Hello. Network service providers in mainland China are comprehensively advancing the modification of users’ NAT types to NAT4. This means that P2P functionality is gradually becoming ineffective. However the traffic forwarding service provided by Klei performs very poorly in mainland China, with high latency, poor stability, and it is difficult to play games. To combat this situation, players typically rent VPS with independent IPv4 addresses or use FRP. VPS with independent IP addresses generally do not encounter problems. However, with FRP, since players cannot specify the IP address used by others joining the game from the ‘Browse Games’ list, other players have to use the ‘c_connect’ command to connect to the server via FRP. This situation creates significant confusion for players utilizing FRP. For game rooms aiming to draw in casual or occasional players, FRP is nearly impractical. This is because random players are unlikely to be aware of the FRP link address and would not know how to use the command “c_connect” to join the server. I wish to have the ability to customize the domain name or IP address that players use to access the server through the ‘Browse Game’ list. I believe this functionality is straightforward to implement. The player community has suggested some solutions, such as setting up a server that masquerades as lobby-v2.klei.com and altering the host file on players’ devices to redirect to this disguised server, thereby enabling the custom IP feature. Allowing custom IP/domain name permissions should not lead to any significant security issues; in the worst-case scenario, it would simply result in players being unable to access the server. Otherwise, I recall a discussion on the forum where someone brought up the topic of supporting IPv6 connections. The administrator’s response at that time was that the online platform used by DST (Don’t Starve Together) does not offer IPv6 connectivity, making it challenging to implement such features. It’s been a considerable amount of time since then. Has there been any update or progress regarding the support for IPv6? Thanks. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/ Share on other sites More sharing options...
Developer nome Posted November 24, 2024 Developer Share Posted November 24, 2024 I will respond with some questions on Monday when I'm back at work but first I just wanted to thank you for providing this summary of the problem and let you know I will be investigating. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1760369 Share on other sites More sharing options...
Developer nome Posted November 26, 2024 Developer Share Posted November 26, 2024 Sorry for the delay getting back to you! Busy times at Klei. When you say ISPs are moving players over to NAT4 do you mean symmetric/restricted-cone NAT? Does IPv6 work for P2P or is that non-functional as well? I know there's not currently IPv6 support in DST, I'm just gathering information so we can figure out what will work and what won't. With respect to your FRP problems and a possible workaround, did you try using the https_proxy environment variable? Using that and an HTTPS proxy would let you proxy your calls to the lobby server from the same machine as FRP and therefore presumably get the correct IP address. Thank you again for your detailed summary, it's very helpful to have information like this when deciding our development priorities. Any additional details you can provide would be most welcome! Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1762321 Share on other sites More sharing options...
CreatorEXM Posted November 27, 2024 Author Share Posted November 27, 2024 No worries, I understand you’re busy with version update tasks. 10 hours ago, nome said: Sorry for the delay getting back to you! Busy times at Klei. When you say ISPs are moving players over to NAT4 do you mean symmetric/restricted-cone NAT? Does IPv6 work for P2P or is that non-functional as well? I know there's not currently IPv6 support in DST, I'm just gathering information so we can figure out what will work and what won't. With respect to your FRP problems and a possible workaround, did you try using the https_proxy environment variable? Using that and an HTTPS proxy would let you proxy your calls to the lobby server from the same machine as FRP and therefore presumably get the correct IP address. Thank you again for your detailed summary, it's very helpful to have information like this when deciding our development priorities. Any additional details you can provide would be most welcome! Yes, by “nat4,” I mean symmetric/restricted-cone NAT. Regarding IPv6, it has achieved full penetration from the ISP’s perspective, but its user-end availability is questionable due to several reasons: 1. User-end entry devices may not support IPv6 or have poor IPv6 support, possibly requiring additional manual settings. 2. Almost all ISPs have firewalls enabled by default on network access devices, which blocks external inbound requests. Disabling the firewall requires submitting a request to the ISP. 3. Some regional operators have implemented measures making only IPv6 within their jurisdiction visible to each other, while connections outside the jurisdiction are not possible. I am unsure how this is achieved. In summary, IPv6 remains a backup solution and should not be the default first choice. The NAT4 conversion initiative led by Chinese ISPs aims to block P2P communication, primarily to prevent the use of PCDN (home CDN). This measure is intended to stop companies from reducing their network costs by utilizing inexpensive home broadband, as enterprise bandwidth prices in China are 40 to 50 times higher than home bandwidth.Currently, among China’s three major home user ISPs (China Telecom, China Mobile, China Unicom), China Mobile has fully implemented NAT4. The other two have only enabled NAT4 in some provinces, implementing a gentler measure of limiting upload speed for abnormal users in other provinces. It is unclear whether this method will be further intensified in the future. Regarding setting up HTTPS or SOCKS5 proxy for DST dedicated servers, I have not seen any related documentation or posts, nor have I heard of such features within the player community. Could you please provide the specific setup instructions for these functions? Thank you. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1762717 Share on other sites More sharing options...
Developer nome Posted November 27, 2024 Developer Share Posted November 27, 2024 3 hours ago, CreatorEXM said: In summary, IPv6 remains a backup solution and should not be the default first choice. This sounds like you're saying there is no viable option for restoring P2P functionality - a bit worrying. Are you aware of any alternatives? 3 hours ago, CreatorEXM said: Regarding setting up HTTPS or SOCKS5 proxy for DST dedicated servers, I have not seen any related documentation or posts, nor have I heard of such features within the player community. Could you please provide the specific setup instructions for these functions? Thank you. Hmm, I'm not sure what resources are available in China vs not but it's the standard use of that environment variable from libcurl. If you run an HTTP proxy and set the https_proxy environment variable before launching DST (doable through steam IIRC) it should proxy all your outgoing HTTPS requests through the stated proxy. This should cause the lobby to list the IP of your proxy instead of your home IP. If that proxy is running on the same machine as your FRP setup you should see the lobby list your FRP setup's IP instead of your own. DST has two main modes of communication: outbound HTTPS requests to Klei servers and direct UDP messaging. The https_proxy environment variable will cause proxying of all the former category of communications. Thanks again for your helpful insights. It can be really hard as a developer to know the network experiences of players in other countries. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1762838 Share on other sites More sharing options...
CreatorEXM Posted November 27, 2024 Author Share Posted November 27, 2024 3 hours ago, nome said: This sounds like you're saying there is no viable option for restoring P2P functionality - a bit worrying. Are you aware of any alternatives? Hmm, I'm not sure what resources are available in China vs not but it's the standard use of that environment variable from libcurl. If you run an HTTP proxy and set the https_proxy environment variable before launching DST (doable through steam IIRC) it should proxy all your outgoing HTTPS requests through the stated proxy. This should cause the lobby to list the IP of your proxy instead of your home IP. If that proxy is running on the same machine as your FRP setup you should see the lobby list your FRP setup's IP instead of your own. DST has two main modes of communication: outbound HTTPS requests to Klei servers and direct UDP messaging. The https_proxy environment variable will cause proxying of all the former category of communications. Thanks again for your helpful insights. It can be really hard as a developer to know the network experiences of players in other countries. I’m not very familiar with the solution, this approach seems to involve using frp as a global proxy for the entire host network, which I think might cause some issues during game updates. As for P2P, the outlook appears bleak. I believe that restrictions on P2P functionalities will only tighten in the future. With the declining use of BitTorrent for downloads, most users won’t even notice the inconvenience caused by the loss of P2P capabilities. This makes it unlikely that there will be a large-scale user protest to prevent ISPs from implementing NAT4. To clarify, the FRP I’m referring to is the network forwarding service based on the gofrp protocol(gofrp.org), which is used by almost all frp providers in China. Integrating gofrp into the dst server could be an effective solution. Many frp providers offer free channels with limited bandwidth, and if the settings are user-friendly enough for most players to resolve issues independently, the impact of ISP obstructions will be significantly reduced. It would also be beneficial if DST allowed for separate settings of HTTP/SOCKS5 proxies, similar to how Firefox supports proxy settings for the browser alone. Moreover, what challenges are there in implementing the feature to customize domain names/IP addresses? gofrp has the capability to forward external UDP connections to the local UDP port. This means that by adjusting the IP address of the room in the game lobby, the issue at hand can be resolved. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1762943 Share on other sites More sharing options...
QAQBytes Posted December 2, 2024 Share Posted December 2, 2024 Simply adopting IPv6 networks can address the pain points of China's internet environment. With IPv6, it becomes much easier to implement P2P. Currently, very few networks in China provide independent public IP allocation. Most setups involve a single public IPv4 address shared by hundreds of devices through port allocation—a technique known as NAT. This makes achieving P2P in IPv4 environments extremely difficult. I’ve considered creating an IPv6 mod, but the lack of support for IPv6 at the underlying level leaves me with no way to proceed. I have also tried integrating CDN with IPv6 (this would allow a pure IPv6 network host to support both IPv4 and IPv6). However, most Layer 4 forwarding solutions currently only support IPv4, and those that support IPv6 are prohibitively expensive. Currently, CDN protocols primarily support HTTP and HTTPS, with limited support for TCP. However, Don't Starve only works with UDP. Apart from using FRP or VPN, we don’t have any better options. I really hope IPv6 support can be implemented. I sincerely hope that IPv6 support can be considered and implemented in the near future, as it holds the potential to address many of the current network challenges. Your efforts in advancing network technology and improving user experiences are deeply appreciated. Best wishes for continued success and innovation. May your work lead to a more connected, efficient, and inclusive internet for everyone. Thank you for considering this suggestion, and I look forward to seeing the bright future of IPv6 integration! Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1767123 Share on other sites More sharing options...
beepbeepbot Posted December 2, 2024 Share Posted December 2, 2024 On 11/27/2024 at 3:09 AM, nome said: I know there's not currently IPv6 support in DST, I'm just gathering information so we can figure out what will work and what won't. Supporting ipv6 is good. I can use very cheap ipv6 servers (like €0.43/month) as a transit for DST server. And ipv6 only servers are also cheaper than ipv4 only servers with the same hardware resources. It will definitely save me a lot of costs. If there is any plan to roll out support for ipv6, I strongly support it. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1767146 Share on other sites More sharing options...
clearlove Posted December 3, 2024 Share Posted December 3, 2024 Hi, bro. I provided a solution in Tieba (This link is in Chinese). I set a proxy in the same server that runs FRP. I did not test using the http_proxy environment variable, I used the proxychains to proxy the whole StartDSTServers.bat, and it does work. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1767709 Share on other sites More sharing options...
just_LL Posted December 5, 2024 Share Posted December 5, 2024 Though i can't understand these technical parameters, I really support using a better connection method. This is surely good for the players. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1768687 Share on other sites More sharing options...
Limingzxc Posted December 16, 2024 Share Posted December 16, 2024 We need IPV6 !!! Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1777993 Share on other sites More sharing options...
Chengnan Posted January 31, 2025 Share Posted January 31, 2025 It's not easy to connect to Steam servers in China; images and web pages are difficult to load, and we have to use game accelerators to improve game latency. It's quite hard to use public IPv4 to connect in China, most of the regional carriers have withdrawn the applied IPv4. I only play DST with my friends, so I don't use a server; instead, I use IPv6 DDNS and IPv6-to-4 conversion, which is quite cumbersome and prone to errors. According to the requirements of China's Ministry of Industry and Information Technology, IPv6 is now enabled by default in modems and routers for new broadband users and in newly , which is undoubtedly great news for Chinese players. So please help us improve the online gaming experience for Chinese players! Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1791721 Share on other sites More sharing options...
Chengnan Posted February 10, 2025 Share Posted February 10, 2025 We need IPV6, please consider it. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1795641 Share on other sites More sharing options...
Developer nome Posted February 11, 2025 Developer Share Posted February 11, 2025 On 2/10/2025 at 4:26 AM, Chengnan said: We need IPV6, please consider it. It is under consideration. Link to comment https://forums.kleientertainment.com/forums/topic/161083-request-permission-to-customize-the-independent-server-ipdomain-in-browse-games/#findComment-1796455 Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.
Please be aware that the content of this thread may be outdated and no longer applicable.