From Project V to a parallel family of maintained cores
Project V established the basic structure of the V2Ray configuration model: inbounds receive local traffic, outbounds define forwarding targets, routing matches traffic between them, while dns and log provide name resolution and runtime records. The V2Fly community continues to maintain V2Ray Core and related specifications, while Xray developed an independent core along the same technical lineage. They share many configuration concepts, but fields, protocol extensions, and release schedules may differ.
Therefore, “the client supports a particular share link” and “the current core can fully process its parameters” are two different questions. A GUI client can parse subscriptions, generate configurations, and manage processes; the core performs the actual protocol handshake, routing, and forwarding. When server parameters change, check both the client’s parsing capabilities and the core’s supported range rather than only whether the server name appears in the interface.
Open-source licensing and public collaboration
v2rayN, v2rayNG, v2flyNG, and the related cores are maintained as open-source projects. Source code, configuration formats, and change histories are managed publicly, while maintainers and community contributors continue to discuss features, fix issues, and improve compatibility. Open source makes it easier for developers to understand how configurations are generated and for advanced users to trace behavior differences through logs and field definitions.
Different components may use different open-source licenses. A license governs how code can be copied, modified, and redistributed; it does not mean every client is maintained by the same team. When using documentation, identify the component precisely: v2rayN menu paths do not map directly to mobile clients, and Xray extension fields should not be assumed to work in every V2Fly configuration. Consulting the documentation for each component reduces conceptual mix-ups.
Update mechanisms and compatibility checks
Client updates commonly change the interface, subscription parsing, configuration generation, and core management; core updates focus more on protocol implementation, transport behavior, routing, and DNS. When something works before an update but fails afterward, first record whether the change affected the client, core, or subscription, then review the logs layer by layer. Replacing multiple components at once makes it difficult to identify the variable that caused the result.
For routine maintenance, use a consistent order: update the subscription and observe the node list, start a known-good configuration, and only then adjust the proxy mode and routing. For long-lived rules, document their purpose, match conditions, and outbound tags. Even when menu layouts change, these semantics let you restore the original behavior without relying on a particular button location.
Desktop choice
v2rayN
A GUI client for Windows, macOS, and Linux that centralizes subscription groups, server lists, the system proxy, routing rules, TUN, and core logs. It suits users who maintain multiple configurations and monitor runtime status on desktop.
Android
v2rayNG
A mobile client built primarily around the Xray core, supporting QR code, clipboard, and subscription-based configuration import. Common tasks center on configuration lists, active nodes, routing settings, and connection logs.
V2Fly core
v2flyNG
A mobile option built around the V2Fly core, with a clear separation between interface actions and the usual subscription workflow. It suits scenarios that require compatibility with the V2Fly core or comparison of behavior between the two core families.